[FFmpeg-devel] [PATCH 13/13 v2] fftools/ffmpeg: convert to a threaded architecture

Michael Niedermayer michael at niedermayer.cc
Thu Nov 30 15:08:26 EET 2023


On Sat, Nov 25, 2023 at 09:32:06PM +0100, Anton Khirnov wrote:
> Change the main loop and every component (demuxers, decoders, filters,
> encoders, muxers) to use the previously added transcode scheduler. Every
> instance of every such component was already running in a separate
> thread, but now they can actually run in parallel.
> 
> Changes the results of ffmpeg-fix_sub_duration_heartbeat - tested by
> JEEB to be more correct and deterministic.
> ---
>  fftools/ffmpeg.c                              | 374 +--------
>  fftools/ffmpeg.h                              |  97 +--
>  fftools/ffmpeg_dec.c                          | 321 ++------
>  fftools/ffmpeg_demux.c                        | 268 ++++---
>  fftools/ffmpeg_enc.c                          | 368 ++-------
>  fftools/ffmpeg_filter.c                       | 722 +++++-------------
>  fftools/ffmpeg_mux.c                          | 324 ++------
>  fftools/ffmpeg_mux.h                          |  24 +-
>  fftools/ffmpeg_mux_init.c                     |  88 +--
>  fftools/ffmpeg_opt.c                          |   6 +-
>  .../fate/ffmpeg-fix_sub_duration_heartbeat    |  36 +-
>  11 files changed, 598 insertions(+), 2030 deletions(-)

I tried
./ffmpeg -f lavfi -i testsrc2 -bsf:v noise -bitexact -t 2 /tmp/.y4m

with merged ffmpeg_threading into master

and it gets stuck

  Stream #0:0 -> #0:0 (wrapped_avframe (native) -> wrapped_avframe (native))
Press [q] to stop, [?] for help
[noise @ 0x55e8fbaea340] Wrapped AVFrame noising is unsupported
[vost#0:0/wrapped_avframe @ 0x55e8fbae9840] Error initializing bitstream filter: noise
[vf#0:0 @ 0x55e8fbaea880] Error sending frames to consumers: Not yet implemented in FFmpeg, patches welcome
[vf#0:0 @ 0x55e8fbaea880] Task finished with error code: -1163346256 (Not yet implemented in FFmpeg, patches welcome)
[vf#0:0 @ 0x55e8fbaea880] Terminating thread with return code -1163346256 (Not yet implemented in FFmpeg, patches welcome)

[...]
-- 
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

The day soldiers stop bringing you their problems is the day you have stopped 
leading them. They have either lost confidence that you can help or concluded 
you do not care. Either case is a failure of leadership. - Colin Powell
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 195 bytes
Desc: not available
URL: <https://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20231130/4017268b/attachment.sig>


More information about the ffmpeg-devel mailing list