summaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorHaihao Xiang <haihao.xiang@intel.com>2023-02-07 11:59:07 +0800
committerHaihao Xiang <haihao.xiang@intel.com>2023-02-16 11:15:50 +0800
commit0f407cdea291ac39505dd20a81ed63f3ddf34ef1 (patch)
treed525678390f79a1efd3e70ae5978d6e60019db74 /doc
parent742dfa28150911a9cd7deee1fd935320cf707f6f (diff)
downloadffmpeg-0f407cdea291ac39505dd20a81ed63f3ddf34ef1.tar.gz
avfilter: add QSV variants of the stack filters
Include hstack_qsv, vstack_qsv and xstack_qsv. They may accept input streams with different sizes. Examples: $ ffmpeg -hwaccel qsv -hwaccel_output_format qsv -i input.mp4 \ -filter_complex "[0:v][0:v]hstack_qsv" -f null - $ ffmpeg \ -hwaccel qsv -hwaccel_output_format qsv -i input.mp4 \ -hwaccel qsv -hwaccel_output_format qsv -i input.mp4 \ -hwaccel qsv -hwaccel_output_format qsv -i input.mp4 \ -hwaccel qsv -hwaccel_output_format qsv -i input.mp4 \ -filter_complex "[0:v][1:v][2:v][3:v]xstack_qsv=inputs=4:fill=0x000000:layout=0_0_1920x1080|w0_0_1920x1080|0_h0_1920x1080|w0_h0_1920x1080" \ -f null - Signed-off-by: Haihao Xiang <haihao.xiang@intel.com>
Diffstat (limited to 'doc')
-rw-r--r--doc/filters.texi88
1 files changed, 88 insertions, 0 deletions
diff --git a/doc/filters.texi b/doc/filters.texi
index a4e235d2af..d65f6ca69d 100644
--- a/doc/filters.texi
+++ b/doc/filters.texi
@@ -26802,6 +26802,94 @@ See @ref{xstack}.
@c man end VAAPI VIDEO FILTERS
+@chapter QSV Video Filters
+@c man begin QSV VIDEO FILTERS
+
+Below is a description of the currently available QSV video filters.
+
+To enable compilation of these filters you need to configure FFmpeg with
+@code{--enable-libmfx} or @code{--enable-libvpl}.
+
+To use QSV filters, you need to setup the QSV device correctly. For more information, please read @url{https://trac.ffmpeg.org/wiki/Hardware/QuickSync}
+
+@section hstack_qsv
+Stack input videos horizontally.
+
+This is the QSV variant of the @ref{hstack} filter, each input stream may
+have different height, this filter will scale down/up each input stream while
+keeping the orignal aspect.
+
+It accepts the following options:
+
+@table @option
+@item inputs
+See @ref{hstack}.
+
+@item shortest
+See @ref{hstack}.
+
+@item height
+Set height of output. If set to 0, this filter will set height of output to
+height of the first input stream. Default value is 0.
+@end table
+
+@section vstack_qsv
+Stack input videos vertically.
+
+This is the QSV variant of the @ref{vstack} filter, each input stream may
+have different width, this filter will scale down/up each input stream while
+keeping the orignal aspect.
+
+It accepts the following options:
+
+@table @option
+@item inputs
+See @ref{vstack}.
+
+@item shortest
+See @ref{vstack}.
+
+@item width
+Set width of output. If set to 0, this filter will set width of output to
+width of the first input stream. Default value is 0.
+@end table
+
+@section xstack_qsv
+Stack video inputs into custom layout.
+
+This is the QSV variant of the @ref{xstack} filter.
+
+It accepts the following options:
+
+@table @option
+@item inputs
+See @ref{xstack}.
+
+@item shortest
+See @ref{xstack}.
+
+@item layout
+See @ref{xstack}.
+Moreover, this permits the user to supply output size for each input stream.
+@example
+xstack_qsv=inputs=4:layout=0_0_1920x1080|0_h0_1920x1080|w0_0_1920x1080|w0_h0_1920x1080
+@end example
+
+@item grid
+See @ref{xstack}.
+
+@item grid_tile_size
+Set output size for each input stream when @option{grid} is set. If this option
+is not set, this filter will set output size by default to the size of the
+first input stream. For the syntax of this option, check the
+@ref{video size syntax,,"Video size" section in the ffmpeg-utils manual,ffmpeg-utils}.
+
+@item fill
+See @ref{xstack}.
+@end table
+
+@c man end QSV VIDEO FILTERS
+
@chapter Video Sources
@c man begin VIDEO SOURCES