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

lance.lmwang at gmail.com lance.lmwang at gmail.com
Thu Sep 19 08:43:14 EEST 2019


From: Limin Wang <lance.lmwang at gmail.com>

In additon, I have added details of each input position to help understand 
how to write the layout parameters.

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 06ce7ec069..bd5edf9d0c 100644
--- a/doc/filters.texi
+++ b/doc/filters.texi
@@ -19045,6 +19045,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
@@ -19053,6 +19058,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
@@ -19061,11 +19070,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}
-- 
2.21.0



More information about the ffmpeg-devel mailing list