tizen 2.0 init
[framework/multimedia/gst-plugins-good0.10.git] / docs / plugins / html / gst-plugins-good-plugins-videomixer.html
1 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2 <html>
3 <head>
4 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
5 <title>videomixer</title>
6 <meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
7 <link rel="home" href="index.html" title="GStreamer Good Plugins 0.10 Plugins Reference Manual">
8 <link rel="up" href="ch01.html" title="gst-plugins-good Elements">
9 <link rel="prev" href="gst-plugins-good-plugins-videoflip.html" title="videoflip">
10 <link rel="next" href="gst-plugins-good-plugins-videomixer2.html" title="videomixer2">
11 <meta name="generator" content="GTK-Doc V1.18 (XML mode)">
12 <link rel="stylesheet" href="style.css" type="text/css">
13 </head>
14 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
15 <table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
16 <tr valign="middle">
17 <td><a accesskey="p" href="gst-plugins-good-plugins-videoflip.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
18 <td><a accesskey="u" href="ch01.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
19 <td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
20 <th width="100%" align="center">GStreamer Good Plugins 0.10 Plugins Reference Manual</th>
21 <td><a accesskey="n" href="gst-plugins-good-plugins-videomixer2.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
22 </tr>
23 <tr><td colspan="5" class="shortcuts">
24 <a href="#gst-plugins-good-plugins-videomixer.synopsis" class="shortcut">Top</a>
25                    | 
26                   <a href="#gst-plugins-good-plugins-videomixer.description" class="shortcut">Description</a>
27                    | 
28                   <a href="#gst-plugins-good-plugins-videomixer.object-hierarchy" class="shortcut">Object Hierarchy</a>
29                    | 
30                   <a href="#gst-plugins-good-plugins-videomixer.implemented-interfaces" class="shortcut">Implemented Interfaces</a>
31                    | 
32                   <a href="#gst-plugins-good-plugins-videomixer.properties" class="shortcut">Properties</a>
33 </td></tr>
34 </table>
35 <div class="refentry">
36 <a name="gst-plugins-good-plugins-videomixer"></a><div class="titlepage"></div>
37 <div class="refnamediv"><table width="100%"><tr>
38 <td valign="top">
39 <h2><span class="refentrytitle"><a name="gst-plugins-good-plugins-videomixer.top_of_page"></a>videomixer</span></h2>
40 <p>videomixer — Mix multiple video streams</p>
41 </td>
42 <td valign="top" align="right"></td>
43 </tr></table></div>
44 <div class="refsynopsisdiv">
45 <a name="gst-plugins-good-plugins-videomixer.synopsis"></a><h2>Synopsis</h2>
46 <a name="GstVideoMixer"></a><pre class="synopsis">struct              <a class="link" href="gst-plugins-good-plugins-videomixer.html#GstVideoMixer-struct" title="struct GstVideoMixer">GstVideoMixer</a>;
47 enum                <a class="link" href="gst-plugins-good-plugins-videomixer.html#GstVideoMixerBackground" title="enum GstVideoMixerBackground">GstVideoMixerBackground</a>;
48 </pre>
49 </div>
50 <div class="refsect1">
51 <a name="gst-plugins-good-plugins-videomixer.object-hierarchy"></a><h2>Object Hierarchy</h2>
52 <pre class="synopsis">
53   <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
54    +----<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstObject.html">GstObject</a>
55          +----<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html">GstElement</a>
56                +----GstVideoMixer
57 </pre>
58 </div>
59 <div class="refsect1">
60 <a name="gst-plugins-good-plugins-videomixer.implemented-interfaces"></a><h2>Implemented Interfaces</h2>
61 <p>
62 GstVideoMixer implements
63  <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstChildProxy.html">GstChildProxy</a>.</p>
64 </div>
65 <div class="refsect1">
66 <a name="gst-plugins-good-plugins-videomixer.properties"></a><h2>Properties</h2>
67 <pre class="synopsis">
68   "<a class="link" href="gst-plugins-good-plugins-videomixer.html#GstVideoMixer--background" title='The "background" property'>background</a>"               <a class="link" href="gst-plugins-good-plugins-videomixer.html#GstVideoMixerBackground" title="enum GstVideoMixerBackground"><span class="type">GstVideoMixerBackground</span></a>  : Read / Write
69 </pre>
70 </div>
71 <div class="refsect1">
72 <a name="gst-plugins-good-plugins-videomixer.description"></a><h2>Description</h2>
73 <p>
74 Videomixer can accept AYUV, ARGB and BGRA video streams. For each of the requested
75 sink pads it will compare the incoming geometry and framerate to define the
76 output parameters. Indeed output video frames will have the geometry of the
77 biggest incoming video stream and the framerate of the fastest incoming one.
78 </p>
79 <p>
80 All sink pads must be either AYUV, ARGB or BGRA, but a mixture of them is not 
81 supported. The src pad will have the same colorspace as the sinks. 
82 No colorspace conversion is done. 
83 </p>
84 <p>
85 Individual parameters for each input stream can be configured on the
86 <a class="link" href="GstVideoMixerPad.html" title="GstVideoMixerPad"><span class="type">GstVideoMixerPad</span></a>.
87 </p>
88 <p>
89 </p>
90 <div class="refsect2">
91 <a name="idp21835648"></a><h3>Sample pipelines</h3>
92 <div class="informalexample">
93   <table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
94     <tbody>
95       <tr>
96         <td class="listing_lines" align="right"><pre>1
97 2
98 3
99 4
100 5
101 6
102 7
103 8</pre></td>
104         <td class="listing_code"><pre class="programlisting">gst<span class="gtkdoc opt">-</span>launch<span class="gtkdoc opt">-</span><span class="number">0.10</span> \
105   videotestsrc pattern<span class="gtkdoc opt">=</span><span class="number">1</span> <span class="gtkdoc opt">!</span> \
106   video<span class="gtkdoc opt">/</span>x<span class="gtkdoc opt">-</span>raw<span class="gtkdoc opt">-</span>yuv<span class="gtkdoc opt">,</span>format<span class="gtkdoc opt">=</span>\<span class="gtkdoc opt">(</span>fourcc\<span class="gtkdoc opt">)</span>AYUV<span class="gtkdoc opt">,</span>framerate<span class="gtkdoc opt">=</span>\<span class="gtkdoc opt">(</span>fraction\<span class="gtkdoc opt">)</span><span class="number">10</span><span class="gtkdoc opt">/</span><span class="number">1</span><span class="gtkdoc opt">,</span>width<span class="gtkdoc opt">=</span><span class="number">100</span><span class="gtkdoc opt">,</span>height<span class="gtkdoc opt">=</span><span class="number">100</span> <span class="gtkdoc opt">!</span> \
107   videobox border<span class="gtkdoc opt">-</span>alpha<span class="gtkdoc opt">=</span><span class="number">0</span> top<span class="gtkdoc opt">=-</span><span class="number">70</span> bottom<span class="gtkdoc opt">=-</span><span class="number">70</span> right<span class="gtkdoc opt">=-</span><span class="number">220</span> <span class="gtkdoc opt">!</span> \
108   videomixer name<span class="gtkdoc opt">=</span>mix sink_0<span class="gtkdoc opt">::</span>alpha<span class="gtkdoc opt">=</span><span class="number">0.7</span> sink_1<span class="gtkdoc opt">::</span>alpha<span class="gtkdoc opt">=</span><span class="number">0.5</span> <span class="gtkdoc opt">!</span> \
109   ffmpegcolorspace <span class="gtkdoc opt">!</span> xvimagesink \
110   videotestsrc <span class="gtkdoc opt">!</span> \
111   video<span class="gtkdoc opt">/</span>x<span class="gtkdoc opt">-</span>raw<span class="gtkdoc opt">-</span>yuv<span class="gtkdoc opt">,</span>format<span class="gtkdoc opt">=</span>\<span class="gtkdoc opt">(</span>fourcc\<span class="gtkdoc opt">)</span>AYUV<span class="gtkdoc opt">,</span>framerate<span class="gtkdoc opt">=</span>\<span class="gtkdoc opt">(</span>fraction\<span class="gtkdoc opt">)</span><span class="number">5</span><span class="gtkdoc opt">/</span><span class="number">1</span><span class="gtkdoc opt">,</span>width<span class="gtkdoc opt">=</span><span class="number">320</span><span class="gtkdoc opt">,</span>height<span class="gtkdoc opt">=</span><span class="number">240</span> <span class="gtkdoc opt">!</span> mix<span class="gtkdoc opt">.</span></pre></td>
112       </tr>
113     </tbody>
114   </table>
115 </div>
116  A pipeline to demonstrate videomixer used together with videobox.
117 This should show a 320x240 pixels video test source with some transparency
118 showing the background checker pattern. Another video test source with just
119 the snow pattern of 100x100 pixels is overlayed on top of the first one on
120 the left vertically centered with a small transparency showing the first
121 video test source behind and the checker pattern under it. Note that the
122 framerate of the output video is 10 frames per second.
123 <div class="informalexample">
124   <table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
125     <tbody>
126       <tr>
127         <td class="listing_lines" align="right"><pre>1
128 2
129 3
130 4
131 5</pre></td>
132         <td class="listing_code"><pre class="programlisting">gst<span class="gtkdoc opt">-</span>launch videotestsrc pattern<span class="gtkdoc opt">=</span><span class="number">1</span> <span class="gtkdoc opt">!</span> \
133   video<span class="gtkdoc opt">/</span>x<span class="gtkdoc opt">-</span>raw<span class="gtkdoc opt">-</span>rgb<span class="gtkdoc opt">,</span> framerate<span class="gtkdoc opt">=</span>\<span class="gtkdoc opt">(</span>fraction\<span class="gtkdoc opt">)</span><span class="number">10</span><span class="gtkdoc opt">/</span><span class="number">1</span><span class="gtkdoc opt">,</span> width<span class="gtkdoc opt">=</span><span class="number">100</span><span class="gtkdoc opt">,</span> height<span class="gtkdoc opt">=</span><span class="number">100</span> <span class="gtkdoc opt">!</span> \
134   videomixer name<span class="gtkdoc opt">=</span>mix <span class="gtkdoc opt">!</span> ffmpegcolorspace <span class="gtkdoc opt">!</span> ximagesink \
135   videotestsrc <span class="gtkdoc opt">!</span>  \
136   video<span class="gtkdoc opt">/</span>x<span class="gtkdoc opt">-</span>raw<span class="gtkdoc opt">-</span>rgb<span class="gtkdoc opt">,</span> framerate<span class="gtkdoc opt">=</span>\<span class="gtkdoc opt">(</span>fraction\<span class="gtkdoc opt">)</span><span class="number">5</span><span class="gtkdoc opt">/</span><span class="number">1</span><span class="gtkdoc opt">,</span> width<span class="gtkdoc opt">=</span><span class="number">320</span><span class="gtkdoc opt">,</span> height<span class="gtkdoc opt">=</span><span class="number">240</span> <span class="gtkdoc opt">!</span> mix<span class="gtkdoc opt">.</span></pre></td>
137       </tr>
138     </tbody>
139   </table>
140 </div>
141  A pipeline to demostrate bgra mixing. (This does not demonstrate alpha blending). 
142 <div class="informalexample">
143   <table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
144     <tbody>
145       <tr>
146         <td class="listing_lines" align="right"><pre>1
147 2
148 3
149 4
150 5</pre></td>
151         <td class="listing_code"><pre class="programlisting">gst<span class="gtkdoc opt">-</span>launch videotestsrc pattern<span class="gtkdoc opt">=</span><span class="number">1</span> <span class="gtkdoc opt">!</span> \
152   video<span class="gtkdoc opt">/</span>x<span class="gtkdoc opt">-</span>raw<span class="gtkdoc opt">-</span>yuv<span class="gtkdoc opt">,</span>format <span class="gtkdoc opt">=</span>\<span class="gtkdoc opt">(</span>fourcc\<span class="gtkdoc opt">)</span>I420<span class="gtkdoc opt">,</span> framerate<span class="gtkdoc opt">=</span>\<span class="gtkdoc opt">(</span>fraction\<span class="gtkdoc opt">)</span><span class="number">10</span><span class="gtkdoc opt">/</span><span class="number">1</span><span class="gtkdoc opt">,</span> width<span class="gtkdoc opt">=</span><span class="number">100</span><span class="gtkdoc opt">,</span> height<span class="gtkdoc opt">=</span><span class="number">100</span> <span class="gtkdoc opt">!</span> \
153   videomixer name<span class="gtkdoc opt">=</span>mix <span class="gtkdoc opt">!</span> ffmpegcolorspace <span class="gtkdoc opt">!</span> ximagesink \
154   videotestsrc <span class="gtkdoc opt">!</span> \
155   video<span class="gtkdoc opt">/</span>x<span class="gtkdoc opt">-</span>raw<span class="gtkdoc opt">-</span>yuv<span class="gtkdoc opt">,</span>format<span class="gtkdoc opt">=</span>\<span class="gtkdoc opt">(</span>fourcc\<span class="gtkdoc opt">)</span>I420<span class="gtkdoc opt">,</span> framerate<span class="gtkdoc opt">=</span>\<span class="gtkdoc opt">(</span>fraction\<span class="gtkdoc opt">)</span><span class="number">5</span><span class="gtkdoc opt">/</span><span class="number">1</span><span class="gtkdoc opt">,</span> width<span class="gtkdoc opt">=</span><span class="number">320</span><span class="gtkdoc opt">,</span> height<span class="gtkdoc opt">=</span><span class="number">240</span> <span class="gtkdoc opt">!</span> mix<span class="gtkdoc opt">.</span></pre></td>
156       </tr>
157     </tbody>
158   </table>
159 </div>
160  A pipeline to test I420
161 <div class="informalexample">
162   <table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
163     <tbody>
164       <tr>
165         <td class="listing_lines" align="right"><pre>1</pre></td>
166         <td class="listing_code"><pre class="programlisting">gst<span class="gtkdoc opt">-</span>launch videotestsrc pattern<span class="gtkdoc opt">=</span><span class="string">&quot;snow&quot;</span> <span class="gtkdoc opt">!</span> video<span class="gtkdoc opt">/</span>x<span class="gtkdoc opt">-</span>raw<span class="gtkdoc opt">-</span>yuv<span class="gtkdoc opt">,</span> framerate<span class="gtkdoc opt">=</span>\<span class="gtkdoc opt">(</span>fraction\<span class="gtkdoc opt">)</span><span class="number">10</span><span class="gtkdoc opt">/</span><span class="number">1</span><span class="gtkdoc opt">,</span> width<span class="gtkdoc opt">=</span><span class="number">200</span><span class="gtkdoc opt">,</span> height<span class="gtkdoc opt">=</span><span class="number">150</span> <span class="gtkdoc opt">!</span> videomixer name<span class="gtkdoc opt">=</span>mix sink_1<span class="gtkdoc opt">::</span>xpos<span class="gtkdoc opt">=</span><span class="number">20</span> sink_1<span class="gtkdoc opt">::</span>ypos<span class="gtkdoc opt">=</span><span class="number">20</span> sink_1<span class="gtkdoc opt">::</span>alpha<span class="gtkdoc opt">=</span><span class="number">0.5</span> <span class="gtkdoc opt">!</span> ffmpegcolorspace <span class="gtkdoc opt">!</span> xvimagesink videotestsrc <span class="gtkdoc opt">!</span> video<span class="gtkdoc opt">/</span>x<span class="gtkdoc opt">-</span>raw<span class="gtkdoc opt">-</span>yuv<span class="gtkdoc opt">,</span> framerate<span class="gtkdoc opt">=</span>\<span class="gtkdoc opt">(</span>fraction\<span class="gtkdoc opt">)</span><span class="number">10</span><span class="gtkdoc opt">/</span><span class="number">1</span><span class="gtkdoc opt">,</span> width<span class="gtkdoc opt">=</span><span class="number">640</span><span class="gtkdoc opt">,</span> height<span class="gtkdoc opt">=</span><span class="number">360</span> <span class="gtkdoc opt">!</span> mix<span class="gtkdoc opt">.</span></pre></td>
167       </tr>
168     </tbody>
169   </table>
170 </div>
171  Set position and alpha on the mixer using <a class="link" href="GstVideoMixerPad.html" title="GstVideoMixerPad"><span class="type">GstVideoMixerPad</span></a> properties.
172 </div>
173 <p>
174 </p>
175 <div class="refsynopsisdiv">
176 <h2>Synopsis</h2>
177 <div class="refsect2">
178 <a name="idp17624128"></a><h3>Element Information</h3>
179 <div class="variablelist"><table border="0">
180 <col align="left" valign="top">
181 <tbody>
182 <tr>
183 <td><p><span class="term">plugin</span></p></td>
184 <td>
185             <a class="link" href="gst-plugins-good-plugins-plugin-videomixer.html#plugin-videomixer">videomixer</a>
186           </td>
187 </tr>
188 <tr>
189 <td><p><span class="term">author</span></p></td>
190 <td>Wim Taymans &lt;wim@fluendo.com&gt;</td>
191 </tr>
192 <tr>
193 <td><p><span class="term">class</span></p></td>
194 <td>Filter/Editor/Video</td>
195 </tr>
196 </tbody>
197 </table></div>
198 </div>
199 <hr>
200 <div class="refsect2">
201 <a name="idp23605424"></a><h3>Element Pads</h3>
202 <div class="variablelist"><table border="0">
203 <col align="left" valign="top">
204 <tbody>
205 <tr>
206 <td><p><span class="term">name</span></p></td>
207 <td>sink_%d</td>
208 </tr>
209 <tr>
210 <td><p><span class="term">direction</span></p></td>
211 <td>sink</td>
212 </tr>
213 <tr>
214 <td><p><span class="term">presence</span></p></td>
215 <td>request</td>
216 </tr>
217 <tr>
218 <td><p><span class="term">details</span></p></td>
219 <td>video/x-raw-yuv, format=(fourcc)AYUV, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</td>
220 </tr>
221 <tr>
222 <td><p><span class="term"></span></p></td>
223 <td> video/x-raw-rgb, bpp=(int)32, depth=(int)32, endianness=(int)4321, red_mask=(int)65280, green_mask=(int)16711680, blue_mask=(int)-16777216, alpha_mask=(int)255, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</td>
224 </tr>
225 <tr>
226 <td><p><span class="term"></span></p></td>
227 <td> video/x-raw-rgb, bpp=(int)32, depth=(int)32, endianness=(int)4321, red_mask=(int)16711680, green_mask=(int)65280, blue_mask=(int)255, alpha_mask=(int)-16777216, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</td>
228 </tr>
229 <tr>
230 <td><p><span class="term"></span></p></td>
231 <td> video/x-raw-rgb, bpp=(int)32, depth=(int)32, endianness=(int)4321, red_mask=(int)-16777216, green_mask=(int)16711680, blue_mask=(int)65280, alpha_mask=(int)255, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</td>
232 </tr>
233 <tr>
234 <td><p><span class="term"></span></p></td>
235 <td> video/x-raw-rgb, bpp=(int)32, depth=(int)32, endianness=(int)4321, red_mask=(int)255, green_mask=(int)65280, blue_mask=(int)16711680, alpha_mask=(int)-16777216, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</td>
236 </tr>
237 <tr>
238 <td><p><span class="term"></span></p></td>
239 <td> video/x-raw-yuv, format=(fourcc)Y444, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</td>
240 </tr>
241 <tr>
242 <td><p><span class="term"></span></p></td>
243 <td> video/x-raw-yuv, format=(fourcc)Y42B, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</td>
244 </tr>
245 <tr>
246 <td><p><span class="term"></span></p></td>
247 <td> video/x-raw-yuv, format=(fourcc)YUY2, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</td>
248 </tr>
249 <tr>
250 <td><p><span class="term"></span></p></td>
251 <td> video/x-raw-yuv, format=(fourcc)UYVY, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</td>
252 </tr>
253 <tr>
254 <td><p><span class="term"></span></p></td>
255 <td> video/x-raw-yuv, format=(fourcc)YVYU, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</td>
256 </tr>
257 <tr>
258 <td><p><span class="term"></span></p></td>
259 <td> video/x-raw-yuv, format=(fourcc)I420, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</td>
260 </tr>
261 <tr>
262 <td><p><span class="term"></span></p></td>
263 <td> video/x-raw-yuv, format=(fourcc)YV12, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</td>
264 </tr>
265 <tr>
266 <td><p><span class="term"></span></p></td>
267 <td> video/x-raw-yuv, format=(fourcc)Y41B, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</td>
268 </tr>
269 <tr>
270 <td><p><span class="term"></span></p></td>
271 <td> video/x-raw-rgb, bpp=(int)24, depth=(int)24, endianness=(int)4321, red_mask=(int)16711680, green_mask=(int)65280, blue_mask=(int)255, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</td>
272 </tr>
273 <tr>
274 <td><p><span class="term"></span></p></td>
275 <td> video/x-raw-rgb, bpp=(int)24, depth=(int)24, endianness=(int)4321, red_mask=(int)255, green_mask=(int)65280, blue_mask=(int)16711680, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</td>
276 </tr>
277 <tr>
278 <td><p><span class="term"></span></p></td>
279 <td> video/x-raw-rgb, bpp=(int)32, depth=(int)24, endianness=(int)4321, red_mask=(int)16711680, green_mask=(int)65280, blue_mask=(int)255, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</td>
280 </tr>
281 <tr>
282 <td><p><span class="term"></span></p></td>
283 <td> video/x-raw-rgb, bpp=(int)32, depth=(int)24, endianness=(int)4321, red_mask=(int)255, green_mask=(int)65280, blue_mask=(int)16711680, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</td>
284 </tr>
285 <tr>
286 <td><p><span class="term"></span></p></td>
287 <td> video/x-raw-rgb, bpp=(int)32, depth=(int)24, endianness=(int)4321, red_mask=(int)-16777216, green_mask=(int)16711680, blue_mask=(int)65280, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</td>
288 </tr>
289 <tr>
290 <td><p><span class="term"></span></p></td>
291 <td> video/x-raw-rgb, bpp=(int)32, depth=(int)24, endianness=(int)4321, red_mask=(int)65280, green_mask=(int)16711680, blue_mask=(int)-16777216, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</td>
292 </tr>
293 </tbody>
294 </table></div>
295 <div class="variablelist"><table border="0">
296 <col align="left" valign="top">
297 <tbody>
298 <tr>
299 <td><p><span class="term">name</span></p></td>
300 <td>src</td>
301 </tr>
302 <tr>
303 <td><p><span class="term">direction</span></p></td>
304 <td>source</td>
305 </tr>
306 <tr>
307 <td><p><span class="term">presence</span></p></td>
308 <td>always</td>
309 </tr>
310 <tr>
311 <td><p><span class="term">details</span></p></td>
312 <td>video/x-raw-yuv, format=(fourcc)AYUV, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</td>
313 </tr>
314 <tr>
315 <td><p><span class="term"></span></p></td>
316 <td> video/x-raw-rgb, bpp=(int)32, depth=(int)32, endianness=(int)4321, red_mask=(int)65280, green_mask=(int)16711680, blue_mask=(int)-16777216, alpha_mask=(int)255, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</td>
317 </tr>
318 <tr>
319 <td><p><span class="term"></span></p></td>
320 <td> video/x-raw-rgb, bpp=(int)32, depth=(int)32, endianness=(int)4321, red_mask=(int)16711680, green_mask=(int)65280, blue_mask=(int)255, alpha_mask=(int)-16777216, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</td>
321 </tr>
322 <tr>
323 <td><p><span class="term"></span></p></td>
324 <td> video/x-raw-rgb, bpp=(int)32, depth=(int)32, endianness=(int)4321, red_mask=(int)-16777216, green_mask=(int)16711680, blue_mask=(int)65280, alpha_mask=(int)255, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</td>
325 </tr>
326 <tr>
327 <td><p><span class="term"></span></p></td>
328 <td> video/x-raw-rgb, bpp=(int)32, depth=(int)32, endianness=(int)4321, red_mask=(int)255, green_mask=(int)65280, blue_mask=(int)16711680, alpha_mask=(int)-16777216, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</td>
329 </tr>
330 <tr>
331 <td><p><span class="term"></span></p></td>
332 <td> video/x-raw-yuv, format=(fourcc)Y444, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</td>
333 </tr>
334 <tr>
335 <td><p><span class="term"></span></p></td>
336 <td> video/x-raw-yuv, format=(fourcc)Y42B, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</td>
337 </tr>
338 <tr>
339 <td><p><span class="term"></span></p></td>
340 <td> video/x-raw-yuv, format=(fourcc)YUY2, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</td>
341 </tr>
342 <tr>
343 <td><p><span class="term"></span></p></td>
344 <td> video/x-raw-yuv, format=(fourcc)UYVY, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</td>
345 </tr>
346 <tr>
347 <td><p><span class="term"></span></p></td>
348 <td> video/x-raw-yuv, format=(fourcc)YVYU, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</td>
349 </tr>
350 <tr>
351 <td><p><span class="term"></span></p></td>
352 <td> video/x-raw-yuv, format=(fourcc)I420, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</td>
353 </tr>
354 <tr>
355 <td><p><span class="term"></span></p></td>
356 <td> video/x-raw-yuv, format=(fourcc)YV12, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</td>
357 </tr>
358 <tr>
359 <td><p><span class="term"></span></p></td>
360 <td> video/x-raw-yuv, format=(fourcc)Y41B, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</td>
361 </tr>
362 <tr>
363 <td><p><span class="term"></span></p></td>
364 <td> video/x-raw-rgb, bpp=(int)24, depth=(int)24, endianness=(int)4321, red_mask=(int)16711680, green_mask=(int)65280, blue_mask=(int)255, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</td>
365 </tr>
366 <tr>
367 <td><p><span class="term"></span></p></td>
368 <td> video/x-raw-rgb, bpp=(int)24, depth=(int)24, endianness=(int)4321, red_mask=(int)255, green_mask=(int)65280, blue_mask=(int)16711680, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</td>
369 </tr>
370 <tr>
371 <td><p><span class="term"></span></p></td>
372 <td> video/x-raw-rgb, bpp=(int)32, depth=(int)24, endianness=(int)4321, red_mask=(int)16711680, green_mask=(int)65280, blue_mask=(int)255, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</td>
373 </tr>
374 <tr>
375 <td><p><span class="term"></span></p></td>
376 <td> video/x-raw-rgb, bpp=(int)32, depth=(int)24, endianness=(int)4321, red_mask=(int)255, green_mask=(int)65280, blue_mask=(int)16711680, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</td>
377 </tr>
378 <tr>
379 <td><p><span class="term"></span></p></td>
380 <td> video/x-raw-rgb, bpp=(int)32, depth=(int)24, endianness=(int)4321, red_mask=(int)-16777216, green_mask=(int)16711680, blue_mask=(int)65280, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</td>
381 </tr>
382 <tr>
383 <td><p><span class="term"></span></p></td>
384 <td> video/x-raw-rgb, bpp=(int)32, depth=(int)24, endianness=(int)4321, red_mask=(int)65280, green_mask=(int)16711680, blue_mask=(int)-16777216, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</td>
385 </tr>
386 </tbody>
387 </table></div>
388 </div>
389 </div>
390 <p>
391 </p>
392 </div>
393 <div class="refsect1">
394 <a name="gst-plugins-good-plugins-videomixer.details"></a><h2>Details</h2>
395 <div class="refsect2">
396 <a name="GstVideoMixer-struct"></a><h3>struct GstVideoMixer</h3>
397 <pre class="programlisting">struct GstVideoMixer;</pre>
398 <p>
399 The opaque <a class="link" href="gst-plugins-good-plugins-videomixer.html#GstVideoMixer"><span class="type">GstVideoMixer</span></a> structure.
400 </p>
401 </div>
402 <hr>
403 <div class="refsect2">
404 <a name="GstVideoMixerBackground"></a><h3>enum GstVideoMixerBackground</h3>
405 <pre class="programlisting">typedef enum {
406   VIDEO_MIXER_BACKGROUND_CHECKER,
407   VIDEO_MIXER_BACKGROUND_BLACK,
408   VIDEO_MIXER_BACKGROUND_WHITE,
409   VIDEO_MIXER_BACKGROUND_TRANSPARENT,
410 } GstVideoMixerBackground;
411 </pre>
412 <p>
413 The different backgrounds videomixer can blend over.
414 </p>
415 <div class="variablelist"><table border="0">
416 <col align="left" valign="top">
417 <tbody>
418 <tr>
419 <td><p><a name="VIDEO-MIXER-BACKGROUND-CHECKER:CAPS"></a><span class="term"><code class="literal">VIDEO_MIXER_BACKGROUND_CHECKER</code></span></p></td>
420 <td>checker pattern background
421 </td>
422 </tr>
423 <tr>
424 <td><p><a name="VIDEO-MIXER-BACKGROUND-BLACK:CAPS"></a><span class="term"><code class="literal">VIDEO_MIXER_BACKGROUND_BLACK</code></span></p></td>
425 <td>solid color black background
426 </td>
427 </tr>
428 <tr>
429 <td><p><a name="VIDEO-MIXER-BACKGROUND-WHITE:CAPS"></a><span class="term"><code class="literal">VIDEO_MIXER_BACKGROUND_WHITE</code></span></p></td>
430 <td>solid color white background
431 </td>
432 </tr>
433 <tr>
434 <td><p><a name="VIDEO-MIXER-BACKGROUND-TRANSPARENT:CAPS"></a><span class="term"><code class="literal">VIDEO_MIXER_BACKGROUND_TRANSPARENT</code></span></p></td>
435 <td>background is left transparent and layers are composited using "A OVER B" composition rules. This is only applicable to AYUV and ARGB (and variants) as it preserves the alpha channel and allows for further mixing.
436 </td>
437 </tr>
438 </tbody>
439 </table></div>
440 </div>
441 </div>
442 <div class="refsect1">
443 <a name="gst-plugins-good-plugins-videomixer.property-details"></a><h2>Property Details</h2>
444 <div class="refsect2">
445 <a name="GstVideoMixer--background"></a><h3>The <code class="literal">"background"</code> property</h3>
446 <pre class="programlisting">  "background"               <a class="link" href="gst-plugins-good-plugins-videomixer.html#GstVideoMixerBackground" title="enum GstVideoMixerBackground"><span class="type">GstVideoMixerBackground</span></a>  : Read / Write</pre>
447 <p>Background type.</p>
448 <p>Default value: Checker pattern</p>
449 </div>
450 </div>
451 </div>
452 <div class="footer">
453 <hr>
454           Generated by GTK-Doc V1.18</div>
455 </body>
456 </html>