3 ms·
His work is not primarily about multithreading but about cleaning up ffmpeg to be true to its own architecture so that normal human beings have a chance of bein
by t43562 3y ago
His work is not primarily about multithreading but about cleaning up ffmpeg to be true to its own architecture so that normal human beings have a chance of being able to maintain it. Things like making data flow one way in a pipeline, separating public and private state and having clearly defined interfaces.
Things had got so bad that every change was super difficult to make.
Multithreading comes out as a natural benefit of the cleanup.
- pjc50 3y ago^ This: I just spent the ~20 minutes necessary to watch that part of the talk at a reasonable 1.5x speed, and that's the summary. Ffmpeg was suffering from 20 years of incremental change and lack of cleanup/refactoring, and that's what he's spent two years doing. A couple of great lines including "my test for deprecating an option is if it's been broken for years and nobody is complaining, then definitely nobody is using it".
- andrewstuart 3y agoI often look for obscure options to get specialists tasks done in all sorts of software. Better to fix the option. Just because I didn’t go to the very significant effort of complaining doesn’t mean I didn’t want and burn hours trying to use that option.
- pjc50 3y agoThe verdict of the presentation was that many options are (bad) duplicates of the filter graph, and you should configure the software through the filter graph. We saw in openssl what the consequences of never removing any code for decades were. It has a real cost. Always a case-by-case decision, though.
- Zagitta 3y agoYou can't expect open source developers to be omniscient and know you want to use a specific feature if you don't communicate that to them. Would you rather have them add telemetry?
- radlad 3y agoFixing the option takes time and expertise, as well as an idea of what users actually are trying to do. If you don't give feedback to developers, how do you expect them to know you wanted to use the option? Better to remove a broken feature than let users burn hours futilely trying to make it work.
- smcnally 3y agoAnd “the most-popular encoder on at least two planets” as Mars Rover Perseverance runs it. https://www.reddit.com/r/space/comments/lpz3l7/the_mars_2020_perseverance_rover_is_using_ffmpeg/ https://www.reddit.com/r/space/comments/lpz3l7/the_mars_2020...