<plugin>
  <name>qt</name>
  <description>Qt gl plugin</description>
  <filename>../../ext/qt/.libs/libgstqmlgl.so</filename>
  <basename>libgstqmlgl.so</basename>
  <version>1.9.2</version>
  <license>LGPL</license>
  <source>gst-plugins-bad</source>
  <package>GStreamer Bad Plug-ins source release</package>
  <origin>Unknown package origin</origin>
  <elements>
    <element>
      <name>qmlglsink</name>
      <longname>Qt Video Sink</longname>
      <class>Sink/Video</class>
      <description>A video sink the renders to a QQuickItem</description>
      <author>Matthew Waters &lt;matthew@centricular.com&gt;</author>
      <pads>
        <caps>
          <name>sink</name>
          <direction>sink</direction>
          <presence>always</presence>
          <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>
        </caps>
      </pads>
    </element>
    <element>
      <name>qmlglsrc</name>
      <longname>Qt Video Source</longname>
      <class>Source/Video</class>
      <description>A video src the grab window from a qml view</description>
      <author>Multimedia Team &lt;shmmmw@freescale.com&gt;</author>
      <pads>
        <caps>
          <name>src</name>
          <direction>source</direction>
          <presence>always</presence>
          <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>
        </caps>
      </pads>
    </element>
  </elements>
</plugin>