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 , Steven W. Smith, Dreamlab Technologies Ltd. , Sebastian Dröge

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

Presencealways

Directionsink

Object typeGstPad


src

audio/x-raw:
         format: { F32LE, F64LE }
           rate: [ 1, 2147483647 ]
       channels: [ 1, 2147483647 ]
         layout: interleaved

Presencealways

Directionsrc

Object typeGstPad


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