<plugin>
  <name>isomp4</name>
  <description>ISO base media file format support (mp4, 3gpp, qt, mj2)</description>
  <filename>../../gst/isomp4/.libs/libgstisomp4.so</filename>
  <basename>libgstisomp4.so</basename>
  <version>1.16.0</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>3gppmux</name>
      <longname>3GPP Muxer</longname>
      <class>Codec/Muxer</class>
      <description>Multiplex audio and video into a 3GPP file</description>
      <author>Thiago Sousa Santos &lt;thiagoss@embedded.ufcg.edu.br&gt;</author>
      <pads>
        <caps>
          <name>audio_%u</name>
          <direction>sink</direction>
          <presence>request</presence>
          <details>audio/AMR, rate=(int)8000, channels=(int)[ 1, 2 ]; audio/AMR-WB, rate=(int)16000, channels=(int)[ 1, 2 ]; audio/mpeg, mpegversion=(int)1, layer=(int)3, channels=(int)[ 1, 2 ], rate=(int)[ 1, 2147483647 ]; audio/mpeg, mpegversion=(int)4, stream-format=(string)raw, channels=(int)[ 1, 8 ], rate=(int)[ 1, 2147483647 ]; audio/x-ac3, channels=(int)[ 1, 6 ], rate=(int)[ 1, 2147483647 ]</details>
        </caps>
        <caps>
          <name>subtitle_%u</name>
          <direction>sink</direction>
          <presence>request</presence>
          <details>text/x-raw, format=(string)utf8</details>
        </caps>
        <caps>
          <name>video_%u</name>
          <direction>sink</direction>
          <presence>request</presence>
          <details>video/x-h263, width=(int)[ 16, 2147483647 ], height=(int)[ 16, 2147483647 ]; video/mpeg, mpegversion=(int)4, systemstream=(boolean)false, width=(int)[ 16, 2147483647 ], height=(int)[ 16, 2147483647 ]; video/x-divx, divxversion=(int)5, width=(int)[ 16, 2147483647 ], height=(int)[ 16, 2147483647 ]; video/x-h264, stream-format=(string)avc, alignment=(string)au, width=(int)[ 16, 2147483647 ], height=(int)[ 16, 2147483647 ]</details>
        </caps>
        <caps>
          <name>src</name>
          <direction>source</direction>
          <presence>always</presence>
          <details>video/quicktime, variant=(string)3gpp</details>
        </caps>
      </pads>
    </element>
    <element>
      <name>ismlmux</name>
      <longname>ISML Muxer</longname>
      <class>Codec/Muxer</class>
      <description>Multiplex audio and video into a ISML file</description>
      <author>Thiago Sousa Santos &lt;thiagoss@embedded.ufcg.edu.br&gt;</author>
      <pads>
        <caps>
          <name>audio_%u</name>
          <direction>sink</direction>
          <presence>request</presence>
          <details>audio/mpeg, mpegversion=(int)1, layer=(int)3, channels=(int)[ 1, 2 ], rate=(int)[ 1, 2147483647 ]; audio/mpeg, mpegversion=(int)4, stream-format=(string)raw, channels=(int)[ 1, 8 ], rate=(int)[ 1, 2147483647 ]</details>
        </caps>
        <caps>
          <name>video_%u</name>
          <direction>sink</direction>
          <presence>request</presence>
          <details>video/mpeg, mpegversion=(int)4, systemstream=(boolean)false, width=(int)[ 16, 2147483647 ], height=(int)[ 16, 2147483647 ]; video/x-divx, divxversion=(int)5, width=(int)[ 16, 2147483647 ], height=(int)[ 16, 2147483647 ]; video/x-h264, stream-format=(string)avc, alignment=(string)au, width=(int)[ 16, 2147483647 ], height=(int)[ 16, 2147483647 ]</details>
        </caps>
        <caps>
          <name>src</name>
          <direction>source</direction>
          <presence>always</presence>
          <details>video/quicktime, variant=(string)iso-fragmented</details>
        </caps>
      </pads>
    </element>
    <element>
      <name>mj2mux</name>
      <longname>MJ2 Muxer</longname>
      <class>Codec/Muxer</class>
      <description>Multiplex audio and video into a MJ2 file</description>
      <author>Thiago Sousa Santos &lt;thiagoss@embedded.ufcg.edu.br&gt;</author>
      <pads>
        <caps>
          <name>audio_%u</name>
          <direction>sink</direction>
          <presence>request</presence>
          <details>audio/x-raw, format=(string){ S16LE, S16BE, S8, U8 }, layout=(string)interleaved, channels=(int)[ 1, 2 ], rate=(int)[ 1, 2147483647 ]</details>
        </caps>
        <caps>
          <name>video_%u</name>
          <direction>sink</direction>
          <presence>request</presence>
          <details>image/x-j2c, width=(int)[ 16, 2147483647 ], height=(int)[ 16, 2147483647 ]; image/x-jpc, width=(int)[ 16, 2147483647 ], height=(int)[ 16, 2147483647 ]</details>
        </caps>
        <caps>
          <name>src</name>
          <direction>source</direction>
          <presence>always</presence>
          <details>video/mj2</details>
        </caps>
      </pads>
    </element>
    <element>
      <name>mp4mux</name>
      <longname>MP4 Muxer</longname>
      <class>Codec/Muxer</class>
      <description>Multiplex audio and video into a MP4 file</description>
      <author>Thiago Sousa Santos &lt;thiagoss@embedded.ufcg.edu.br&gt;</author>
      <pads>
        <caps>
          <name>audio_%u</name>
          <direction>sink</direction>
          <presence>request</presence>
          <details>audio/mpeg, mpegversion=(int)1, layer=(int)[ 1, 3 ], channels=(int)[ 1, 2 ], rate=(int)[ 1, 2147483647 ]; audio/mpeg, mpegversion=(int)4, stream-format=(string)raw, channels=(int)[ 1, 8 ], rate=(int)[ 1, 2147483647 ]; audio/x-ac3, channels=(int)[ 1, 6 ], rate=(int)[ 1, 2147483647 ]; audio/x-alac, channels=(int)[ 1, 2 ], rate=(int)[ 1, 2147483647 ]; audio/x-opus, channel-mapping-family=(int)[ 0, 255 ], channels=(int)[ 1, 8 ], rate=(int)[ 1, 2147483647 ]</details>
        </caps>
        <caps>
          <name>subtitle_%u</name>
          <direction>sink</direction>
          <presence>request</presence>
          <details>text/x-raw, format=(string)utf8</details>
        </caps>
        <caps>
          <name>video_%u</name>
          <direction>sink</direction>
          <presence>request</presence>
          <details>video/mpeg, mpegversion=(int)4, systemstream=(boolean)false, width=(int)[ 16, 2147483647 ], height=(int)[ 16, 2147483647 ]; video/x-divx, divxversion=(int)5, width=(int)[ 16, 2147483647 ], height=(int)[ 16, 2147483647 ]; video/x-h264, stream-format=(string)avc, alignment=(string)au, width=(int)[ 16, 2147483647 ], height=(int)[ 16, 2147483647 ]; video/x-h265, stream-format=(string){ hvc1, hev1 }, alignment=(string)au, width=(int)[ 16, 2147483647 ], height=(int)[ 16, 2147483647 ]; video/x-mp4-part, width=(int)[ 16, 2147483647 ], height=(int)[ 16, 2147483647 ]; video/x-av1, width=(int)[ 16, 2147483647 ], height=(int)[ 16, 2147483647 ]</details>
        </caps>
        <caps>
          <name>src</name>
          <direction>source</direction>
          <presence>always</presence>
          <details>video/quicktime, variant=(string)iso</details>
        </caps>
      </pads>
    </element>
    <element>
      <name>qtdemux</name>
      <longname>QuickTime demuxer</longname>
      <class>Codec/Demuxer</class>
      <description>Demultiplex a QuickTime file into audio and video streams</description>
      <author>David Schleef &lt;ds@schleef.org&gt;, Wim Taymans &lt;wim@fluendo.com&gt;</author>
      <pads>
        <caps>
          <name>sink</name>
          <direction>sink</direction>
          <presence>always</presence>
          <details>video/quicktime; video/mj2; audio/x-m4a; application/x-3gp</details>
        </caps>
        <caps>
          <name>audio_%u</name>
          <direction>source</direction>
          <presence>sometimes</presence>
          <details>ANY</details>
        </caps>
        <caps>
          <name>subtitle_%u</name>
          <direction>source</direction>
          <presence>sometimes</presence>
          <details>ANY</details>
        </caps>
        <caps>
          <name>video_%u</name>
          <direction>source</direction>
          <presence>sometimes</presence>
          <details>ANY</details>
        </caps>
      </pads>
    </element>
    <element>
      <name>qtmoovrecover</name>
      <longname>QT Moov Recover</longname>
      <class>Util</class>
      <description>Recovers unfinished qtmux files</description>
      <author>Thiago Santos &lt;thiago.sousa.santos@collabora.co.uk&gt;</author>
      <pads>
      </pads>
    </element>
    <element>
      <name>qtmux</name>
      <longname>QuickTime Muxer</longname>
      <class>Codec/Muxer</class>
      <description>Multiplex audio and video into a QuickTime file</description>
      <author>Thiago Sousa Santos &lt;thiagoss@embedded.ufcg.edu.br&gt;</author>
      <pads>
        <caps>
          <name>audio_%u</name>
          <direction>sink</direction>
          <presence>request</presence>
          <details>audio/x-raw, format=(string){ S32LE, S32BE, S24LE, S24BE, S16LE, S16BE, S8, U8 }, layout=(string)interleaved, channels=(int)[ 1, 2 ], rate=(int)[ 1, 2147483647 ]; audio/x-raw, format=(string){ S32LE, S32BE, S24LE, S24BE, S16LE, S16BE, S8, U8 }, layout=(string)interleaved, channel-mask=(bitmask)0x0000000000000000, channels=(int)[ 1, 16 ], rate=(int)[ 1, 2147483647 ]; audio/mpeg, mpegversion=(int)1, layer=(int)[ 1, 3 ], channels=(int)[ 1, 2 ], rate=(int)[ 1, 2147483647 ]; audio/mpeg, mpegversion=(int)4, stream-format=(string)raw, channels=(int)[ 1, 8 ], rate=(int)[ 1, 2147483647 ]; audio/x-ac3, channels=(int)[ 1, 6 ], rate=(int)[ 1, 2147483647 ]; audio/x-adpcm, layout=(string)dvi, block_align=(int)[ 64, 8096 ], channels=(int)[ 1, 2 ], rate=(int)[ 1, 2147483647 ]; audio/x-alaw, channels=(int)[ 1, 2 ], rate=(int)[ 1, 2147483647 ]; audio/x-mulaw, channels=(int)[ 1, 2 ], rate=(int)[ 1, 2147483647 ]; audio/AMR, rate=(int)8000, channels=(int)[ 1, 2 ]; audio/AMR-WB, rate=(int)16000, channels=(int)[ 1, 2 ]; audio/x-alac, channels=(int)[ 1, 2 ], rate=(int)[ 1, 2147483647 ]; audio/x-opus, channel-mapping-family=(int)[ 0, 255 ], channels=(int)[ 1, 8 ], rate=(int)[ 1, 2147483647 ]</details>
        </caps>
        <caps>
          <name>caption_%u</name>
          <direction>sink</direction>
          <presence>request</presence>
          <details>closedcaption/x-cea-608, format=(string)s334-1a; closedcaption/x-cea-708, format=(string)cdp</details>
        </caps>
        <caps>
          <name>subtitle_%u</name>
          <direction>sink</direction>
          <presence>request</presence>
          <details>text/x-raw, format=(string)utf8</details>
        </caps>
        <caps>
          <name>video_%u</name>
          <direction>sink</direction>
          <presence>request</presence>
          <details>video/x-raw, format=(string){ RGB, UYVY, v210 }, width=(int)[ 16, 2147483647 ], height=(int)[ 16, 2147483647 ]; video/mpeg, mpegversion=(int)4, systemstream=(boolean)false, width=(int)[ 16, 2147483647 ], height=(int)[ 16, 2147483647 ]; video/x-divx, divxversion=(int)5, width=(int)[ 16, 2147483647 ], height=(int)[ 16, 2147483647 ]; video/x-prores, variant=(string){ standard, lt, hq, proxy, 4444, 4444xq }, width=(int)[ 16, 2147483647 ], height=(int)[ 16, 2147483647 ]; video/x-cineform, width=(int)[ 16, 2147483647 ], height=(int)[ 16, 2147483647 ]; video/x-h263, width=(int)[ 16, 2147483647 ], height=(int)[ 16, 2147483647 ]; video/x-h264, stream-format=(string)avc, alignment=(string)au, width=(int)[ 16, 2147483647 ], height=(int)[ 16, 2147483647 ]; video/x-h265, stream-format=(string){ hvc1, hev1 }, alignment=(string)au, width=(int)[ 16, 2147483647 ], height=(int)[ 16, 2147483647 ]; video/x-svq, svqversion=(int)3, width=(int)[ 16, 2147483647 ], height=(int)[ 16, 2147483647 ]; video/x-dv, systemstream=(boolean)false, width=(int)[ 16, 2147483647 ], height=(int)[ 16, 2147483647 ]; image/jpeg, width=(int)[ 16, 2147483647 ], height=(int)[ 16, 2147483647 ]; image/png, width=(int)[ 16, 2147483647 ], height=(int)[ 16, 2147483647 ]; video/x-vp8, width=(int)[ 16, 2147483647 ], height=(int)[ 16, 2147483647 ]; video/x-vp9, width=(int)[ 16, 2147483647 ], height=(int)[ 16, 2147483647 ]; video/x-dirac, width=(int)[ 16, 2147483647 ], height=(int)[ 16, 2147483647 ]; video/x-qt-part, width=(int)[ 16, 2147483647 ], height=(int)[ 16, 2147483647 ]; video/x-av1, width=(int)[ 16, 2147483647 ], height=(int)[ 16, 2147483647 ]</details>
        </caps>
        <caps>
          <name>src</name>
          <direction>source</direction>
          <presence>always</presence>
          <details>video/quicktime, variant=(string)apple; video/quicktime</details>
        </caps>
      </pads>
    </element>
    <element>
      <name>rtpxqtdepay</name>
      <longname>RTP packet depayloader</longname>
      <class>Codec/Depayloader/Network</class>
      <description>Extracts Quicktime audio/video from RTP packets</description>
      <author>Wim Taymans &lt;wim@fluendo.com&gt;</author>
      <pads>
        <caps>
          <name>sink</name>
          <direction>sink</direction>
          <presence>always</presence>
          <details>application/x-rtp, payload=(int)[ 96, 127 ], media=(string){ audio, video }, clock-rate=(int)[ 1, 2147483647 ], encoding-name=(string){ X-QT, X-QUICKTIME }</details>
        </caps>
        <caps>
          <name>src</name>
          <direction>source</direction>
          <presence>always</presence>
          <details>ANY</details>
        </caps>
      </pads>
    </element>
  </elements>
</plugin>