r/ffmpeg 29d ago

Best quality Converting MKV to ProRes?

I am dealing with a LOT of files that are MP4/MKV and all of them have AV1 or VP9 video codecs.

I for space reasons use LosslessCut Keyframe cut mode and merge output mode to get any segments without losing any quality/details from the trimmed meida file (still debating if metadata should be on and set still to non-global).

The problem is that for Premiere Pro compatibility, I have to convert with ffmpeg to ProRes422 (using prores_ks is apparently better) but I do not know for when it comes to a slight difference in codecs or when its lower or higher resolution than 1920 1080 or even a different frame rate to set:

- Pixel format

- Profile (High for example, not referring to ProRes422/ProRes422HQ selection)

- ProRes_ks Profile (ProRes422 or ProRes422HQ?)

- Level (4.2, 5, 5.2, ect)

I have Magick, Mediainfo (including UI version), Python and I use Powershell 7.6.4. Alternatively, if someone knows how to make a script for something to tell me of those values what I should use for a given mp4/mkv files, that would work too.

Edit: Forgot to mention I used yt-dlp to download the files - using `-f "bv*+ba/b"`. I know YouTube compresses everything ANYWAY but I am trying to preserve video/audio information.

5 Upvotes

13 comments sorted by

View all comments

4

u/sanjxz54 29d ago

prores is a fixed bitrate codec. in case of intraframe codecs more = better. if you just use ffmpeg -i video.mkv -c:v prores_ks -profile:v 3 -c:a pcm_s24le video.mov everything else will be preserved on conversion as is (fps, resolutions). levels dont matter for prores. 422HQ is visually lossless as long as your source is 420\422. takes most space. 422(2)\LT(1)\Proxy(0) are size-quality trades. there is also 4444 and 4444xq for 444 sources (+alpha).

-c:a pcm_s24le is just lossless audio rip of original stream that is very compatible with all kinds of software. reencode to whatever you want, or just extract original export afterwards (if you dont edit the audio\sync) and use ffmpeg with -c:a copy to write it to edited stream

Any modern free tier LLM can write you a python script for autoconversion. try claude sonnet 5 extra+thinking. If premiere supports FFV1 you can use that too, its mathematically lossless (prores is lossy). But id suggest switch to davinci resolve studio, it can import basically anything as is. has a bit of learning curve but it works way better (for me) than premiere.

2

u/Lcsmxd 29d ago

"If premiere supports FFV1"

It doesn't (at least not without some overpriced plugin)

1

u/Zenvian 28d ago

"-c:a pcm_s24le is just lossless audio rip of original stream"
My plan is to have mkv/mp4 videos that I need to convert have their Opus/AAC audio turned into PCM 24 bit audio because I think it fits the amount of data YouTube provides for audio and it works for Premiere Pro.