bb24b3cb43c5f85273c455e7b6358c1739c01aed
[platform/upstream/gstreamer.git] / docs / plugins / inspect / plugin-opengl.xml
1 <plugin>
2   <name>opengl</name>
3   <description>OpenGL plugin</description>
4   <filename>../../ext/gl/.libs/libgstopengl.so</filename>
5   <basename>libgstopengl.so</basename>
6   <version>1.9.90</version>
7   <license>LGPL</license>
8   <source>gst-plugins-bad</source>
9   <package>GStreamer Bad Plug-ins source release</package>
10   <origin>Unknown package origin</origin>
11   <elements>
12     <element>
13       <name>glcolorbalance</name>
14       <longname>Video balance</longname>
15       <class>Filter/Effect/Video</class>
16       <description>Adjusts brightness, contrast, hue, saturation on a video stream</description>
17       <author>Matthew Waters &lt;matthew@centricular.com&gt;</author>
18       <pads>
19         <caps>
20           <name>sink</name>
21           <direction>sink</direction>
22           <presence>always</presence>
23           <details>video/x-raw(ANY), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D; video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D</details>
24         </caps>
25         <caps>
26           <name>src</name>
27           <direction>source</direction>
28           <presence>always</presence>
29           <details>video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D; video/x-raw(ANY), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D</details>
30         </caps>
31       </pads>
32     </element>
33     <element>
34       <name>glcolorconvert</name>
35       <longname>OpenGL color converter</longname>
36       <class>Filter/Converter/Video</class>
37       <description>Converts between color spaces using OpenGL shaders</description>
38       <author>Matthew Waters &lt;matthew@centricular.com&gt;</author>
39       <pads>
40         <caps>
41           <name>sink</name>
42           <direction>sink</direction>
43           <presence>always</presence>
44           <details>video/x-raw(memory:GLMemory), format=(string){ RGBA, RGB, RGBx, BGR, BGRx, BGRA, xRGB, xBGR, ARGB, ABGR, Y444, I420, YV12, Y42B, Y41B, NV12, NV21, YUY2, UYVY, AYUV, GRAY8, GRAY16_LE, GRAY16_BE, RGB16, BGR16 }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string){ 2D, rectangle, external-oes }; video/x-raw(memory:GLMemory, meta:GstVideoOverlayComposition), format=(string){ RGBA, RGB, RGBx, BGR, BGRx, BGRA, xRGB, xBGR, ARGB, ABGR, Y444, I420, YV12, Y42B, Y41B, NV12, NV21, YUY2, UYVY, AYUV, GRAY8, GRAY16_LE, GRAY16_BE, RGB16, BGR16 }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string){ 2D, rectangle, external-oes }</details>
45         </caps>
46         <caps>
47           <name>src</name>
48           <direction>source</direction>
49           <presence>always</presence>
50           <details>video/x-raw(memory:GLMemory), format=(string){ RGBA, RGB, RGBx, BGR, BGRx, BGRA, xRGB, xBGR, ARGB, ABGR, Y444, I420, YV12, Y42B, Y41B, NV12, NV21, YUY2, UYVY, AYUV, GRAY8, GRAY16_LE, GRAY16_BE, RGB16, BGR16 }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string){ 2D, rectangle, external-oes }; video/x-raw(memory:GLMemory, meta:GstVideoOverlayComposition), format=(string){ RGBA, RGB, RGBx, BGR, BGRx, BGRA, xRGB, xBGR, ARGB, ABGR, Y444, I420, YV12, Y42B, Y41B, NV12, NV21, YUY2, UYVY, AYUV, GRAY8, GRAY16_LE, GRAY16_BE, RGB16, BGR16 }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string){ 2D, rectangle, external-oes }</details>
51         </caps>
52       </pads>
53     </element>
54     <element>
55       <name>glcolorscale</name>
56       <longname>OpenGL color scale</longname>
57       <class>Filter/Effect/Video</class>
58       <description>Colorspace converter and video scaler</description>
59       <author>Julien Isorce &lt;julien.isorce@gmail.com&gt;
60 Matthew Waters &lt;matthew@centricular.com&gt;</author>
61       <pads>
62         <caps>
63           <name>sink</name>
64           <direction>sink</direction>
65           <presence>always</presence>
66           <details>video/x-raw(ANY), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D; video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D</details>
67         </caps>
68         <caps>
69           <name>src</name>
70           <direction>source</direction>
71           <presence>always</presence>
72           <details>video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D; video/x-raw(ANY), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D</details>
73         </caps>
74       </pads>
75     </element>
76     <element>
77       <name>gldeinterlace</name>
78       <longname>OpenGL deinterlacing filter</longname>
79       <class>Deinterlace</class>
80       <description>Deinterlacing based on fragment shaders</description>
81       <author>Julien Isorce &lt;julien.isorce@mail.com&gt;</author>
82       <pads>
83         <caps>
84           <name>sink</name>
85           <direction>sink</direction>
86           <presence>always</presence>
87           <details>video/x-raw(ANY), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D; video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D</details>
88         </caps>
89         <caps>
90           <name>src</name>
91           <direction>source</direction>
92           <presence>always</presence>
93           <details>video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D; video/x-raw(ANY), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D</details>
94         </caps>
95       </pads>
96     </element>
97     <element>
98       <name>gldifferencematte</name>
99       <longname>Gstreamer OpenGL DifferenceMatte</longname>
100       <class>Filter/Effect/Video</class>
101       <description>Saves a background frame and replace it with a pixbuf</description>
102       <author>Filippo Argiolas &lt;filippo.argiolas@gmail.com&gt;</author>
103       <pads>
104         <caps>
105           <name>sink</name>
106           <direction>sink</direction>
107           <presence>always</presence>
108           <details>video/x-raw(ANY), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D; video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D</details>
109         </caps>
110         <caps>
111           <name>src</name>
112           <direction>source</direction>
113           <presence>always</presence>
114           <details>video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D; video/x-raw(ANY), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D</details>
115         </caps>
116       </pads>
117     </element>
118     <element>
119       <name>gldownload</name>
120       <longname>OpenGL uploader</longname>
121       <class>Filter/Video</class>
122       <description>Downloads data from OpenGL</description>
123       <author>Matthew Waters &lt;matthew@centricular.com&gt;</author>
124       <pads>
125         <caps>
126           <name>sink</name>
127           <direction>sink</direction>
128           <presence>always</presence>
129           <details>video/x-raw(memory:GLMemory); video/x-raw</details>
130         </caps>
131         <caps>
132           <name>src</name>
133           <direction>source</direction>
134           <presence>always</presence>
135           <details>video/x-raw; video/x-raw(memory:GLMemory)</details>
136         </caps>
137       </pads>
138     </element>
139     <element>
140       <name>gleffects</name>
141       <longname>Gstreamer OpenGL Effects</longname>
142       <class>Filter/Effect/Video</class>
143       <description>GL Shading Language effects</description>
144       <author>Filippo Argiolas &lt;filippo.argiolas@gmail.com&gt;</author>
145       <pads>
146         <caps>
147           <name>sink</name>
148           <direction>sink</direction>
149           <presence>always</presence>
150           <details>video/x-raw(ANY), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D; video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D</details>
151         </caps>
152         <caps>
153           <name>src</name>
154           <direction>source</direction>
155           <presence>always</presence>
156           <details>video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D; video/x-raw(ANY), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D</details>
157         </caps>
158       </pads>
159     </element>
160     <element>
161       <name>gleffects_blur</name>
162       <longname>Blur with 9x9 separable convolution Effect</longname>
163       <class>Filter/Effect/Video</class>
164       <description>GL Shading Language effects - Blur with 9x9 separable convolution Effect</description>
165       <author>Filippo Argiolas &lt;filippo.argiolas@gmail.com&gt;</author>
166       <pads>
167         <caps>
168           <name>sink</name>
169           <direction>sink</direction>
170           <presence>always</presence>
171           <details>video/x-raw(ANY), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D; video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D</details>
172         </caps>
173         <caps>
174           <name>src</name>
175           <direction>source</direction>
176           <presence>always</presence>
177           <details>video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D; video/x-raw(ANY), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D</details>
178         </caps>
179       </pads>
180     </element>
181     <element>
182       <name>gleffects_bulge</name>
183       <longname>Bulge Effect</longname>
184       <class>Filter/Effect/Video</class>
185       <description>GL Shading Language effects - Bulge Effect</description>
186       <author>Filippo Argiolas &lt;filippo.argiolas@gmail.com&gt;</author>
187       <pads>
188         <caps>
189           <name>sink</name>
190           <direction>sink</direction>
191           <presence>always</presence>
192           <details>video/x-raw(ANY), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D; video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D</details>
193         </caps>
194         <caps>
195           <name>src</name>
196           <direction>source</direction>
197           <presence>always</presence>
198           <details>video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D; video/x-raw(ANY), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D</details>
199         </caps>
200       </pads>
201     </element>
202     <element>
203       <name>gleffects_fisheye</name>
204       <longname>FishEye Effect</longname>
205       <class>Filter/Effect/Video</class>
206       <description>GL Shading Language effects - FishEye Effect</description>
207       <author>Filippo Argiolas &lt;filippo.argiolas@gmail.com&gt;</author>
208       <pads>
209         <caps>
210           <name>sink</name>
211           <direction>sink</direction>
212           <presence>always</presence>
213           <details>video/x-raw(ANY), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D; video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D</details>
214         </caps>
215         <caps>
216           <name>src</name>
217           <direction>source</direction>
218           <presence>always</presence>
219           <details>video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D; video/x-raw(ANY), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D</details>
220         </caps>
221       </pads>
222     </element>
223     <element>
224       <name>gleffects_glow</name>
225       <longname>Glow Lighting Effect</longname>
226       <class>Filter/Effect/Video</class>
227       <description>GL Shading Language effects - Glow Lighting Effect</description>
228       <author>Filippo Argiolas &lt;filippo.argiolas@gmail.com&gt;</author>
229       <pads>
230         <caps>
231           <name>sink</name>
232           <direction>sink</direction>
233           <presence>always</presence>
234           <details>video/x-raw(ANY), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D; video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D</details>
235         </caps>
236         <caps>
237           <name>src</name>
238           <direction>source</direction>
239           <presence>always</presence>
240           <details>video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D; video/x-raw(ANY), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D</details>
241         </caps>
242       </pads>
243     </element>
244     <element>
245       <name>gleffects_heat</name>
246       <longname>Heat Signature Effect</longname>
247       <class>Filter/Effect/Video</class>
248       <description>GL Shading Language effects - Heat Signature Effect</description>
249       <author>Filippo Argiolas &lt;filippo.argiolas@gmail.com&gt;</author>
250       <pads>
251         <caps>
252           <name>sink</name>
253           <direction>sink</direction>
254           <presence>always</presence>
255           <details>video/x-raw(ANY), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D; video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D</details>
256         </caps>
257         <caps>
258           <name>src</name>
259           <direction>source</direction>
260           <presence>always</presence>
261           <details>video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D; video/x-raw(ANY), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D</details>
262         </caps>
263       </pads>
264     </element>
265     <element>
266       <name>gleffects_identity</name>
267       <longname>Do nothing Effect</longname>
268       <class>Filter/Effect/Video</class>
269       <description>GL Shading Language effects - Do nothing Effect</description>
270       <author>Filippo Argiolas &lt;filippo.argiolas@gmail.com&gt;</author>
271       <pads>
272         <caps>
273           <name>sink</name>
274           <direction>sink</direction>
275           <presence>always</presence>
276           <details>video/x-raw(ANY), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D; video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D</details>
277         </caps>
278         <caps>
279           <name>src</name>
280           <direction>source</direction>
281           <presence>always</presence>
282           <details>video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D; video/x-raw(ANY), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D</details>
283         </caps>
284       </pads>
285     </element>
286     <element>
287       <name>gleffects_laplacian</name>
288       <longname>Laplacian Convolution Demo Effect</longname>
289       <class>Filter/Effect/Video</class>
290       <description>GL Shading Language effects - Laplacian Convolution Demo Effect</description>
291       <author>Filippo Argiolas &lt;filippo.argiolas@gmail.com&gt;</author>
292       <pads>
293         <caps>
294           <name>sink</name>
295           <direction>sink</direction>
296           <presence>always</presence>
297           <details>video/x-raw(ANY), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D; video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D</details>
298         </caps>
299         <caps>
300           <name>src</name>
301           <direction>source</direction>
302           <presence>always</presence>
303           <details>video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D; video/x-raw(ANY), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D</details>
304         </caps>
305       </pads>
306     </element>
307     <element>
308       <name>gleffects_lumaxpro</name>
309       <longname>Luma Cross Processing Effect</longname>
310       <class>Filter/Effect/Video</class>
311       <description>GL Shading Language effects - Luma Cross Processing Effect</description>
312       <author>Filippo Argiolas &lt;filippo.argiolas@gmail.com&gt;</author>
313       <pads>
314         <caps>
315           <name>sink</name>
316           <direction>sink</direction>
317           <presence>always</presence>
318           <details>video/x-raw(ANY), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D; video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D</details>
319         </caps>
320         <caps>
321           <name>src</name>
322           <direction>source</direction>
323           <presence>always</presence>
324           <details>video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D; video/x-raw(ANY), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D</details>
325         </caps>
326       </pads>
327     </element>
328     <element>
329       <name>gleffects_mirror</name>
330       <longname>Mirror Effect</longname>
331       <class>Filter/Effect/Video</class>
332       <description>GL Shading Language effects - Mirror Effect</description>
333       <author>Filippo Argiolas &lt;filippo.argiolas@gmail.com&gt;</author>
334       <pads>
335         <caps>
336           <name>sink</name>
337           <direction>sink</direction>
338           <presence>always</presence>
339           <details>video/x-raw(ANY), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D; video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D</details>
340         </caps>
341         <caps>
342           <name>src</name>
343           <direction>source</direction>
344           <presence>always</presence>
345           <details>video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D; video/x-raw(ANY), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D</details>
346         </caps>
347       </pads>
348     </element>
349     <element>
350       <name>gleffects_sepia</name>
351       <longname>Sepia Toning Effect</longname>
352       <class>Filter/Effect/Video</class>
353       <description>GL Shading Language effects - Sepia Toning Effect</description>
354       <author>Filippo Argiolas &lt;filippo.argiolas@gmail.com&gt;</author>
355       <pads>
356         <caps>
357           <name>sink</name>
358           <direction>sink</direction>
359           <presence>always</presence>
360           <details>video/x-raw(ANY), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D; video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D</details>
361         </caps>
362         <caps>
363           <name>src</name>
364           <direction>source</direction>
365           <presence>always</presence>
366           <details>video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D; video/x-raw(ANY), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D</details>
367         </caps>
368       </pads>
369     </element>
370     <element>
371       <name>gleffects_sin</name>
372       <longname>All Grey but Red Effect</longname>
373       <class>Filter/Effect/Video</class>
374       <description>GL Shading Language effects - All Grey but Red Effect</description>
375       <author>Filippo Argiolas &lt;filippo.argiolas@gmail.com&gt;</author>
376       <pads>
377         <caps>
378           <name>sink</name>
379           <direction>sink</direction>
380           <presence>always</presence>
381           <details>video/x-raw(ANY), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D; video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D</details>
382         </caps>
383         <caps>
384           <name>src</name>
385           <direction>source</direction>
386           <presence>always</presence>
387           <details>video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D; video/x-raw(ANY), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D</details>
388         </caps>
389       </pads>
390     </element>
391     <element>
392       <name>gleffects_sobel</name>
393       <longname>Sobel edge detection Effect</longname>
394       <class>Filter/Effect/Video</class>
395       <description>GL Shading Language effects - Sobel edge detection Effect</description>
396       <author>Filippo Argiolas &lt;filippo.argiolas@gmail.com&gt;</author>
397       <pads>
398         <caps>
399           <name>sink</name>
400           <direction>sink</direction>
401           <presence>always</presence>
402           <details>video/x-raw(ANY), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D; video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D</details>
403         </caps>
404         <caps>
405           <name>src</name>
406           <direction>source</direction>
407           <presence>always</presence>
408           <details>video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D; video/x-raw(ANY), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D</details>
409         </caps>
410       </pads>
411     </element>
412     <element>
413       <name>gleffects_square</name>
414       <longname>Square Effect</longname>
415       <class>Filter/Effect/Video</class>
416       <description>GL Shading Language effects - Square Effect</description>
417       <author>Filippo Argiolas &lt;filippo.argiolas@gmail.com&gt;</author>
418       <pads>
419         <caps>
420           <name>sink</name>
421           <direction>sink</direction>
422           <presence>always</presence>
423           <details>video/x-raw(ANY), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D; video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D</details>
424         </caps>
425         <caps>
426           <name>src</name>
427           <direction>source</direction>
428           <presence>always</presence>
429           <details>video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D; video/x-raw(ANY), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D</details>
430         </caps>
431       </pads>
432     </element>
433     <element>
434       <name>gleffects_squeeze</name>
435       <longname>Squeeze Effect</longname>
436       <class>Filter/Effect/Video</class>
437       <description>GL Shading Language effects - Squeeze Effect</description>
438       <author>Filippo Argiolas &lt;filippo.argiolas@gmail.com&gt;</author>
439       <pads>
440         <caps>
441           <name>sink</name>
442           <direction>sink</direction>
443           <presence>always</presence>
444           <details>video/x-raw(ANY), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D; video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D</details>
445         </caps>
446         <caps>
447           <name>src</name>
448           <direction>source</direction>
449           <presence>always</presence>
450           <details>video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D; video/x-raw(ANY), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D</details>
451         </caps>
452       </pads>
453     </element>
454     <element>
455       <name>gleffects_stretch</name>
456       <longname>Stretch Effect</longname>
457       <class>Filter/Effect/Video</class>
458       <description>GL Shading Language effects - Stretch Effect</description>
459       <author>Filippo Argiolas &lt;filippo.argiolas@gmail.com&gt;</author>
460       <pads>
461         <caps>
462           <name>sink</name>
463           <direction>sink</direction>
464           <presence>always</presence>
465           <details>video/x-raw(ANY), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D; video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D</details>
466         </caps>
467         <caps>
468           <name>src</name>
469           <direction>source</direction>
470           <presence>always</presence>
471           <details>video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D; video/x-raw(ANY), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D</details>
472         </caps>
473       </pads>
474     </element>
475     <element>
476       <name>gleffects_tunnel</name>
477       <longname>Light Tunnel Effect</longname>
478       <class>Filter/Effect/Video</class>
479       <description>GL Shading Language effects - Light Tunnel Effect</description>
480       <author>Filippo Argiolas &lt;filippo.argiolas@gmail.com&gt;</author>
481       <pads>
482         <caps>
483           <name>sink</name>
484           <direction>sink</direction>
485           <presence>always</presence>
486           <details>video/x-raw(ANY), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D; video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D</details>
487         </caps>
488         <caps>
489           <name>src</name>
490           <direction>source</direction>
491           <presence>always</presence>
492           <details>video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D; video/x-raw(ANY), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D</details>
493         </caps>
494       </pads>
495     </element>
496     <element>
497       <name>gleffects_twirl</name>
498       <longname>Twirl Effect</longname>
499       <class>Filter/Effect/Video</class>
500       <description>GL Shading Language effects - Twirl Effect</description>
501       <author>Filippo Argiolas &lt;filippo.argiolas@gmail.com&gt;</author>
502       <pads>
503         <caps>
504           <name>sink</name>
505           <direction>sink</direction>
506           <presence>always</presence>
507           <details>video/x-raw(ANY), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D; video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D</details>
508         </caps>
509         <caps>
510           <name>src</name>
511           <direction>source</direction>
512           <presence>always</presence>
513           <details>video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D; video/x-raw(ANY), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D</details>
514         </caps>
515       </pads>
516     </element>
517     <element>
518       <name>gleffects_xpro</name>
519       <longname>Cross Processing Effect</longname>
520       <class>Filter/Effect/Video</class>
521       <description>GL Shading Language effects - Cross Processing Effect</description>
522       <author>Filippo Argiolas &lt;filippo.argiolas@gmail.com&gt;</author>
523       <pads>
524         <caps>
525           <name>sink</name>
526           <direction>sink</direction>
527           <presence>always</presence>
528           <details>video/x-raw(ANY), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D; video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D</details>
529         </caps>
530         <caps>
531           <name>src</name>
532           <direction>source</direction>
533           <presence>always</presence>
534           <details>video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D; video/x-raw(ANY), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D</details>
535         </caps>
536       </pads>
537     </element>
538     <element>
539       <name>gleffects_xray</name>
540       <longname>Glowing negative effect</longname>
541       <class>Filter/Effect/Video</class>
542       <description>GL Shading Language effects - Glowing negative effect</description>
543       <author>Filippo Argiolas &lt;filippo.argiolas@gmail.com&gt;</author>
544       <pads>
545         <caps>
546           <name>sink</name>
547           <direction>sink</direction>
548           <presence>always</presence>
549           <details>video/x-raw(ANY), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D; video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D</details>
550         </caps>
551         <caps>
552           <name>src</name>
553           <direction>source</direction>
554           <presence>always</presence>
555           <details>video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D; video/x-raw(ANY), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D</details>
556         </caps>
557       </pads>
558     </element>
559     <element>
560       <name>glfilterapp</name>
561       <longname>OpenGL application filter</longname>
562       <class>Filter/Effect</class>
563       <description>Use client callbacks to define the scene</description>
564       <author>Julien Isorce &lt;julien.isorce@gmail.com&gt;</author>
565       <pads>
566         <caps>
567           <name>sink</name>
568           <direction>sink</direction>
569           <presence>always</presence>
570           <details>video/x-raw(ANY), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D; video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D</details>
571         </caps>
572         <caps>
573           <name>src</name>
574           <direction>source</direction>
575           <presence>always</presence>
576           <details>video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D; video/x-raw(ANY), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D</details>
577         </caps>
578       </pads>
579     </element>
580     <element>
581       <name>glfilterbin</name>
582       <longname>GL Filter Bin</longname>
583       <class>Filter/Video</class>
584       <description>Infrastructure to process GL textures</description>
585       <author>Matthew Waters &lt;matthew@centricular.com&gt;</author>
586       <pads>
587         <caps>
588           <name>sink</name>
589           <direction>sink</direction>
590           <presence>always</presence>
591           <details>video/x-raw(memory:GLMemory, meta:GstVideoOverlayComposition), format=(string){ RGBA, BGRA, RGBx, BGRx, ARGB, ABGR, xRGB, xBGR, RGB, BGR, RGB16, BGR16, AYUV, I420, YV12, NV12, NV21, YUY2, UYVY, Y41B, Y42B, Y444, GRAY8, GRAY16_LE, GRAY16_BE }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw(memory:SystemMemory, meta:GstVideoOverlayComposition), format=(string){ RGBA, BGRA, RGBx, BGRx, ARGB, ABGR, xRGB, xBGR, RGB, BGR, RGB16, BGR16, AYUV, I420, YV12, NV12, NV21, YUY2, UYVY, Y41B, Y42B, Y444, GRAY8, GRAY16_LE, GRAY16_BE }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw(meta:GstVideoGLTextureUploadMeta, meta:GstVideoOverlayComposition), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw(memory:GLMemory), format=(string){ RGBA, BGRA, RGBx, BGRx, ARGB, ABGR, xRGB, xBGR, RGB, BGR, RGB16, BGR16, AYUV, I420, YV12, NV12, NV21, YUY2, UYVY, Y41B, Y42B, Y444, GRAY8, GRAY16_LE, GRAY16_BE }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw, format=(string){ RGBA, BGRA, RGBx, BGRx, ARGB, ABGR, xRGB, xBGR, RGB, BGR, RGB16, BGR16, AYUV, I420, YV12, NV12, NV21, YUY2, UYVY, Y41B, Y42B, Y444, GRAY8, GRAY16_LE, GRAY16_BE }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw(meta:GstVideoGLTextureUploadMeta), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</details>
592         </caps>
593         <caps>
594           <name>src</name>
595           <direction>source</direction>
596           <presence>always</presence>
597           <details>video/x-raw(ANY)</details>
598         </caps>
599       </pads>
600     </element>
601     <element>
602       <name>glfiltercube</name>
603       <longname>OpenGL cube filter</longname>
604       <class>Filter/Effect/Video</class>
605       <description>Map input texture on the 6 cube faces</description>
606       <author>Julien Isorce &lt;julien.isorce@gmail.com&gt;</author>
607       <pads>
608         <caps>
609           <name>sink</name>
610           <direction>sink</direction>
611           <presence>always</presence>
612           <details>video/x-raw(ANY), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D; video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D</details>
613         </caps>
614         <caps>
615           <name>src</name>
616           <direction>source</direction>
617           <presence>always</presence>
618           <details>video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D; video/x-raw(ANY), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D</details>
619         </caps>
620       </pads>
621     </element>
622     <element>
623       <name>glfilterglass</name>
624       <longname>OpenGL glass filter</longname>
625       <class>Filter/Effect/Video</class>
626       <description>Glass Filter</description>
627       <author>Julien Isorce &lt;julien.isorce@gmail.com&gt;</author>
628       <pads>
629         <caps>
630           <name>sink</name>
631           <direction>sink</direction>
632           <presence>always</presence>
633           <details>video/x-raw(ANY), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D; video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D</details>
634         </caps>
635         <caps>
636           <name>src</name>
637           <direction>source</direction>
638           <presence>always</presence>
639           <details>video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D; video/x-raw(ANY), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D</details>
640         </caps>
641       </pads>
642     </element>
643     <element>
644       <name>glimagesink</name>
645       <longname>GL Sink Bin</longname>
646       <class>Sink/Video</class>
647       <description>Infrastructure to process GL textures</description>
648       <author>Matthew Waters &lt;matthew@centricular.com&gt;</author>
649       <pads>
650         <caps>
651           <name>sink</name>
652           <direction>sink</direction>
653           <presence>always</presence>
654           <details>video/x-raw(memory:GLMemory, meta:GstVideoOverlayComposition), format=(string){ RGBA, BGRA, RGBx, BGRx, ARGB, ABGR, xRGB, xBGR, RGB, BGR, RGB16, BGR16, AYUV, I420, YV12, NV12, NV21, YUY2, UYVY, Y41B, Y42B, Y444, GRAY8, GRAY16_LE, GRAY16_BE }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw(memory:SystemMemory, meta:GstVideoOverlayComposition), format=(string){ RGBA, BGRA, RGBx, BGRx, ARGB, ABGR, xRGB, xBGR, RGB, BGR, RGB16, BGR16, AYUV, I420, YV12, NV12, NV21, YUY2, UYVY, Y41B, Y42B, Y444, GRAY8, GRAY16_LE, GRAY16_BE }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw(meta:GstVideoGLTextureUploadMeta, meta:GstVideoOverlayComposition), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw(memory:GLMemory), format=(string){ RGBA, BGRA, RGBx, BGRx, ARGB, ABGR, xRGB, xBGR, RGB, BGR, RGB16, BGR16, AYUV, I420, YV12, NV12, NV21, YUY2, UYVY, Y41B, Y42B, Y444, GRAY8, GRAY16_LE, GRAY16_BE }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw, format=(string){ RGBA, BGRA, RGBx, BGRx, ARGB, ABGR, xRGB, xBGR, RGB, BGR, RGB16, BGR16, AYUV, I420, YV12, NV12, NV21, YUY2, UYVY, Y41B, Y42B, Y444, GRAY8, GRAY16_LE, GRAY16_BE }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw(meta:GstVideoGLTextureUploadMeta), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</details>
655         </caps>
656       </pads>
657     </element>
658     <element>
659       <name>glimagesinkelement</name>
660       <longname>OpenGL video sink</longname>
661       <class>Sink/Video</class>
662       <description>A videosink based on OpenGL</description>
663       <author>Julien Isorce &lt;julien.isorce@gmail.com&gt;</author>
664       <pads>
665         <caps>
666           <name>sink</name>
667           <direction>sink</direction>
668           <presence>always</presence>
669           <details>video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string){ 2D, external-oes }; video/x-raw(memory:GLMemory, meta:GstVideoOverlayComposition), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string){ 2D, external-oes }</details>
670         </caps>
671       </pads>
672     </element>
673     <element>
674       <name>glmixerbin</name>
675       <longname>OpenGL video_mixer empty bin</longname>
676       <class>Bin/Filter/Effect/Video/Mixer</class>
677       <description>OpenGL video_mixer empty bin</description>
678       <author>Matthew Waters &lt;matthew@centricular.com&gt;</author>
679       <pads>
680         <caps>
681           <name>sink_%u</name>
682           <direction>sink</direction>
683           <presence>request</presence>
684           <details>video/x-raw(memory:GLMemory, meta:GstVideoOverlayComposition), format=(string){ RGBA, BGRA, RGBx, BGRx, ARGB, ABGR, xRGB, xBGR, RGB, BGR, RGB16, BGR16, AYUV, I420, YV12, NV12, NV21, YUY2, UYVY, Y41B, Y42B, Y444, GRAY8, GRAY16_LE, GRAY16_BE }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw(memory:SystemMemory, meta:GstVideoOverlayComposition), format=(string){ RGBA, BGRA, RGBx, BGRx, ARGB, ABGR, xRGB, xBGR, RGB, BGR, RGB16, BGR16, AYUV, I420, YV12, NV12, NV21, YUY2, UYVY, Y41B, Y42B, Y444, GRAY8, GRAY16_LE, GRAY16_BE }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw(meta:GstVideoGLTextureUploadMeta, meta:GstVideoOverlayComposition), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw(memory:GLMemory), format=(string){ RGBA, BGRA, RGBx, BGRx, ARGB, ABGR, xRGB, xBGR, RGB, BGR, RGB16, BGR16, AYUV, I420, YV12, NV12, NV21, YUY2, UYVY, Y41B, Y42B, Y444, GRAY8, GRAY16_LE, GRAY16_BE }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw, format=(string){ RGBA, BGRA, RGBx, BGRx, ARGB, ABGR, xRGB, xBGR, RGB, BGR, RGB16, BGR16, AYUV, I420, YV12, NV12, NV21, YUY2, UYVY, Y41B, Y42B, Y444, GRAY8, GRAY16_LE, GRAY16_BE }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw(meta:GstVideoGLTextureUploadMeta), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</details>
685         </caps>
686         <caps>
687           <name>src</name>
688           <direction>source</direction>
689           <presence>always</presence>
690           <details>video/x-raw(ANY)</details>
691         </caps>
692       </pads>
693     </element>
694     <element>
695       <name>glmosaic</name>
696       <longname>OpenGL mosaic</longname>
697       <class>Filter/Effect/Video</class>
698       <description>OpenGL mosaic</description>
699       <author>Julien Isorce &lt;julien.isorce@gmail.com&gt;</author>
700       <pads>
701         <caps>
702           <name>sink_%u</name>
703           <direction>sink</direction>
704           <presence>request</presence>
705           <details>video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</details>
706         </caps>
707         <caps>
708           <name>src</name>
709           <direction>source</direction>
710           <presence>always</presence>
711           <details>video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</details>
712         </caps>
713       </pads>
714     </element>
715     <element>
716       <name>gloverlay</name>
717       <longname>Gstreamer OpenGL Overlay</longname>
718       <class>Filter/Effect/Video</class>
719       <description>Overlay GL video texture with a JPEG/PNG image</description>
720       <author>Filippo Argiolas &lt;filippo.argiolas@gmail.com&gt;, Matthew Waters &lt;matthew@centricular.com&gt;</author>
721       <pads>
722         <caps>
723           <name>sink</name>
724           <direction>sink</direction>
725           <presence>always</presence>
726           <details>video/x-raw(ANY), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D; video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D</details>
727         </caps>
728         <caps>
729           <name>src</name>
730           <direction>source</direction>
731           <presence>always</presence>
732           <details>video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D; video/x-raw(ANY), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D</details>
733         </caps>
734       </pads>
735     </element>
736     <element>
737       <name>glshader</name>
738       <longname>OpenGL fragment shader filter</longname>
739       <class>Filter/Effect</class>
740       <description>Perform operations with a GLSL shader</description>
741       <author>&lt;matthew@centricular.com&gt;</author>
742       <pads>
743         <caps>
744           <name>sink</name>
745           <direction>sink</direction>
746           <presence>always</presence>
747           <details>video/x-raw(ANY), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D; video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D</details>
748         </caps>
749         <caps>
750           <name>src</name>
751           <direction>source</direction>
752           <presence>always</presence>
753           <details>video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D; video/x-raw(ANY), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D</details>
754         </caps>
755       </pads>
756     </element>
757     <element>
758       <name>glsinkbin</name>
759       <longname>GL Sink Bin</longname>
760       <class>Sink/Video</class>
761       <description>Infrastructure to process GL textures</description>
762       <author>Matthew Waters &lt;matthew@centricular.com&gt;</author>
763       <pads>
764         <caps>
765           <name>sink</name>
766           <direction>sink</direction>
767           <presence>always</presence>
768           <details>video/x-raw(memory:GLMemory, meta:GstVideoOverlayComposition), format=(string){ RGBA, BGRA, RGBx, BGRx, ARGB, ABGR, xRGB, xBGR, RGB, BGR, RGB16, BGR16, AYUV, I420, YV12, NV12, NV21, YUY2, UYVY, Y41B, Y42B, Y444, GRAY8, GRAY16_LE, GRAY16_BE }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw(memory:SystemMemory, meta:GstVideoOverlayComposition), format=(string){ RGBA, BGRA, RGBx, BGRx, ARGB, ABGR, xRGB, xBGR, RGB, BGR, RGB16, BGR16, AYUV, I420, YV12, NV12, NV21, YUY2, UYVY, Y41B, Y42B, Y444, GRAY8, GRAY16_LE, GRAY16_BE }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw(meta:GstVideoGLTextureUploadMeta, meta:GstVideoOverlayComposition), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw(memory:GLMemory), format=(string){ RGBA, BGRA, RGBx, BGRx, ARGB, ABGR, xRGB, xBGR, RGB, BGR, RGB16, BGR16, AYUV, I420, YV12, NV12, NV21, YUY2, UYVY, Y41B, Y42B, Y444, GRAY8, GRAY16_LE, GRAY16_BE }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw, format=(string){ RGBA, BGRA, RGBx, BGRx, ARGB, ABGR, xRGB, xBGR, RGB, BGR, RGB16, BGR16, AYUV, I420, YV12, NV12, NV21, YUY2, UYVY, Y41B, Y42B, Y444, GRAY8, GRAY16_LE, GRAY16_BE }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw(meta:GstVideoGLTextureUploadMeta), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</details>
769         </caps>
770       </pads>
771     </element>
772     <element>
773       <name>glsrcbin</name>
774       <longname>GL Src Bin</longname>
775       <class>Src/Video</class>
776       <description>Infrastructure to process GL textures</description>
777       <author>Matthew Waters &lt;matthew@centricular.com&gt;</author>
778       <pads>
779         <caps>
780           <name>src</name>
781           <direction>source</direction>
782           <presence>always</presence>
783           <details>video/x-raw(ANY)</details>
784         </caps>
785       </pads>
786     </element>
787     <element>
788       <name>glstereomix</name>
789       <longname>OpenGL stereo video combiner</longname>
790       <class>Filter/Effect/Video</class>
791       <description>OpenGL stereo video combiner</description>
792       <author>Jan Schmidt &lt;jan@centricular.com&gt;</author>
793       <pads>
794         <caps>
795           <name>sink_%u</name>
796           <direction>sink</direction>
797           <presence>request</presence>
798           <details>video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D; video/x-raw(meta:GstVideoGLTextureUploadMeta), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw, format=(string){ RGBA, RGB, RGBx, BGR, BGRx, BGRA, xRGB, xBGR, ARGB, ABGR, Y444, I420, YV12, Y42B, Y41B, NV12, NV21, YUY2, UYVY, AYUV, GRAY8, GRAY16_LE, GRAY16_BE, RGB16, BGR16 }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</details>
799         </caps>
800         <caps>
801           <name>src</name>
802           <direction>source</direction>
803           <presence>always</presence>
804           <details>video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D; video/x-raw(meta:GstVideoGLTextureUploadMeta), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw, format=(string){ RGBA, RGB, RGBx, BGR, BGRx, BGRA, xRGB, xBGR, ARGB, ABGR, Y444, I420, YV12, Y42B, Y41B, NV12, NV21, YUY2, UYVY, AYUV, GRAY8, GRAY16_LE, GRAY16_BE, RGB16, BGR16 }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</details>
805         </caps>
806       </pads>
807     </element>
808     <element>
809       <name>glstereosplit</name>
810       <longname>GLStereoSplit</longname>
811       <class>Codec/Converter</class>
812       <description>Splits a stereoscopic stream into separate left/right streams</description>
813       <author>Jan Schmidt &lt;jan@centricular.com&gt;
814 Matthew Waters &lt;matthew@centricular.com&gt;</author>
815       <pads>
816         <caps>
817           <name>sink</name>
818           <direction>sink</direction>
819           <presence>always</presence>
820           <details>video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</details>
821         </caps>
822         <caps>
823           <name>left</name>
824           <direction>source</direction>
825           <presence>always</presence>
826           <details>video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</details>
827         </caps>
828         <caps>
829           <name>right</name>
830           <direction>source</direction>
831           <presence>always</presence>
832           <details>video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</details>
833         </caps>
834       </pads>
835     </element>
836     <element>
837       <name>gltestsrc</name>
838       <longname>Video test source</longname>
839       <class>Source/Video</class>
840       <description>Creates a test video stream</description>
841       <author>David A. Schleef &lt;ds@schleef.org&gt;</author>
842       <pads>
843         <caps>
844           <name>src</name>
845           <direction>source</direction>
846           <presence>always</presence>
847           <details>video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D</details>
848         </caps>
849       </pads>
850     </element>
851     <element>
852       <name>glupload</name>
853       <longname>OpenGL uploader</longname>
854       <class>Filter/Video</class>
855       <description>Uploads data into OpenGL</description>
856       <author>Matthew Waters &lt;matthew@centricular.com&gt;</author>
857       <pads>
858         <caps>
859           <name>sink</name>
860           <direction>sink</direction>
861           <presence>always</presence>
862           <details>video/x-raw(memory:GLMemory, meta:GstVideoOverlayComposition), format=(string){ RGBA, BGRA, RGBx, BGRx, ARGB, ABGR, xRGB, xBGR, RGB, BGR, RGB16, BGR16, AYUV, I420, YV12, NV12, NV21, YUY2, UYVY, Y41B, Y42B, Y444, GRAY8, GRAY16_LE, GRAY16_BE }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw(memory:SystemMemory, meta:GstVideoOverlayComposition), format=(string){ RGBA, BGRA, RGBx, BGRx, ARGB, ABGR, xRGB, xBGR, RGB, BGR, RGB16, BGR16, AYUV, I420, YV12, NV12, NV21, YUY2, UYVY, Y41B, Y42B, Y444, GRAY8, GRAY16_LE, GRAY16_BE }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw(meta:GstVideoGLTextureUploadMeta, meta:GstVideoOverlayComposition), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw(memory:GLMemory), format=(string){ RGBA, BGRA, RGBx, BGRx, ARGB, ABGR, xRGB, xBGR, RGB, BGR, RGB16, BGR16, AYUV, I420, YV12, NV12, NV21, YUY2, UYVY, Y41B, Y42B, Y444, GRAY8, GRAY16_LE, GRAY16_BE }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw, format=(string){ RGBA, BGRA, RGBx, BGRx, ARGB, ABGR, xRGB, xBGR, RGB, BGR, RGB16, BGR16, AYUV, I420, YV12, NV12, NV21, YUY2, UYVY, Y41B, Y42B, Y444, GRAY8, GRAY16_LE, GRAY16_BE }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw(meta:GstVideoGLTextureUploadMeta), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</details>
863         </caps>
864         <caps>
865           <name>src</name>
866           <direction>source</direction>
867           <presence>always</presence>
868           <details>video/x-raw(ANY)</details>
869         </caps>
870       </pads>
871     </element>
872     <element>
873       <name>glvideomixer</name>
874       <longname>OpenGL video_mixer bin</longname>
875       <class>Bin/Filter/Effect/Video/Compositor</class>
876       <description>OpenGL video_mixer bin</description>
877       <author>Matthew Waters &lt;matthew@centricular.com&gt;</author>
878       <pads>
879         <caps>
880           <name>sink_%u</name>
881           <direction>sink</direction>
882           <presence>request</presence>
883           <details>video/x-raw(memory:GLMemory, meta:GstVideoOverlayComposition), format=(string){ RGBA, BGRA, RGBx, BGRx, ARGB, ABGR, xRGB, xBGR, RGB, BGR, RGB16, BGR16, AYUV, I420, YV12, NV12, NV21, YUY2, UYVY, Y41B, Y42B, Y444, GRAY8, GRAY16_LE, GRAY16_BE }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw(memory:SystemMemory, meta:GstVideoOverlayComposition), format=(string){ RGBA, BGRA, RGBx, BGRx, ARGB, ABGR, xRGB, xBGR, RGB, BGR, RGB16, BGR16, AYUV, I420, YV12, NV12, NV21, YUY2, UYVY, Y41B, Y42B, Y444, GRAY8, GRAY16_LE, GRAY16_BE }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw(meta:GstVideoGLTextureUploadMeta, meta:GstVideoOverlayComposition), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw(memory:GLMemory), format=(string){ RGBA, BGRA, RGBx, BGRx, ARGB, ABGR, xRGB, xBGR, RGB, BGR, RGB16, BGR16, AYUV, I420, YV12, NV12, NV21, YUY2, UYVY, Y41B, Y42B, Y444, GRAY8, GRAY16_LE, GRAY16_BE }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw, format=(string){ RGBA, BGRA, RGBx, BGRx, ARGB, ABGR, xRGB, xBGR, RGB, BGR, RGB16, BGR16, AYUV, I420, YV12, NV12, NV21, YUY2, UYVY, Y41B, Y42B, Y444, GRAY8, GRAY16_LE, GRAY16_BE }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw(meta:GstVideoGLTextureUploadMeta), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</details>
884         </caps>
885         <caps>
886           <name>src</name>
887           <direction>source</direction>
888           <presence>always</presence>
889           <details>video/x-raw(ANY)</details>
890         </caps>
891       </pads>
892     </element>
893     <element>
894       <name>glvideomixerelement</name>
895       <longname>OpenGL video_mixer</longname>
896       <class>Filter/Effect/Video/Compositor</class>
897       <description>OpenGL video_mixer</description>
898       <author>Matthew Waters &lt;matthew@centricular.com&gt;</author>
899       <pads>
900         <caps>
901           <name>sink_%u</name>
902           <direction>sink</direction>
903           <presence>request</presence>
904           <details>video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</details>
905         </caps>
906         <caps>
907           <name>src</name>
908           <direction>source</direction>
909           <presence>always</presence>
910           <details>video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</details>
911         </caps>
912       </pads>
913     </element>
914     <element>
915       <name>glviewconvert</name>
916       <longname>OpenGL Multiview/3D conversion filter</longname>
917       <class>Filter</class>
918       <description>Convert stereoscopic/multiview video formats</description>
919       <author>Jan Schmidt &lt;jan@centricular.com&gt;
920 Matthew Waters &lt;matthew@centricular.com&gt;</author>
921       <pads>
922         <caps>
923           <name>sink</name>
924           <direction>sink</direction>
925           <presence>always</presence>
926           <details>video/x-raw(ANY), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D; video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D</details>
927         </caps>
928         <caps>
929           <name>src</name>
930           <direction>source</direction>
931           <presence>always</presence>
932           <details>video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D; video/x-raw(ANY), format=(string)RGBA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], texture-target=(string)2D</details>
933         </caps>
934       </pads>
935     </element>
936   </elements>
937 </plugin>