audiowsinclimit

audiowsinclimit — Low pass and high pass windowed sinc filter

Synopsis

                    GstAudioWSincLimit;

Object Hierarchy

  GObject
   +----GstObject
         +----GstElement
               +----GstBaseTransform
                     +----GstAudioFilter
                           +----GstAudioFXBaseFIRFilter
                                 +----GstAudioWSincLimit

Properties

  "frequency"                gdouble               : Read / Write
  "length"                   gint                  : Read / Write
  "mode"                     GstAudioWSincLimitMode  : Read / Write
  "window"                   GstAudioWSincLimitWindow  : Read / Write
  "cutoff"                   gfloat                : Read / Write

Description

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.

This element has the advantage over the Chebyshev lowpass and highpass 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 audiotestsrc freq=1500 ! audioconvert ! audiowsinclimit mode=low-pass frequency=1000 length=501 ! audioconvert ! alsasink
gst-launch filesrc location="melo1.ogg" ! oggdemux ! vorbisdec ! audioconvert ! audiowsinclimit mode=high-pass frequency=15000 length=501 ! audioconvert ! alsasink
gst-launch audiotestsrc wave=white-noise ! audioconvert ! audiowsinclimit mode=low-pass frequency=1000 length=10001 window=blackman ! audioconvert ! alsasink

Details

GstAudioWSincLimit

typedef struct _GstAudioWSincLimit GstAudioWSincLimit;

Opaque data structure.

Property Details

The "frequency" property

  "frequency"                gdouble               : Read / Write

Cut-off Frequency (Hz).

Allowed values: >= 0

Default value: 0


The "length" property

  "length"                   gint                  : Read / Write

Filter kernel length, will be rounded to the next odd number.

Allowed values: [3,256000]

Default value: 101


The "mode" property

  "mode"                     GstAudioWSincLimitMode  : Read / Write

Low pass or high pass mode.

Default value: Low pass (default)


The "window" property

  "window"                   GstAudioWSincLimitWindow  : Read / Write

Window function to use.

Default value: Hamming window (default)


The "cutoff" property

  "cutoff"                   gfloat                : Read / Write

Cut-off Frequency (Hz).

Allowed values: [0,100000]

Default value: 0