[Bug 794774] New: contributing an easy-to-use IIR audio filtering via LADSPA via ACDf plugin
GStreamer (GNOME Bugzilla)
bugzilla at gnome.org
Wed Mar 28 16:59:33 UTC 2018
https://bugzilla.gnome.org/show_bug.cgi?id=794774
Bug ID: 794774
Summary: contributing an easy-to-use IIR audio filtering via
LADSPA via ACDf plugin
Classification: Platform
Product: GStreamer
Version: unspecified
OS: Linux
Status: NEW
Severity: enhancement
Priority: Normal
Component: don't know
Assignee: gstreamer-bugs at lists.freedesktop.org
Reporter: charleslaub at sbcglobal.net
QA Contact: gstreamer-bugs at lists.freedesktop.org
GNOME version: ---
I am the developer of a LADSPA plugin known as "ACDf". It can implement all of
the following filter types via 7 named parameters:
ACDf filter types and their required parameters:
TYPE DESCRIPTION REQUIRED PARAMETERS
0 gain block dB_gain, polarity
1 1st order LP dB_gain, polarity, Fp
2 1st order HP dB_gain, polarity, Fp
3 1st order AP polarity, Fp
4 1st low shelf Fp, dB_gain
5 1st high shelf Fp, dB_gain
21 2nd order LP dB_gain, polarity, Fp, Qp,
22 2nd order HP dB_gain, polarity, Fp, Qp
23 2nd order AP polarity, Fp, Qp
24 2nd order low shelf dB_gain, polarity, Fp, Qp
25 2nd order high shelf dB_gain, polarity, Fp, Qp
26 parametric EQ, digital form dB_gain, Fp, Qp
27 2nd order notch dB_gain, polarity, Fp, Qp, Fz
28 biquadratic filter dB_gain, polarity, Fp, Qp, Fz, Qz
The ACDf LADSPA plugin is available under a GPL3 license and is becoming quite
popular in the DIY audio community. It can be downloaded with its supporting
documentation, bundled with a couple other plugins I wrote, from this web page:
http://audio.claub.net/LADSPA-plugins.html
I am currently implementing ACDf via gstreamer's LADSPA plugin capabilities,
however, I think that it would make IIR filtering must easier for users if it
was incorporated into gstreamer itself as a gstreamer element. The current IIR
filtering plugin, audioiirfilter, requires arrays of the transfer coefficients
as parameters. This is not easy for most users to calculate and these cannot be
supplied via gst-launch.
ACDf has 7 named parameters, e.g.:
PARAMETER WHAT IT DOES
filter_type: indicates which filter type to implement (see below)
dB_gain: passband gain for the filter in dB
polarity: -1 reverses polarity. polarity is unchanged for any other number
Fop: sets the frequency of the filter pole in Hz
Qp: sets the Q factor of the filter pole
Foz: sets the frequency of the filter zero in Hz
Qz: sets the Q factor of the filter zero
As described above, not all parameters are required for every filter type.
Using these parameters to describing a filter will be more familiar to users,
and easier to implement, compared to transfer coefficients.
I would like to contribute the code from ACDf (written in C++) to the gstreamer
project. It's available at the link provided above. I have no experience
creating plugins for gstreamer or working on gstreamer code, so I can't create
a patch or commit myself. I would be happy to work with someone who can, and
perhaps it is not difficult under the existing LADSPA interface in gstreamer.
If this is of interest, please post a follow up or contact me. Thanks,
Charlie Laub
--
You are receiving this mail because:
You are the QA Contact for the bug.
You are the assignee for the bug.
More information about the gstreamer-bugs
mailing list