<plugin>
  <name>pulseaudio</name>
  <description>PulseAudio plugin library</description>
  <filename>../../ext/pulse/.libs/libgstpulse.so</filename>
  <basename>libgstpulse.so</basename>
  <version>0.11.90</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>pulsemixer</name>
      <longname>PulseAudio Mixer</longname>
      <class>Generic/Audio</class>
      <description>Control sound input and output levels for PulseAudio</description>
      <author>Lennart Poettering</author>
      <pads>
      </pads>
    </element>
    <element>
      <name>pulsesink</name>
      <longname>PulseAudio Audio Sink</longname>
      <class>Sink/Audio</class>
      <description>Plays audio to a PulseAudio server</description>
      <author>Lennart Poettering</author>
      <pads>
        <caps>
          <name>sink</name>
          <direction>sink</direction>
          <presence>always</presence>
          <details>audio/x-raw, format=(string){ S16LE, S16BE, F32LE, F32BE, S32LE, S32BE, S24LE, S24BE, S24_32LE, S24_32BE, U8 }, layout=(string)interleaved, rate=(int)[ 1, 2147483647 ], channels=(int)[ 1, 32 ]; audio/x-alaw, layout=(string)interleaved, rate=(int)[ 1, 2147483647 ], channels=(int)[ 1, 32 ]; audio/x-mulaw, layout=(string)interleaved, rate=(int)[ 1, 2147483647 ], channels=(int)[ 1, 32 ]; audio/x-ac3, framed=(boolean)true; audio/x-eac3, framed=(boolean)true; audio/x-dts, framed=(boolean)true, block-size=(int){ 512, 1024, 2048 }; audio/mpeg, mpegversion=(int)1, mpegaudioversion=(int)[ 1, 2 ], parsed=(boolean)true</details>
        </caps>
      </pads>
    </element>
    <element>
      <name>pulsesrc</name>
      <longname>PulseAudio Audio Source</longname>
      <class>Source/Audio</class>
      <description>Captures audio from a PulseAudio server</description>
      <author>Lennart Poettering</author>
      <pads>
        <caps>
          <name>src</name>
          <direction>source</direction>
          <presence>always</presence>
          <details>audio/x-raw, format=(string){ S16LE, S16BE, F32LE, F32BE, S32LE, S32BE, U8 }, layout=(string)interleaved, rate=(int)[ 1, 2147483647 ], channels=(int)[ 1, 32 ]; audio/x-alaw, rate=(int)[ 1, 2147483647 ], channels=(int)[ 1, 32 ]; audio/x-mulaw, rate=(int)[ 1, 2147483647 ], channels=(int)[ 1, 32 ]</details>
        </caps>
      </pads>
    </element>
  </elements>
</plugin>