5 ms·
What is difficult to understand? Does multithreaded mean something different in the realm of video transcoding?
by bobsmooth 3y ago
What is difficult to understand? Does multithreaded mean something different in the realm of video transcoding?
- bootloop 3y ago> "multi-threading it's not really all about just multi-threading - I will say more about that later - but that is the marketable term" That's whats said in the video at least in the first 10 seconds so it might be that multi-threading is just a too trivial term for the work here. (But haven't watched the video yet so just an observation.)
- rolandog 3y agoIf I recall correctly, he meant that multi-threading wasn't a direct goal, but a "side effect" of rewriting some parts of the codebase to match the expected conceptual flow, and paying off some re-write debt that had been accumulated after years of new features being "tacked on".
- defrost 3y agoThere are many different types of pipelined processing tasks with many differing kinds of threading approaches, and I guess the video clears up what kinds of approaches work best with transcoding ..
- t43562 3y agoHis 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...