Commit 842451a7 authored by Sebastian Dröge's avatar Sebastian Dröge 🍵

gst/audiofx/: Add Chebyshev lowpass/highpass and bandpass/bandreject elements.

Original commit message from CVS:
reviewed by: Stefan Kost  <ensonic@users.sf.net>
* gst/audiofx/Makefile.am:
* gst/audiofx/audiochebyshevfreqband.c:
(gst_audio_chebyshev_freq_band_mode_get_type),
(gst_audio_chebyshev_freq_band_base_init),
(gst_audio_chebyshev_freq_band_dispose),
(gst_audio_chebyshev_freq_band_class_init),
(gst_audio_chebyshev_freq_band_init),
(generate_biquad_coefficients), (calculate_gain),
(generate_coefficients),
(gst_audio_chebyshev_freq_band_set_property),
(gst_audio_chebyshev_freq_band_get_property),
(gst_audio_chebyshev_freq_band_setup), (process), (process_64),
(process_32), (gst_audio_chebyshev_freq_band_transform_ip),
(gst_audio_chebyshev_freq_band_start):
* gst/audiofx/audiochebyshevfreqband.h:
* gst/audiofx/audiochebyshevfreqlimit.c:
(gst_audio_chebyshev_freq_limit_mode_get_type),
(gst_audio_chebyshev_freq_limit_base_init),
(gst_audio_chebyshev_freq_limit_dispose),
(gst_audio_chebyshev_freq_limit_class_init),
(gst_audio_chebyshev_freq_limit_init),
(generate_biquad_coefficients), (calculate_gain),
(generate_coefficients),
(gst_audio_chebyshev_freq_limit_set_property),
(gst_audio_chebyshev_freq_limit_get_property),
(gst_audio_chebyshev_freq_limit_setup), (process), (process_64),
(process_32), (gst_audio_chebyshev_freq_limit_transform_ip),
(gst_audio_chebyshev_freq_limit_start):
* gst/audiofx/audiochebyshevfreqlimit.h:
* gst/audiofx/audiofx.c: (plugin_init):
Add Chebyshev lowpass/highpass and bandpass/bandreject elements.
Fixes #464800.
* tests/check/Makefile.am:
* tests/check/elements/.cvsignore:
* tests/check/elements/audiochebyshevfreqband.c:
(setup_audiochebyshevfreqband), (cleanup_audiochebyshevfreqband),
(GST_START_TEST), (audiochebyshevfreqband_suite), (main):
* tests/check/elements/audiochebyshevfreqlimit.c:
(setup_audiochebyshevfreqlimit), (cleanup_audiochebyshevfreqlimit),
(GST_START_TEST), (audiochebyshevfreqlimit_suite), (main):
Add unit tests for the chebyshev filters.
* docs/plugins/Makefile.am:
* docs/plugins/gst-plugins-good-plugins-docs.sgml:
* docs/plugins/gst-plugins-good-plugins-sections.txt:
* docs/plugins/gst-plugins-good-plugins.args:
* docs/plugins/inspect/plugin-1394.xml:
* docs/plugins/inspect/plugin-audiofx.xml:
* docs/plugins/inspect/plugin-dv.xml:
* docs/plugins/inspect/plugin-flac.xml:
* docs/plugins/inspect/plugin-jpeg.xml:
* docs/plugins/inspect/plugin-png.xml:
* docs/plugins/inspect/plugin-rtp.xml:
* docs/plugins/inspect/plugin-shout2send.xml:
* docs/plugins/inspect/plugin-wavpack.xml:
And add docs for the chebyshev filters. While doing
that also run make update in docs/plugins.
parent 22bcaa90
2007-08-16 Sebastian Dröge <slomo@circular-chaos.org>
reviewed by: Stefan Kost <ensonic@users.sf.net>
* gst/audiofx/Makefile.am:
* gst/audiofx/audiochebyshevfreqband.c:
(gst_audio_chebyshev_freq_band_mode_get_type),
(gst_audio_chebyshev_freq_band_base_init),
(gst_audio_chebyshev_freq_band_dispose),
(gst_audio_chebyshev_freq_band_class_init),
(gst_audio_chebyshev_freq_band_init),
(generate_biquad_coefficients), (calculate_gain),
(generate_coefficients),
(gst_audio_chebyshev_freq_band_set_property),
(gst_audio_chebyshev_freq_band_get_property),
(gst_audio_chebyshev_freq_band_setup), (process), (process_64),
(process_32), (gst_audio_chebyshev_freq_band_transform_ip),
(gst_audio_chebyshev_freq_band_start):
* gst/audiofx/audiochebyshevfreqband.h:
* gst/audiofx/audiochebyshevfreqlimit.c:
(gst_audio_chebyshev_freq_limit_mode_get_type),
(gst_audio_chebyshev_freq_limit_base_init),
(gst_audio_chebyshev_freq_limit_dispose),
(gst_audio_chebyshev_freq_limit_class_init),
(gst_audio_chebyshev_freq_limit_init),
(generate_biquad_coefficients), (calculate_gain),
(generate_coefficients),
(gst_audio_chebyshev_freq_limit_set_property),
(gst_audio_chebyshev_freq_limit_get_property),
(gst_audio_chebyshev_freq_limit_setup), (process), (process_64),
(process_32), (gst_audio_chebyshev_freq_limit_transform_ip),
(gst_audio_chebyshev_freq_limit_start):
* gst/audiofx/audiochebyshevfreqlimit.h:
* gst/audiofx/audiofx.c: (plugin_init):
Add Chebyshev lowpass/highpass and bandpass/bandreject elements.
Fixes #464800.
* tests/check/Makefile.am:
* tests/check/elements/.cvsignore:
* tests/check/elements/audiochebyshevfreqband.c:
(setup_audiochebyshevfreqband), (cleanup_audiochebyshevfreqband),
(GST_START_TEST), (audiochebyshevfreqband_suite), (main):
* tests/check/elements/audiochebyshevfreqlimit.c:
(setup_audiochebyshevfreqlimit), (cleanup_audiochebyshevfreqlimit),
(GST_START_TEST), (audiochebyshevfreqlimit_suite), (main):
Add unit tests for the chebyshev filters.
* docs/plugins/Makefile.am:
* docs/plugins/gst-plugins-good-plugins-docs.sgml:
* docs/plugins/gst-plugins-good-plugins-sections.txt:
* docs/plugins/gst-plugins-good-plugins.args:
* docs/plugins/inspect/plugin-1394.xml:
* docs/plugins/inspect/plugin-audiofx.xml:
* docs/plugins/inspect/plugin-dv.xml:
* docs/plugins/inspect/plugin-flac.xml:
* docs/plugins/inspect/plugin-jpeg.xml:
* docs/plugins/inspect/plugin-png.xml:
* docs/plugins/inspect/plugin-rtp.xml:
* docs/plugins/inspect/plugin-shout2send.xml:
* docs/plugins/inspect/plugin-wavpack.xml:
And add docs for the chebyshev filters. While doing
that also run make update in docs/plugins.
2007-08-16 Stefan Kost <ensonic@users.sf.net> 2007-08-16 Stefan Kost <ensonic@users.sf.net>
* ext/annodex/gstcmmltag.c: * ext/annodex/gstcmmltag.c:
......
...@@ -100,6 +100,8 @@ EXTRA_HFILES = \ ...@@ -100,6 +100,8 @@ EXTRA_HFILES = \
$(top_srcdir)/gst/audiofx/audiodynamic.h \ $(top_srcdir)/gst/audiofx/audiodynamic.h \
$(top_srcdir)/gst/audiofx/audioinvert.h \ $(top_srcdir)/gst/audiofx/audioinvert.h \
$(top_srcdir)/gst/audiofx/audiopanorama.h \ $(top_srcdir)/gst/audiofx/audiopanorama.h \
$(top_srcdir)/gst/audiofx/audiochebyshevfreqlimit.h \
$(top_srcdir)/gst/audiofx/audiochebyshevfreqband.h \
$(top_srcdir)/gst/autodetect/gstautoaudiosink.h \ $(top_srcdir)/gst/autodetect/gstautoaudiosink.h \
$(top_srcdir)/gst/autodetect/gstautovideosink.h \ $(top_srcdir)/gst/autodetect/gstautovideosink.h \
$(top_srcdir)/gst/avi/gstavidemux.h \ $(top_srcdir)/gst/avi/gstavidemux.h \
......
...@@ -19,6 +19,8 @@ ...@@ -19,6 +19,8 @@
<xi:include href="xml/element-audioinvert.xml" /> <xi:include href="xml/element-audioinvert.xml" />
<xi:include href="xml/element-audioamplify.xml" /> <xi:include href="xml/element-audioamplify.xml" />
<xi:include href="xml/element-audiodynamic.xml" /> <xi:include href="xml/element-audiodynamic.xml" />
<xi:include href="xml/element-audiochebyshevfreqlimit.xml" />
<xi:include href="xml/element-audiochebyshevfreqband.xml" />
<xi:include href="xml/element-autoaudiosink.xml" /> <xi:include href="xml/element-autoaudiosink.xml" />
<xi:include href="xml/element-autovideosink.xml" /> <xi:include href="xml/element-autovideosink.xml" />
<xi:include href="xml/element-avidemux.xml" /> <xi:include href="xml/element-avidemux.xml" />
......
...@@ -81,6 +81,26 @@ GST_AUDIO_DYNAMIC ...@@ -81,6 +81,26 @@ GST_AUDIO_DYNAMIC
GST_AUDIO_DYNAMIC_CLASS GST_AUDIO_DYNAMIC_CLASS
</SECTION> </SECTION>
<SECTION>
<FILE>element-audiochebyshevfreqlimit</FILE>
<TITLE>audiochebyshevfreqlimit</TITLE>
GstAudioChebyshevFreqLimit
<SUBSECTION Standard>
GstAudioChebyshevFreqLimitClass
GST_AUDIO_CHEBYSHEV_FREQ_LIMIT
GST_AUDIO_CHEBYSHEV_FREQ_LIMIT_CLASS
</SECTION>
<SECTION>
<FILE>element-audiochebyshevfreqband</FILE>
<TITLE>audiochebyshevfreqband</TITLE>
GstAudioChebyshevFreqBand
<SUBSECTION Standard>
GstAudioChebyshevFreqBandClass
GST_AUDIO_CHEBYSHEV_FREQ_BAND
GST_AUDIO_CHEBYSHEV_FREQ_BAND_CLASS
</SECTION>
<SECTION> <SECTION>
<FILE>element-autoaudiosink</FILE> <FILE>element-autoaudiosink</FILE>
<TITLE>autoaudiosink</TITLE> <TITLE>autoaudiosink</TITLE>
......
...@@ -401,21 +401,21 @@ ...@@ -401,21 +401,21 @@
<ARG> <ARG>
<NAME>GstVertigoTV::speed</NAME> <NAME>GstVertigoTV::speed</NAME>
<TYPE>gfloat</TYPE> <TYPE>gfloat</TYPE>
<RANGE>[0,01,100]</RANGE> <RANGE>[0.01,100]</RANGE>
<FLAGS>rw</FLAGS> <FLAGS>rw</FLAGS>
<NICK>Speed</NICK> <NICK>Speed</NICK>
<BLURB>Control the speed of movement.</BLURB> <BLURB>Control the speed of movement.</BLURB>
<DEFAULT>0,02</DEFAULT> <DEFAULT>0.02</DEFAULT>
</ARG> </ARG>
<ARG> <ARG>
<NAME>GstVertigoTV::zoom-speed</NAME> <NAME>GstVertigoTV::zoom-speed</NAME>
<TYPE>gfloat</TYPE> <TYPE>gfloat</TYPE>
<RANGE>[1,01,1,1]</RANGE> <RANGE>[1.01,1.1]</RANGE>
<FLAGS>rw</FLAGS> <FLAGS>rw</FLAGS>
<NICK>Zoom Speed</NICK> <NICK>Zoom Speed</NICK>
<BLURB>Control the rate of zooming.</BLURB> <BLURB>Control the rate of zooming.</BLURB>
<DEFAULT>1,01</DEFAULT> <DEFAULT>1.01</DEFAULT>
</ARG> </ARG>
<ARG> <ARG>
...@@ -1141,7 +1141,7 @@ ...@@ -1141,7 +1141,7 @@
<ARG> <ARG>
<NAME>GstDV1394Src::port</NAME> <NAME>GstDV1394Src::port</NAME>
<TYPE>gint</TYPE> <TYPE>gint</TYPE>
<RANGE>[G_MAXULONG,16]</RANGE> <RANGE>[-1,16]</RANGE>
<FLAGS>rw</FLAGS> <FLAGS>rw</FLAGS>
<NICK>Port</NICK> <NICK>Port</NICK>
<BLURB>Port number (-1 automatic).</BLURB> <BLURB>Port number (-1 automatic).</BLURB>
...@@ -17241,7 +17241,7 @@ ...@@ -17241,7 +17241,7 @@
<ARG> <ARG>
<NAME>GstGamma::gamma</NAME> <NAME>GstGamma::gamma</NAME>
<TYPE>gdouble</TYPE> <TYPE>gdouble</TYPE>
<RANGE>[0,01,10]</RANGE> <RANGE>[0.01,10]</RANGE>
<FLAGS>rw</FLAGS> <FLAGS>rw</FLAGS>
<NICK>Gamma</NICK> <NICK>Gamma</NICK>
<BLURB>gamma.</BLURB> <BLURB>gamma.</BLURB>
...@@ -17328,3 +17328,113 @@ ...@@ -17328,3 +17328,113 @@
<DEFAULT>2</DEFAULT> <DEFAULT>2</DEFAULT>
</ARG> </ARG>
<ARG>
<NAME>GstAudioChebyshevFreqBand::lower-frequency</NAME>
<TYPE>gfloat</TYPE>
<RANGE>>= 0</RANGE>
<FLAGS>rw</FLAGS>
<NICK>Lower frequency</NICK>
<BLURB>Start frequency of the band (Hz).</BLURB>
<DEFAULT>0</DEFAULT>
</ARG>
<ARG>
<NAME>GstAudioChebyshevFreqBand::mode</NAME>
<TYPE>GstAudioChebyshevFreqBandMode</TYPE>
<RANGE></RANGE>
<FLAGS>rw</FLAGS>
<NICK>Mode</NICK>
<BLURB>Low pass or high pass mode.</BLURB>
<DEFAULT>Band pass (default)</DEFAULT>
</ARG>
<ARG>
<NAME>GstAudioChebyshevFreqBand::poles</NAME>
<TYPE>gint</TYPE>
<RANGE>[4,32]</RANGE>
<FLAGS>rw</FLAGS>
<NICK>Poles</NICK>
<BLURB>Number of poles to use, will be rounded up to the next multiply of four.</BLURB>
<DEFAULT>4</DEFAULT>
</ARG>
<ARG>
<NAME>GstAudioChebyshevFreqBand::ripple</NAME>
<TYPE>gfloat</TYPE>
<RANGE>>= 0</RANGE>
<FLAGS>rw</FLAGS>
<NICK>Ripple</NICK>
<BLURB>Amount of ripple (dB).</BLURB>
<DEFAULT>0.25</DEFAULT>
</ARG>
<ARG>
<NAME>GstAudioChebyshevFreqBand::type</NAME>
<TYPE>gint</TYPE>
<RANGE>[1,2]</RANGE>
<FLAGS>rw</FLAGS>
<NICK>Type</NICK>
<BLURB>Type of the chebychev filter.</BLURB>
<DEFAULT>1</DEFAULT>
</ARG>
<ARG>
<NAME>GstAudioChebyshevFreqBand::upper-frequency</NAME>
<TYPE>gfloat</TYPE>
<RANGE>>= 0</RANGE>
<FLAGS>rw</FLAGS>
<NICK>Upper frequency</NICK>
<BLURB>Stop frequency of the band (Hz).</BLURB>
<DEFAULT>0</DEFAULT>
</ARG>
<ARG>
<NAME>GstAudioChebyshevFreqLimit::cutoff</NAME>
<TYPE>gfloat</TYPE>
<RANGE>>= 0</RANGE>
<FLAGS>rw</FLAGS>
<NICK>Cutoff</NICK>
<BLURB>Cut off frequency (Hz).</BLURB>
<DEFAULT>0</DEFAULT>
</ARG>
<ARG>
<NAME>GstAudioChebyshevFreqLimit::mode</NAME>
<TYPE>GstAudioChebyshevFreqLimitMode</TYPE>
<RANGE></RANGE>
<FLAGS>rw</FLAGS>
<NICK>Mode</NICK>
<BLURB>Low pass or high pass mode.</BLURB>
<DEFAULT>Low pass (default)</DEFAULT>
</ARG>
<ARG>
<NAME>GstAudioChebyshevFreqLimit::poles</NAME>
<TYPE>gint</TYPE>
<RANGE>[2,32]</RANGE>
<FLAGS>rw</FLAGS>
<NICK>Poles</NICK>
<BLURB>Number of poles to use, will be rounded up to the next even number.</BLURB>
<DEFAULT>4</DEFAULT>
</ARG>
<ARG>
<NAME>GstAudioChebyshevFreqLimit::ripple</NAME>
<TYPE>gfloat</TYPE>
<RANGE>>= 0</RANGE>
<FLAGS>rw</FLAGS>
<NICK>Ripple</NICK>
<BLURB>Amount of ripple (dB).</BLURB>
<DEFAULT>0.25</DEFAULT>
</ARG>
<ARG>
<NAME>GstAudioChebyshevFreqLimit::type</NAME>
<TYPE>gint</TYPE>
<RANGE>[1,2]</RANGE>
<FLAGS>rw</FLAGS>
<NICK>Type</NICK>
<BLURB>Type of the chebychev filter.</BLURB>
<DEFAULT>1</DEFAULT>
</ARG>
...@@ -3,10 +3,10 @@ ...@@ -3,10 +3,10 @@
<description>Source for DV data via IEEE1394 interface</description> <description>Source for DV data via IEEE1394 interface</description>
<filename>../../ext/raw1394/.libs/libgst1394.so</filename> <filename>../../ext/raw1394/.libs/libgst1394.so</filename>
<basename>libgst1394.so</basename> <basename>libgst1394.so</basename>
<version>0.10.6</version> <version>0.10.6.1</version>
<license>LGPL</license> <license>LGPL</license>
<source>gst-plugins-good</source> <source>gst-plugins-good</source>
<package>GStreamer Good Plug-ins source release</package> <package>GStreamer Good Plug-ins CVS/prerelease</package>
<origin>Unknown package origin</origin> <origin>Unknown package origin</origin>
<elements> <elements>
<element> <element>
...@@ -18,6 +18,14 @@ ...@@ -18,6 +18,14 @@
Daniel Fischer &lt;dan@f3c.com&gt; Daniel Fischer &lt;dan@f3c.com&gt;
Wim Taymans &lt;wim@fluendo.com&gt; Wim Taymans &lt;wim@fluendo.com&gt;
Zaheer Abbas Merali &lt;zaheerabbas at merali dot org&gt;</author> Zaheer Abbas Merali &lt;zaheerabbas at merali dot org&gt;</author>
<pads>
<caps>
<name>src</name>
<direction>source</direction>
<presence>always</presence>
<details>video/x-dv, format=(string){ NTSC, PAL }, systemstream=(boolean)true</details>
</caps>
</pads>
</element> </element>
</elements> </elements>
</plugin> </plugin>
\ No newline at end of file
...@@ -30,6 +30,48 @@ ...@@ -30,6 +30,48 @@
</caps> </caps>
</pads> </pads>
</element> </element>
<element>
<name>audiochebyshevfreqband</name>
<longname>AudioChebyshevFreqBand</longname>
<class>Filter/Effect/Audio</class>
<description>Chebyshev band pass and band reject filter</description>
<author>Sebastian Dröge &lt;slomo@circular-chaos.org&gt;</author>
<pads>
<caps>
<name>src</name>
<direction>source</direction>
<presence>always</presence>
<details>audio/x-raw-float, width=(int){ 32, 64 }, endianness=(int)1234, rate=(int)[ 1, 2147483647 ], channels=(int)[ 1, 2147483647 ]</details>
</caps>
<caps>
<name>sink</name>
<direction>sink</direction>
<presence>always</presence>
<details>audio/x-raw-float, width=(int){ 32, 64 }, endianness=(int)1234, rate=(int)[ 1, 2147483647 ], channels=(int)[ 1, 2147483647 ]</details>
</caps>
</pads>
</element>
<element>
<name>audiochebyshevfreqlimit</name>
<longname>AudioChebyshevFreqLimit</longname>
<class>Filter/Effect/Audio</class>
<description>Chebyshev low pass and high pass filter</description>
<author>Sebastian Dröge &lt;slomo@circular-chaos.org&gt;</author>
<pads>
<caps>
<name>src</name>
<direction>source</direction>
<presence>always</presence>
<details>audio/x-raw-float, width=(int){ 32, 64 }, endianness=(int)1234, rate=(int)[ 1, 2147483647 ], channels=(int)[ 1, 2147483647 ]</details>
</caps>
<caps>
<name>sink</name>
<direction>sink</direction>
<presence>always</presence>
<details>audio/x-raw-float, width=(int){ 32, 64 }, endianness=(int)1234, rate=(int)[ 1, 2147483647 ], channels=(int)[ 1, 2147483647 ]</details>
</caps>
</pads>
</element>
<element> <element>
<name>audiodynamic</name> <name>audiodynamic</name>
<longname>AudioDynamic</longname> <longname>AudioDynamic</longname>
......
...@@ -3,10 +3,10 @@ ...@@ -3,10 +3,10 @@
<description>DV demuxer and decoder based on libdv (libdv.sf.net)</description> <description>DV demuxer and decoder based on libdv (libdv.sf.net)</description>
<filename>../../ext/dv/.libs/libgstdv.so</filename> <filename>../../ext/dv/.libs/libgstdv.so</filename>
<basename>libgstdv.so</basename> <basename>libgstdv.so</basename>
<version>0.10.6</version> <version>0.10.6.1</version>
<license>LGPL</license> <license>LGPL</license>
<source>gst-plugins-good</source> <source>gst-plugins-good</source>
<package>GStreamer Good Plug-ins source release</package> <package>GStreamer Good Plug-ins CVS/prerelease</package>
<origin>Unknown package origin</origin> <origin>Unknown package origin</origin>
<elements> <elements>
<element> <element>
...@@ -15,6 +15,20 @@ ...@@ -15,6 +15,20 @@
<class>Codec/Decoder/Video</class> <class>Codec/Decoder/Video</class>
<description>Uses libdv to decode DV video (smpte314) (libdv.sourceforge.net)</description> <description>Uses libdv to decode DV video (smpte314) (libdv.sourceforge.net)</description>
<author>Erik Walthinsen &lt;omega@cse.ogi.edu&gt;,Wim Taymans &lt;wim@fluendo.com&gt;</author> <author>Erik Walthinsen &lt;omega@cse.ogi.edu&gt;,Wim Taymans &lt;wim@fluendo.com&gt;</author>
<pads>
<caps>
<name>sink</name>
<direction>sink</direction>
<presence>always</presence>
<details>video/x-dv, systemstream=(boolean)false</details>
</caps>
<caps>
<name>src</name>
<direction>source</direction>
<presence>always</presence>
<details>video/x-raw-yuv, format=(fourcc)YUY2, width=(int)720, framerate=(fraction)[ 1/1, 60/1 ]; video/x-raw-rgb, bpp=(int)32, depth=(int)24, endianness=(int)4321, red_mask=(int)65280, green_mask=(int)16711680, blue_mask=(int)-16777216, width=(int)720, framerate=(fraction)[ 1/1, 60/1 ]; video/x-raw-rgb, bpp=(int)24, depth=(int)24, endianness=(int)4321, red_mask=(int)16711680, green_mask=(int)65280, blue_mask=(int)255, width=(int)720, framerate=(fraction)[ 1/1, 60/1 ]</details>
</caps>
</pads>
</element> </element>
<element> <element>
<name>dvdemux</name> <name>dvdemux</name>
...@@ -22,6 +36,26 @@ ...@@ -22,6 +36,26 @@
<class>Codec/Demuxer</class> <class>Codec/Demuxer</class>
<description>Uses libdv to separate DV audio from DV video (libdv.sourceforge.net)</description> <description>Uses libdv to separate DV audio from DV video (libdv.sourceforge.net)</description>
<author>Erik Walthinsen &lt;omega@cse.ogi.edu&gt;, Wim Taymans &lt;wim@fluendo.com&gt;</author> <author>Erik Walthinsen &lt;omega@cse.ogi.edu&gt;, Wim Taymans &lt;wim@fluendo.com&gt;</author>
<pads>
<caps>
<name>sink</name>
<direction>sink</direction>
<presence>always</presence>
<details>video/x-dv, systemstream=(boolean)true</details>
</caps>
<caps>
<name>video</name>
<direction>source</direction>
<presence>sometimes</presence>
<details>video/x-dv, systemstream=(boolean)false</details>
</caps>
<caps>
<name>audio</name>
<direction>source</direction>
<presence>sometimes</presence>
<details>audio/x-raw-int, depth=(int)16, width=(int)16, signed=(boolean)true, channels=(int){ 2, 4 }, endianness=(int)1234, rate=(int){ 32000, 44100, 48000 }</details>
</caps>
</pads>
</element> </element>
</elements> </elements>
</plugin> </plugin>
\ No newline at end of file
...@@ -47,7 +47,7 @@ ...@@ -47,7 +47,7 @@
<name>sink</name> <name>sink</name>
<direction>sink</direction> <direction>sink</direction>
<presence>always</presence> <presence>always</presence>
<details>audio/x-raw-int, endianness=(int)1234, signed=(boolean)true, width=(int)16, depth=(int)16, rate=(int)[ 8000, 48000 ], channels=(int)[ 1, 2 ]</details> <details>audio/x-raw-int, endianness=(int)1234, signed=(boolean)true, width=(int)16, depth=(int)16, rate=(int)[ 8000, 96000 ], channels=(int)[ 1, 2 ]</details>
</caps> </caps>
</pads> </pads>
</element> </element>
......
...@@ -16,18 +16,18 @@ ...@@ -16,18 +16,18 @@
<description>Decode images from JPEG format</description> <description>Decode images from JPEG format</description>
<author>Wim Taymans &lt;wim@fluendo.com&gt;</author> <author>Wim Taymans &lt;wim@fluendo.com&gt;</author>
<pads> <pads>
<caps>
<name>sink</name>
<direction>sink</direction>
<presence>always</presence>
<details>image/jpeg, width=(int)[ 16, 4096 ], height=(int)[ 8, 4096 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</details>
</caps>
<caps> <caps>
<name>src</name> <name>src</name>
<direction>source</direction> <direction>source</direction>
<presence>always</presence> <presence>always</presence>
<details>video/x-raw-yuv, format=(fourcc)I420, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</details> <details>video/x-raw-yuv, format=(fourcc)I420, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</details>
</caps> </caps>
<caps>
<name>sink</name>
<direction>sink</direction>
<presence>always</presence>
<details>image/jpeg, width=(int)[ 16, 4096 ], height=(int)[ 8, 4096 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</details>
</caps>
</pads> </pads>
</element> </element>
<element> <element>
...@@ -37,18 +37,18 @@ ...@@ -37,18 +37,18 @@
<description>Encode images in JPEG format</description> <description>Encode images in JPEG format</description>
<author>Wim Taymans &lt;wim.taymans@tvd.be&gt;</author> <author>Wim Taymans &lt;wim.taymans@tvd.be&gt;</author>
<pads> <pads>
<caps>
<name>src</name>
<direction>source</direction>
<presence>always</presence>
<details>image/jpeg, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</details>
</caps>
<caps> <caps>
<name>sink</name> <name>sink</name>
<direction>sink</direction> <direction>sink</direction>
<presence>always</presence> <presence>always</presence>
<details>video/x-raw-yuv, format=(fourcc)I420, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</details> <details>video/x-raw-yuv, format=(fourcc)I420, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</details>
</caps> </caps>
<caps>
<name>src</name>
<direction>source</direction>
<presence>always</presence>
<details>image/jpeg, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</details>
</caps>
</pads> </pads>
</element> </element>
<element> <element>
...@@ -58,18 +58,18 @@ ...@@ -58,18 +58,18 @@
<description>Decode video from Smoke format</description> <description>Decode video from Smoke format</description>
<author>Wim Taymans &lt;wim@fluendo.com&gt;</author> <author>Wim Taymans &lt;wim@fluendo.com&gt;</author>
<pads> <pads>
<caps>
<name>sink</name>
<direction>sink</direction>
<presence>always</presence>
<details>video/x-smoke, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</details>
</caps>
<caps> <caps>
<name>src</name> <name>src</name>
<direction>source</direction> <direction>source</direction>
<presence>always</presence> <presence>always</presence>
<details>video/x-raw-yuv, format=(fourcc)I420, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</details> <details>video/x-raw-yuv, format=(fourcc)I420, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</details>
</caps> </caps>
<caps>
<name>sink</name>
<direction>sink</direction>
<presence>always</presence>
<details>video/x-smoke, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</details>
</caps>
</pads> </pads>
</element> </element>
<element> <element>
...@@ -79,18 +79,18 @@ ...@@ -79,18 +79,18 @@
<description>Encode images into the Smoke format</description> <description>Encode images into the Smoke format</description>
<author>Wim Taymans &lt;wim@fluendo.com&gt;</author> <author>Wim Taymans &lt;wim@fluendo.com&gt;</author>
<pads> <pads>
<caps>
<name>src</name>
<direction>source</direction>
<presence>always</presence>
<details>video/x-smoke, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</details>
</caps>
<caps> <caps>
<name>sink</name> <name>sink</name>
<direction>sink</direction> <direction>sink</direction>
<presence>always</presence> <presence>always</presence>
<details>video/x-raw-yuv, format=(fourcc)I420, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</details> <details>video/x-raw-yuv, format=(fourcc)I420, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</details>
</caps> </caps>
<caps>
<name>src</name>
<direction>source</direction>
<presence>always</presence>
<details>video/x-smoke, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</details>
</caps>
</pads> </pads>
</element> </element>
</elements> </elements>
......
...@@ -16,18 +16,18 @@ ...@@ -16,18 +16,18 @@
<description>Decode a png video frame to a raw image</description> <description>Decode a png video frame to a raw image</description>
<author>Wim Taymans &lt;wim@fluendo.com&gt;</author> <author>Wim Taymans &lt;wim@fluendo.com&gt;</author>
<pads> <pads>
<caps>
<name>sink</name>
<direction>sink</direction>
<presence>always</presence>
<details>image/png</details>
</caps>
<caps> <caps>
<name>src</name> <name>src</name>
<direction>source</direction> <direction>source</direction>
<presence>always</presence> <presence>always</presence>
<details>video/x-raw-rgb, bpp=(int)32, depth=(int)32, endianness=(int)4321, red_mask=(int)-16777216, green_mask=(int)16711680, blue_mask=(int)65280, alpha_mask=(int)255, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-rgb, bpp=(int)24, depth=(int)24, endianness=(int)4321, red_mask=(int)16711680, green_mask=(int)65280, blue_mask=(int)255, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</details> <details>video/x-raw-rgb, bpp=(int)32, depth=(int)32, endianness=(int)4321, red_mask=(int)-16777216, green_mask=(int)16711680, blue_mask=(int)65280, alpha_mask=(int)255, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-rgb, bpp=(int)24, depth=(int)24, endianness=(int)4321, red_mask=(int)16711680, green_mask=(int)65280, blue_mask=(int)255, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</details>
</caps> </caps>
<caps>
<name>sink</name>
<direction>sink</direction>
<presence>always</presence>
<details>image/png</details>
</caps>
</pads> </pads>
</element> </element>
<element> <element>
...@@ -37,18 +37,18 @@ ...@@ -37,18 +37,18 @@
<description>Encode a video frame to a .png image</description> <description>Encode a video frame to a .png image</description>
<author>Jeremy SIMON &lt;jsimon13@yahoo.fr&gt;</author> <author>Jeremy SIMON &lt;jsimon13@yahoo.fr&gt;</author>
<pads> <pads>
<caps>
<name>src</name>
<direction>source</direction>
<presence>always</presence>
<details>image/png, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</details>
</caps>
<caps> <caps>
<name>sink</name> <name>sink</name>
<direction>sink</direction> <direction>sink</direction>
<presence>always</presence> <presence>always</presence>
<details>video/x-raw-rgb, bpp=(int)32, depth=(int)32, endianness=(int)4321, red_mask=(int)-16777216, green_mask=(int)16711680, blue_mask=(int)65280, alpha_mask=(int)255, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-rgb, bpp=(int)24, depth=(int)24, endianness=(int)4321, red_mask=(int)16711680, green_mask=(int)65280, blue_mask=(int)255, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</details> <details>video/x-raw-rgb, bpp=(int)32, depth=(int)32, endianness=(int)4321, red_mask=(int)-16777216, green_mask=(int)16711680, blue_mask=(int)65280, alpha_mask=(int)255, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw-rgb, bpp=(int)24, depth=(int)24, endianness=(int)4321, red_mask=(int)16711680, green_mask=(int)65280, blue_mask=(int)255, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</details>
</caps> </caps>
<caps>
<name>src</name>
<direction>source</direction>
<presence>always</presence>
<details>image/png, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</details>
</caps>
</pads> </pads>
</element> </element>
</elements> </elements>
......
...@@ -137,7 +137,7 @@ ...@@ -137,7 +137,7 @@
</element> </element>
<element> <element>
<name>rtpdepay</name> <name>rtpdepay</name>
<longname>RTP payloader</longname> <longname>RTP depayloader</longname>
<class>Codec/Depayloader/Network</class> <class>Codec/Depayloader/Network</class>
<description>Accepts raw RTP and RTCP packets and sends them forward</description> <description>Accepts raw RTP and RTCP packets and sends them forward</description>
<author>Wim Taymans &lt;wim@fluendo.com&gt;</author> <author>Wim Taymans &lt;wim@fluendo.com&gt;</author>
...@@ -332,7 +332,7 @@ ...@@ -332,7 +332,7 @@
<name>sink</name> <name>sink</name>
<direction>sink</direction> <direction>sink</direction>
<presence>always</presence> <presence>always</presence>
<details>application/x-rtp, media=(string)audio, payload=(int)[ 96, 127 ], clock-rate=(int)8000, encoding-name=(string)ILBC, mode=(int){ 20, 30 }</details> <details>application/x-rtp, media=(string)audio, payload=(int)[ 96, 127 ], clock-rate=(int)8000, encoding-name=(string)ILBC, mode=(string){ 20, 30 }</details>
</caps> </caps>
</pads> </pads>
</element> </element>
...@@ -353,7 +353,7 @@ ...@@ -353,7 +353,7 @@
<name>src</name> <name>src</name>
<direction>source</direction> <direction>source</direction>
<presence>always</presence> <presence>always</presence>
<details>application/x-rtp, media=(string)audio, payload=(int)[ 96, 127 ], clock-rate=(int)8000, encoding-name=(string)ILBC, mode=(int){ 20, 30 }</details> <details>application/x-rtp, media=(string)audio, payload=(int)[ 96, 127 ], clock-rate=(int)8000, encoding-name=(string)ILBC, mode=(string){ 20, 30 }</details>
</caps> </caps>
</pads> </pads>
</element> </element>
...@@ -558,7 +558,7 @@ ...@@ -558,7 +558,7 @@