<plugin>
  <name>shapewipe</name>
  <description>Shape Wipe transition filter</description>
  <filename>../../gst/shapewipe/.libs/libgstshapewipe.so</filename>
  <basename>libgstshapewipe.so</basename>
  <version>1.6.1</version>
  <license>LGPL</license>
  <source>gst-plugins-good</source>
  <package>GStreamer Good Plug-ins source release</package>
  <origin>Unknown package origin</origin>
  <elements>
    <element>
      <name>shapewipe</name>
      <longname>Shape Wipe transition filter</longname>
      <class>Filter/Editor/Video</class>
      <description>Adds a shape wipe transition to a video stream</description>
      <author>Sebastian Dröge &lt;sebastian.droege@collabora.co.uk&gt;</author>
      <pads>
        <caps>
          <name>mask_sink</name>
          <direction>sink</direction>
          <presence>always</presence>
          <details>video/x-raw, format=(string)GRAY8, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)0/1; video/x-raw, format=(string)GRAY16_LE, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)0/1</details>
        </caps>
        <caps>
          <name>video_sink</name>
          <direction>sink</direction>
          <presence>always</presence>
          <details>video/x-raw, format=(string){ AYUV, ARGB, BGRA, ABGR, RGBA }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</details>
        </caps>
        <caps>
          <name>src</name>
          <direction>source</direction>
          <presence>always</presence>
          <details>video/x-raw, format=(string){ AYUV, ARGB, BGRA, ABGR, RGBA }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</details>
        </caps>
      </pads>
    </element>
  </elements>
</plugin>