ffmpeg | branch: master | Danil Iashchenko <danyasche...@gmail.com> | Fri Mar 21 10:13:25 2025 +0000| [1015ea2ba15de8e7d4460496398c3eba6a42886d] | committer: Gyan Doshi
doc/filters: add thumbnail_cuda entry Also update thumbnail_cuda filter description. > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=1015ea2ba15de8e7d4460496398c3eba6a42886d --- doc/filters.texi | 28 ++++++++++++++++++++++++++++ libavfilter/vf_thumbnail_cuda.c | 2 +- 2 files changed, 29 insertions(+), 1 deletion(-) diff --git a/doc/filters.texi b/doc/filters.texi index 37b8674756..52f67fbd0c 100644 --- a/doc/filters.texi +++ b/doc/filters.texi @@ -26917,6 +26917,34 @@ scale_cuda=passthrough=0 @end example @end itemize +@subsection thumbnail_cuda + +Select the most representative frame in a given sequence of consecutive frames using CUDA. + +The filter accepts the following options: + +@table @option +@item n +Set the frames batch size to analyze; in a set of @var{n} frames, the filter +will pick one of them, and then handle the next batch of @var{n} frames until +the end. Default is @code{100}. +@end table + +Since the filter keeps track of the whole frames sequence, a bigger @var{n} +value will result in a higher memory usage, so a high value is not recommended. + +@subsubsection Example + +@itemize + +@item +Thumbnails are extracted from every @var{n}=150-frame batch, selecting one per batch. Chosen frames are then scaled with @ref{scale_cuda}. +@example +./ffmpeg -hwaccel cuda -hwaccel_output_format cuda -i ./input.mp4 -vf "thumbnail_cuda=150,scale_cuda=1920:1080,hwdownload,format=nv12" ./output/out%03d.png +@end example + +@end itemize + @subsection yadif_cuda Deinterlace the input video using the @ref{yadif} algorithm, but implemented diff --git a/libavfilter/vf_thumbnail_cuda.c b/libavfilter/vf_thumbnail_cuda.c index ee09f7fa3e..121274de11 100644 --- a/libavfilter/vf_thumbnail_cuda.c +++ b/libavfilter/vf_thumbnail_cuda.c @@ -438,7 +438,7 @@ static const AVFilterPad thumbnail_cuda_outputs[] = { const FFFilter ff_vf_thumbnail_cuda = { .p.name = "thumbnail_cuda", - .p.description = NULL_IF_CONFIG_SMALL("Select the most representative frame in a given sequence of consecutive frames."), + .p.description = NULL_IF_CONFIG_SMALL("Select the most representative frame in a given sequence of consecutive frames using CUDA."), .p.priv_class = &thumbnail_cuda_class, .priv_size = sizeof(ThumbnailCudaContext), .init = init, _______________________________________________ ffmpeg-cvslog mailing list ffmpeg-cvslog@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog To unsubscribe, visit link above, or email ffmpeg-cvslog-requ...@ffmpeg.org with subject "unsubscribe".