This is similar to filter_threads, but controls job count. --- doc/ffplay.texi | 5 +++++ fftools/ffplay.c | 4 ++++ 2 files changed, 9 insertions(+)
diff --git a/doc/ffplay.texi b/doc/ffplay.texi index 5dd860b846..abc857013f 100644 --- a/doc/ffplay.texi +++ b/doc/ffplay.texi @@ -196,6 +196,11 @@ will produce a thread pool with this many threads available for parallel processing. The default is 0 which means that the thread count will be determined by the number of available CPUs. +@item -filter_jobs @var{nb_jobs} +Defines how many distinct jobs a filter pipeline will break frames into. +The default is 0 which means that the thread count will be determined +by the CPU topology. + @end table @section While playing diff --git a/fftools/ffplay.c b/fftools/ffplay.c index bcc00afe31..bce1d20c49 100644 --- a/fftools/ffplay.c +++ b/fftools/ffplay.c @@ -355,6 +355,7 @@ static char *afilters = NULL; static int autorotate = 1; static int find_stream_info = 1; static int filter_nbthreads = 0; +static int filter_nbjobs = 0; /* current context */ static int is_full_screen; @@ -1963,6 +1964,7 @@ static int configure_audio_filters(VideoState *is, const char *afilters, int for if (!(is->agraph = avfilter_graph_alloc())) return AVERROR(ENOMEM); is->agraph->nb_threads = filter_nbthreads; + is->agraph->nb_jobs = filter_nbjobs; av_bprint_init(&bp, 0, AV_BPRINT_SIZE_AUTOMATIC); @@ -2168,6 +2170,7 @@ static int video_thread(void *arg) goto the_end; } graph->nb_threads = filter_nbthreads; + graph->nb_jobs = filter_nbjobs; if ((ret = configure_video_filters(graph, is, vfilters_list ? vfilters_list[is->vfilter_idx] : NULL, frame)) < 0) { SDL_Event event; event.type = FF_QUIT_EVENT; @@ -3615,6 +3618,7 @@ static const OptionDef options[] = { { "find_stream_info", OPT_BOOL | OPT_INPUT | OPT_EXPERT, { &find_stream_info }, "read and decode the streams to fill missing information with heuristics" }, { "filter_threads", HAS_ARG | OPT_INT | OPT_EXPERT, { &filter_nbthreads }, "number of filter threads per graph" }, + { "filter_jobs", HAS_ARG | OPT_INT | OPT_EXPERT, { &filter_nbjobs }, "number of filter jobs per graph" }, { NULL, }, }; -- 2.37.2 _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".