<plugin>
  <name>wavenc</name>
  <description>Encode raw audio into WAV</description>
  <filename>../../gst/wavenc/.libs/libgstwavenc.so</filename>
  <basename>libgstwavenc.so</basename>
  <version>1.0.8</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>wavenc</name>
      <longname>WAV audio muxer</longname>
      <class>Codec/Muxer/Audio</class>
      <description>Encode raw audio into WAV</description>
      <author>Iain Holmes &lt;iain@prettypeople.org&gt;</author>
      <pads>
        <caps>
          <name>sink</name>
          <direction>sink</direction>
          <presence>always</presence>
          <details>audio/x-raw, rate=(int)[ 1, 2147483647 ], channels=(int)1, format=(string){ S32LE, S24LE, S16LE, U8, F32LE, F64LE }, layout=(string)interleaved; audio/x-raw, rate=(int)[ 1, 2147483647 ], channels=(int)2, channel-mask=(bitmask)0x0000000000000003, format=(string){ S32LE, S24LE, S16LE, U8, F32LE, F64LE }, layout=(string)interleaved; audio/x-alaw, rate=(int)[ 8000, 192000 ], channels=(int)[ 1, 2 ], width=(int)8, depth=(int)8, signed=(boolean)false; audio/x-mulaw, rate=(int)[ 8000, 192000 ], channels=(int)[ 1, 2 ], width=(int)8, depth=(int)8, signed=(boolean)false</details>
        </caps>
        <caps>
          <name>src</name>
          <direction>source</direction>
          <presence>always</presence>
          <details>audio/x-wav</details>
        </caps>
      </pads>
    </element>
  </elements>
</plugin>