FFmpeg and a Thousand Fixes (2014)
security.googleblog.com
security.googleblog.com
ffmpeg is still the king of multimedia although several people are starting to write parsers in rust.
ffmpeg is what it is because it's way more than "parsers". It's all the parsers, and the filters, and everything you need to feed it any audio/video file you have, and get any audio/video file you want in return. That's why out of all the tools out there that's the one everyone and everything uses, from VLC to Chrome to your phone to your TV to your car to whatever.
This is like saying "sqlite is still the king of embedded sql but several people are starting to write databases in rust".
PS: another reason for ffmpeg massive success is simply that Michael is an insanely productive and dedicated developer, as seen in this story and also in the "libav splits because they don't like him but then the project fails because they don't have him" (yes, this is a vast oversimplification).
Yes, that was my motive. I have a different view of this celebrite thing having spent time in the eDiscovery world.
It’s weird to think I have Google to thank for that; though I suppose it makes sense given they embed ffmpeg in chrome and other services.
> I can’t remember the last time I experienced a crash.
So which one is it? :) j/k
VLC really became super stable from an enduser-only subjective perception.
edit: I found the video: https://youtu.be/ydqNot4csmE?t=637
This seems like a reckless recommendation, as people would then likely use software even more poorly tested to play internet videos.
Of course we're still some way from this being possible but over 1000 fixes and still going means ffmpeg and the like can never really be trusted. Add the blog post says, it's not safe to use with media of unknown source but the whole point of media is to come from other people. How often do you play video from sources you don't trust? It happens all the time. The only reason it's not chaos today is we proxy everything through giant re-encoding farms like YouTube, and browser sandboxing.