[FFmpeg-devel] [RFC] Switching ffmpeg.c to a threaded architecture

Anton Khirnov anton at khirnov.net
Mon Apr 4 14:29:48 EEST 2022


Hi,
this WIP patchset is the first major part of my ongoing work to change
ffmpeg.c architecture such that every
- demuxer
- decoder
- filtergraph
- encoder
- muxer
lives in its own thread. The advantages of doing this, beyond increased
throughput, would be enforced separation between these components,
making the code more local and easier to reason about.

This set implements threading for muxers. My tentative plan is to
continue with encoders and then filters. The patches still need some
polishing, especially the last one. Two FATE tests do not yet pass, this
will be fixed in later iterations.

Meanwhile, comments on the overall approach are especially welcome.

-- 
Anton Khirnov





More information about the ffmpeg-devel mailing list