<plugin>
  <name>videobox</name>
  <description>resizes a video by adding borders or cropping</description>
  <filename>../../gst/videobox/.libs/libgstvideobox.so</filename>
  <basename>libgstvideobox.so</basename>
  <version>1.13.1.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>videobox</name>
      <longname>Video box filter</longname>
      <class>Filter/Effect/Video</class>
      <description>Resizes a video by adding borders or cropping</description>
      <author>Wim Taymans &lt;wim@fluendo.com&gt;</author>
      <pads>
        <caps>
          <name>sink</name>
          <direction>sink</direction>
          <presence>always</presence>
          <details>video/x-raw, format=(string){ AYUV, ARGB, BGRA, ABGR, RGBA, xRGB, BGRx, xBGR, RGBx, RGB, BGR, Y444, Y42B, YUY2, YVYU, UYVY, I420, YV12, Y41B, GRAY8, GRAY16_BE, GRAY16_LE }, 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, xRGB, BGRx, xBGR, RGBx, RGB, BGR, Y444, Y42B, YUY2, YVYU, UYVY, I420, YV12, Y41B, GRAY8, GRAY16_BE, GRAY16_LE }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</details>
        </caps>
      </pads>
    </element>
  </elements>
</plugin>