audiowsincband
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.
This element has the advantage over the Chebyshev bandpass and bandreject filter that it has a much better rolloff when using a larger kernel size and almost linear phase. The only disadvantage is the much slower execution time with larger kernels.
Example launch line
gst-launch-1.0 audiotestsrc freq=1500 ! audioconvert ! audiowsincband mode=band-pass lower-frequency=3000 upper-frequency=10000 length=501 window=blackman ! audioconvert ! alsasink
gst-launch-1.0 filesrc location="melo1.ogg" ! oggdemux ! vorbisdec ! audioconvert ! audiowsincband mode=band-reject lower-frequency=59 upper-frequency=61 length=10001 window=hamming ! audioconvert ! alsasink
gst-launch-1.0 audiotestsrc wave=white-noise ! audioconvert ! audiowsincband mode=band-pass lower-frequency=1000 upper-frequency=2000 length=31 ! audioconvert ! alsasink
Hierarchy
GObject ╰──GInitiallyUnowned ╰──GstObject ╰──GstElement ╰──GstBaseTransform ╰──GstAudioFilter ╰──GstAudioFXBaseFIRFilter ╰──audiowsincband
Factory details
Authors: – Thomas Vander Stichele
Classification: – Filter/Effect/Audio
Rank – none
Plugin – audiofx
Package – GStreamer Good Plug-ins
Pad Templates
sink
audio/x-raw:
format: { F32LE, F64LE }
rate: [ 1, 2147483647 ]
channels: [ 1, 2147483647 ]
layout: interleaved
src
audio/x-raw:
format: { F32LE, F64LE }
rate: [ 1, 2147483647 ]
channels: [ 1, 2147483647 ]
layout: interleaved
Properties
length
“length” gint
Filter kernel length, will be rounded to the next odd number
Flags : Read / Write
Default value : 101
lower-frequency
“lower-frequency” gfloat
Cut-off lower frequency (Hz)
Flags : Read / Write
Default value : 0
mode
“mode” Audio-wsinc-band-mode *
Band pass or band reject mode
Flags : Read / Write
Default value : band-pass (0)
upper-frequency
“upper-frequency” gfloat
Cut-off upper frequency (Hz)
Flags : Read / Write
Default value : 0
window
“window” Audio-wsinc-band-window *
Window function to use
Flags : Read / Write
Default value : hamming (0)
Named constants
Audio-wsinc-band-mode
Members
band-pass
(0) – Band pass (default)
band-reject
(1) – Band reject
Audio-wsinc-band-window
Members
hamming
(0) – Hamming window (default)
blackman
(1) – Blackman window
gaussian
(2) – Gaussian window
cosine
(3) – Cosine window
hann
(4) – Hann window
The results of the search are