[FFmpeg-devel] [PATCH] doc/filters: Add thumbnail_cuda documentation; Update thumbnail_cuda filter description.

Danil Iashchenko danyaschenko at gmail.com
Fri Mar 21 12:13:25 EET 2025


Hi! 
Added documentation for the thumbnail_cuda filter and updated its description to align with the format of other CUDA-based filters.
The new description clarifies its behaviour and avoids confusion with the {thumbnail} filter.

Thank you for review!
Regards,
Danil Iashchenko

---
 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
 
+ at subsection thumbnail_cuda
+
+Select the most representative frame in a given sequence of consecutive frames using CUDA.
+
+The filter accepts the following options:
+
+ at table @option
+ at 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}.
+ at 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.
+
+ at subsubsection Example
+
+ at itemize
+
+ at item
+Thumbnails are extracted from every @var{n}=150-frame batch, selecting one per batch. Chosen frames are then scaled with @ref{scale_cuda}.
+ at 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
+ at end example
+
+ at 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,
-- 
2.39.5 (Apple Git-154)



More information about the ffmpeg-devel mailing list