mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-27 04:01:08 +00:00
Add docs for lpwsinc and bpwsinc and integrate them into the build system. While doing that also update all other doc...
Original commit message from CVS: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.signals: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-cdxaparse.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-filter.xml: * docs/plugins/inspect/plugin-freeze.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstrtpmanager.xml: * docs/plugins/inspect/plugin-h264parse.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-musicbrainz.xml: * docs/plugins/inspect/plugin-nsfdec.xml: * docs/plugins/inspect/plugin-replaygain.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spcdec.xml: * docs/plugins/inspect/plugin-spectrum.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-tta.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-xingheader.xml: * docs/plugins/inspect/plugin-xvid.xml: * gst/filter/gstbpwsinc.c: * gst/filter/gstbpwsinc.h: * gst/filter/gstlpwsinc.c: * gst/filter/gstlpwsinc.h: Add docs for lpwsinc and bpwsinc and integrate them into the build system. While doing that also update all other docs via make update in docs/plugins.
This commit is contained in:
parent
55f37f58a7
commit
f944834a11
4 changed files with 57 additions and 3 deletions
|
@ -31,6 +31,30 @@
|
|||
* is probably the bottleneck
|
||||
* - Maybe allow cascading the filter to get a better stopband attenuation.
|
||||
* Can be done by convolving a filter kernel with itself
|
||||
* - Drop the first kernel_length/2 samples and append the same number of
|
||||
* samples on EOS as the first few samples are essentialy zero.
|
||||
*/
|
||||
|
||||
/**
|
||||
* SECTION:element-bpwsinc
|
||||
* @short_description: Windowed Sinc band pass and band reject filter
|
||||
*
|
||||
* <refsect2>
|
||||
* <para>
|
||||
* Attenuates all frequencies outside (bandpass) or inside (bandreject) of a frequency
|
||||
* band. The length parameter controls the rolloff, the window parameter
|
||||
* controls rolloff and stopband attenuation. The Hamming window provides a faster rolloff but a bit
|
||||
* worse stopband attenuation, the other way around for the Blackman window.
|
||||
* </para>
|
||||
* <title>Example launch line</title>
|
||||
* <para>
|
||||
* <programlisting>
|
||||
* gst-launch audiotestsrc freq=1500 ! audioconvert ! bpwsinc mode=band-pass lower-frequency=3000 upper-frequency=10000 length=501 window=blackman ! audioconvert ! alsasink
|
||||
* gst-launch filesrc location="melo1.ogg" ! oggdemux ! vorbisdec ! audioconvert ! bpwsinc mode=band-reject lower-frequency=59 upper-frequency=61 length=10001 window=hamming ! audioconvert ! alsasink
|
||||
* gst-launch audiotestsrc wave=white-noise ! audioconvert ! bpwsinc mode=band-pass lower-frequency=1000 upper-frequency=2000 length=31 ! audioconvert ! alsasink
|
||||
* </programlisting>
|
||||
* </para>
|
||||
* </refsect2>
|
||||
*/
|
||||
|
||||
#ifdef HAVE_CONFIG_H
|
||||
|
@ -49,7 +73,7 @@
|
|||
GST_DEBUG_CATEGORY_STATIC (GST_CAT_DEFAULT);
|
||||
|
||||
static const GstElementDetails bpwsinc_details =
|
||||
GST_ELEMENT_DETAILS ("Band-pass Windowed sinc filter",
|
||||
GST_ELEMENT_DETAILS ("Band-pass and Band-reject Windowed sinc filter",
|
||||
"Filter/Effect/Audio",
|
||||
"Band-pass Windowed sinc filter",
|
||||
"Thomas <thomas@apestaart.org>, "
|
||||
|
@ -134,7 +158,7 @@ gst_bpwsinc_window_get_type (void)
|
|||
" channels = (int) [ 1, MAX ] "
|
||||
|
||||
#define DEBUG_INIT(bla) \
|
||||
GST_DEBUG_CATEGORY_INIT (gst_bpwsinc_debug, "bpwsinc", 0, "Band-pass Windowed sinc filter plugin");
|
||||
GST_DEBUG_CATEGORY_INIT (gst_bpwsinc_debug, "bpwsinc", 0, "Band-pass and Band-reject Windowed sinc filter plugin");
|
||||
|
||||
GST_BOILERPLATE_FULL (GstBPWSinc, gst_bpwsinc, GstAudioFilter,
|
||||
GST_TYPE_AUDIO_FILTER, DEBUG_INIT);
|
||||
|
|
|
@ -60,6 +60,7 @@ typedef void (*GstBPWSincProcessFunc) (GstBPWSinc *, guint8 *, guint8 *, guint);
|
|||
struct _GstBPWSinc {
|
||||
GstAudioFilter element;
|
||||
|
||||
/* < private > */
|
||||
GstBPWSincProcessFunc process;
|
||||
|
||||
gint mode;
|
||||
|
@ -76,6 +77,8 @@ struct _GstBPWSincClass {
|
|||
GstAudioFilterClass parent_class;
|
||||
};
|
||||
|
||||
GType gst_bpwsinc_get_type (void);
|
||||
|
||||
G_END_DECLS
|
||||
|
||||
#endif /* __GST_BPWSINC_H__ */
|
||||
|
|
|
@ -30,7 +30,31 @@
|
|||
* when using FFT convolution as currently the convolution itself
|
||||
* is probably the bottleneck
|
||||
* - Maybe allow cascading the filter to get a better stopband attenuation.
|
||||
* Can be done by convolving a filter kernel with itself.
|
||||
* Can be done by convolving a filter kernel with itself
|
||||
* - Drop the first kernel_length/2 samples and append the same number of
|
||||
* samples on EOS as the first few samples are essentialy zero.
|
||||
*/
|
||||
|
||||
/**
|
||||
* SECTION:element-lpwsinc
|
||||
* @short_description: Windows Sinc low pass and high pass filter
|
||||
*
|
||||
* <refsect2>
|
||||
* <para>
|
||||
* Attenuates all frequencies above the cutoff frequency (low-pass) or all frequencies below the
|
||||
* cutoff frequency (high-pass). The length parameter controls the rolloff, the window parameter
|
||||
* controls rolloff and stopband attenuation. The Hamming window provides a faster rolloff but a bit
|
||||
* worse stopband attenuation, the other way around for the Blackman window.
|
||||
* </para>
|
||||
* <title>Example launch line</title>
|
||||
* <para>
|
||||
* <programlisting>
|
||||
* gst-launch audiotestsrc freq=1500 ! audioconvert ! lpwsinc mode=low-pass frequency=1000 length=501 ! audioconvert ! alsasink
|
||||
* gst-launch filesrc location="melo1.ogg" ! oggdemux ! vorbisdec ! audioconvert ! lpwsinc mode=high-pass frequency=15000 length=501 ! audioconvert ! alsasink
|
||||
* gst-launch audiotestsrc wave=white-noise ! audioconvert ! lpwsinc mode=low-pass frequency=1000 length=10001 window=blackman ! audioconvert ! alsasink
|
||||
* </programlisting>
|
||||
* </para>
|
||||
* </refsect2>
|
||||
*/
|
||||
|
||||
#ifdef HAVE_CONFIG_H
|
||||
|
|
|
@ -60,6 +60,7 @@ typedef void (*GstLPWSincProcessFunc) (GstLPWSinc *, guint8 *, guint8 *, guint);
|
|||
struct _GstLPWSinc {
|
||||
GstAudioFilter element;
|
||||
|
||||
/* < private > */
|
||||
GstLPWSincProcessFunc process;
|
||||
|
||||
gint mode;
|
||||
|
@ -76,6 +77,8 @@ struct _GstLPWSincClass {
|
|||
GstAudioFilterClass parent_class;
|
||||
};
|
||||
|
||||
GType gst_lpwsinc_get_type (void);
|
||||
|
||||
G_END_DECLS
|
||||
|
||||
#endif /* __GST_LPWSINC_H__ */
|
||||
|
|
Loading…
Reference in a new issue