[FFmpeg-devel] [PATCH v3] doc/filters: add 4x4 layout example for xstack filter

Gyan ffmpeg at gyani.pro
Tue Sep 24 18:52:13 EEST 2019



On 24-09-2019 06:20 PM, lance.lmwang at gmail.com wrote:
> From: Limin Wang <lance.lmwang at gmail.com>
>
> Reviewed-by: Gyan <ffmpeg at gyani.pro>
> Signed-off-by: Limin Wang <lance.lmwang at gmail.com>
> ---
>   doc/filters.texi | 34 +++++++++++++++++++++++++++++++++-
>   1 file changed, 33 insertions(+), 1 deletion(-)
>
> diff --git a/doc/filters.texi b/doc/filters.texi
> index e41384aed8..9e76af36a3 100644
> --- a/doc/filters.texi
> +++ b/doc/filters.texi
> @@ -19057,6 +19057,11 @@ terminates. Default value is 0.
>   @itemize
>   @item
>   Display 4 inputs into 2x2 grid.
> +
> +Below is the 4 inputs position:
> +input1(0, 0)    | input3(w0, 0)
> +input2(0, h0)   | input4(w0, h0)
> +
>   Note that if inputs are of different sizes unused gaps might appear,
>   as not all of output video is used.
>   @example
> @@ -19065,6 +19070,10 @@ xstack=inputs=4:layout=0_0|0_h0|w0_0|w0_h0
>   
>   @item
>   Display 4 inputs into 1x4 grid.
> +
> +Below is the 4 inputs position:
> +input1(0, 0) | input2(0, h0) | input3(0, h0+h1) | input4(0, h0+h1+h2)
> +
>   Note that if inputs are of different sizes unused gaps might appear,
>   as not all of output video is used.
>   @example
> @@ -19073,11 +19082,34 @@ xstack=inputs=4:layout=0_0|0_h0|0_h0+h1|0_h0+h1+h2
>   
>   @item
>   Display 9 inputs into 3x3 grid.
> +
> +Below is the 9 inputs position:
> +input1(0, 0)          |  input4(w0, 0)        | input7(w0+w1, 0)
> +input2(0, h0)         |  input5(w0, h0)       | input8(w0+w1, h0)
> +input3(0, h0+h1)      |  input6(w0, h0+h1)    | input9(w0+w1, h0+h1)
> +
>   Note that if inputs are of different sizes unused gaps might appear,
>   as not all of output video is used.
>   @example
> -xstack=inputs=9:layout=w3_0|w3_h0+h2|w3_h0|0_h4|0_0|w3+w1_0|0_h1+h2|w3+w1_h0|w3+w1_h1+h2
> +xstack=inputs=9:layout=0_0|0_h0|0_h0+h1|w0_0|w0_h0|w0_h0+h1|w0+w1_0|w0+w1_h0|w0+w1_h0+h1
>   @end example
> +
> + at item
> +Display 16 inputs into 4x4 grid.
> +
> +Below is the 16 inputs position:
> +input1(0, 0)        |  input5(w0, 0)        | input9 (w0+w1, 0)        | input13(w0+w1+w2, 0)
> +input2(0, h0)       |  input6(w0, h0)       | input10(w0+w1, h0)       | input14(w0+w1+w2, h0)
> +input3(0, h0+h1)    |  input7(w0, h0+h1)    | input11(w0+w1, h0+h1)    | input15(w0+w1+w2, h0+h1)
> +input4(0, h0+h1+h2) |  input8(w0, h0+h1+h2) | input12(w0+w1, h0+h1+h2) | input16(w0+w1+w2, h0+h1+h2)
> +
> +Note that if inputs are of different sizes unused gaps might appear,
> +as not all of output video is used.
> + at example
> +xstack=inputs=16:layout=0_0|0_h0|0_h0+h1|0_h0+h1+h2|w0_0|w0_h0|w0_h0+h1|w0_h0+h1+h2|w0+w1_0|\
> +w0+w1_h0|w0+w1_h0+h1|w0+w1_h0+h1+h2|w0+w1+w2_0|w0+w1+w2_h0|w0+w1+w2_h0+h1|w0+w1+w2_h0+h1+h2
> + at end example
> +
>   @end itemize
>   
>   @anchor{yadif}

I tested the HTML and manual output and linebreaks aren't honoured. Even 
with manual linebreaks, the grid isn't aligned. You should manually set 
and test it.

Gyan


More information about the ffmpeg-devel mailing list