[FFmpeg-user] ? About ffmpeg's prores implemention

Edward Park kumowoon1025 at gmail.com
Sun Aug 30 18:12:38 EEST 2020


Hi,

> After more research, I’ve found that the two other encoders that I have which write Prores create files that Afterburner recognizes as Prores and plays them in real time.  Unfortunately ffmpeg’s Prores isn’t recognized as such by the Mac and I’ll have to switch to AME for this going forward.  Too bad because ffmpeg is so beautifully multithreaded and fast… I’ll miss it!

Well, Adobe pays Apple to use their ProRes codec in AME, so that should be a foolproof option.

Basically, authorized partners have access to a lot more comprehensive and definitive specifications and architectural directives from the original authors when they develop their codecs, and they go through the pass/fail tests that all but guarantees that their output works with any and all other official implementation. Th

On the other hand, and I might be wrong about this, but the ProRes implementation in FFmpeg was pretty much reverse engineered by a couple (extremely talented) people, and it was done a long time ago. As talented as the authors are, obviously it is impossible to replicate the codec perfectly without the "blueprints." Nevertheless, it worked fine (until now), and it is definitely maintained, but some significant updates were made by Apple that I don't think have been fully realized by the changes in FFmpeg, especially in the last few minor versions of motion.

Since you are on a Mac, implementing the ProRes encoder through videotoolbox would be your solution. I tried to tackle that a few weeks ago actually, but I think I may have been in way over my head, haha. Since it's a feature that would only benefit macos builds, priority might be low, I don't know how much you want ProRes+FFmpeg, but I'm thinking you could hire whoever does the heavy lifting in macos videotoolbox to implement the prores encoder as well.

> Unfortunately ffmpeg’s Prores isn’t recognized as such by the Mac and I’ll have to switch to AME for this going forward.  Too bad because ffmpeg is so beautifully multithreaded and fast… I’ll miss it!

I'm a bit confused this comment though... How beneficial additional threads are to performance is firstly dependent on the actual codec, FFmpeg, and AME more like orchestrates the multi-threading, and I can't see AME falling behind very much in this specific case... Do you mean ProRes rendering doesn't rev up the CPU usage over 300% or 600% if you use AME?? (Depending on source) Ultimately it's the same as all the other "Apple authorized" ProRes apps, videotoolbox.

Regards,
Ted Park



More information about the ffmpeg-user mailing list