[Bug 698927] New: LADSPA improved port to gstreamer 1.0

GStreamer (bugzilla.gnome.org) bugzilla at gnome.org
Fri Apr 26 02:22:52 PDT 2013


https://bugzilla.gnome.org/show_bug.cgi?id=698927
  GStreamer | gst-plugins-bad | git

           Summary: LADSPA improved port to gstreamer 1.0
    Classification: Platform
           Product: GStreamer
           Version: git
        OS/Version: Linux
            Status: UNCONFIRMED
          Severity: major
          Priority: Normal
         Component: gst-plugins-bad
        AssignedTo: gstreamer-bugs at lists.freedesktop.org
        ReportedBy: juanmabcmail at gmail.com
         QAContact: gstreamer-bugs at lists.freedesktop.org
     GNOME version: ---


Created an attachment (id=242525)
 View: https://bugzilla.gnome.org/attachment.cgi?id=242525
 Review: https://bugzilla.gnome.org/review?bug=698927&attachment=242525

LADSPA improved port to gstreamer 1.0

LADSPA improved port to gstreamer 1.0
---------------------------


Hi, i just wanted to share my LADSPA plugin for gstreamer 1.0. Perhaps the old
implementation was just poorly documented, and just by that the implementation
rendered not very usable, perhaps it was not really channel capable, i don't
know, anyway it was not ported to 1.0 so i assume a big patch was expected.
Still like a 50% of code is reused mainly for plugin detection, description
LRDF tagging, gobject, and very basic LADSPA usage, that code was really nice,
the other part is really big change, since it was basing in GstSignalProcessor,
which i were told by ensonic to be broken, and better rebase the work on
BaseSrc, BaseTransform and BaseSink. As special, the GstLADSPAModule is used
because of the dynamic nature of this plugin of plugins and takes care of
proper class finalization. At the usual elements level, the GstLADSPASrc is
heavily based on audiotestsrc with carefull attention to what can be reused and
what not, so is the GstLADSPASink heavily based on fakesink, GstLADSPAFilter is
derived from AudioFilter and inspired in audioecho.  All authors are keeping
some credit in some way or another in the source files and the elements
metadata.

 The patch itself is 139K, unreviewable, but as an apply result it looks good
to review.  Consider strongly, that almost 90% of the code is a copy of other
accepted code.  It is, it would be easier to just see the old, (discard, mainly
as broken and not ported) and see the new implementation.

Enjoy!


---------------------------


IRC talk with ensonic starting the left of GstSignalProcessor in favour of
BaseSource, BaseTransform and BaseSink:

[21:11] <ensonic> juanmabc, whats up?
[21:12] <ensonic> juanmabc, don't use the GstSignalprocessor baseclass in bad,
it does not work well
[21:12] <juanmabc> yeah, trying to port ladspa
[21:13] <juanmabc> ensonic: alternatives ?
[21:13] <ensonic> juanmabc, okay, I'll try to sumarize
[21:14] <ensonic> juanmabc, gst signal processor is a single class subclassing
basetransform, but also driving sources, that does not work well
[21:14] <ensonic> juanmabc, we need separate baseclasses for sources,
transforms/filters and sinks
[21:15] <ensonic> this would basically replicat basesrc, basetransform and
basesink, the reason we can't use the existing ones is, that some of the ladspa
elements have multiple ports
[21:16] <ensonic> now in many cases where they have multiple ports, those are
e.g. stereo pairs (which is not query-able on the api)
[21:17] <ensonic> so one (pragmatic) idea would be to actually use basesrc,
basetransform and basesink and ignore elemnets that have multiple ports
[21:18] <juanmabc> yeah
[21:18] <ensonic> 2nd step would be to have a list of know port-pairs (e.g.
that for ladspa plugin XYZ "in-left" and "in-right" actually form a stereo
pair)
[21:18] <ensonic> with this list we can support probably 90% of them
[21:19] <ensonic> I think a list would work as ladspa is sort of superseeded
with lv2 and in lv2 we can query channel groups
[21:19] <juanmabc> could i get an stereo input and pass internally each channel
to In_R and In_L?
[21:19] <ensonic> I don't expect lots of new ladspa plugins
[21:19] <ensonic> juanmabc, yes
[21:19] <juanmabc> outputing Out_R Out_L again to a stereo output
[21:19] <ensonic> juanmabc, in 1.0 we support non-interleaved audio
[21:19] <juanmabc> that's something
[21:20] <juanmabc> still you can switch the channels in ports, but perhaps on
the pipeline?
[21:20] <juanmabc> can't
[21:20] <ensonic> what do you mean by that?
[21:21] <juanmabc> if you want ladspa In_R to Out_L
[21:21] <juanmabc> you do In_R to Out_R internally then some ! swap channels
[21:21] <ensonic> btw. I am leaving in about 10 min, but I am online most of
the time otherwise
[21:21] <juanmabc> i thing that basesrc/trns/sink and that could do it
[21:21] <juanmabc> thanks
[21:22] <ensonic> juanmabc, I think the channel swapping could be done with a
custom element, but I'd say for most elements we'd like to use the ports as
advertised
[21:24] <ensonic> cu
[21:25] <juanmabc> bye, thanks

I could have some issues because i do not really understand what ensonic was
meaning with the channel multiport mapping, though it is said on the relevant
file with a FIXME and assumed a LADSPA in -> out. The tests i've been running
either are lucky or work really great.  If all goes well, lv2 plugins could
also take profit of this implementation.


---------------------------


Documentation explaining some basics (i could not test the tagging):

 * SECTION:element-ladspa
 * @short_description: bridge for LADSPA (Linux Audio Developer's Simple Plugin
API)
 * @see_also: #GstAudioConvert #GstAudioResample, #GstAudioTestSrc,
#GstAutoAudioSink
 * 
 * The LADSPA (Linux Audio Developer's Simple Plugin API) plugin is a bridge
 * for plugins using the <ulink url="http://www.ladspa.org/">LADSPA</ulink>
API.
 * It scans all installed LADSPA plugins and registers them as gstreamer
 * elements. If available it can also parse LRDF files and use the metadata for
 * element classification. The functionality you get depends on the LADSPA
plugins
 * you have installed.
 * 
 * First off all you can apply not live LADSPA filters without this plugin:
 * 
 * <refsect2>
 * <title>Example LADSPA line without this plugins</title>
 * |[
 * (padsp) listplugins
 * (padsp) analyseplugin cmt.so amp_mono
 * gst-launch -e filesrc location="$myfile" ! decodebin ! audioconvert !
audioresample ! "audio/x-raw,format=S16LE,rate=48000,channels=1" ! wavenc !
filesink location="testin.wav"
 * (padsp) applyplugin testin.wav testout.wav cmt.so amp_mono 2 
 * gst-launch playbin uri=file://"$PWD"/testout.wav
 * ]| Decode any audio file into wav with the format expected for the specific
ladspa plugin to be applied, apply the ladspa filter and play it.
 * </refsect2>
 *
 * Now with this plugin:
 *
 * <refsect2>
 * <title>Example LADSPA line with this plugins</title>
 * |[
 * gst-launch autoaudiosrc ! ladspa-cmt-so-amp-mono gain=2 !
ladspa-caps-so-Plate ! ladspa-tap-echo-so-tap-stereo-echo l-delay=500
r-haas-delay=500 ! tee name=myT myT. ! queue ! autoaudiosink myT. ! queue !
audioconvert ! goom ! videoconvert ! xvimagesink pixel-aspect-ratio=3/4
 * ]| Get audio input, filter it through CAPS Plate and TAP Stereo Echo, play
it and show a visualization (recommended hearphones).
 * </refsect2>
 *
 * In case you wonder the plugin naming scheme, quoting ladspa.h:
 *   "Plugin types should be identified by file and label rather than by
 *   index or plugin name, which may be changed in new plugin versions."
 * This is really the best way then, and so it is less prone to conflicts.
 *
 * Also it is worth noting that LADSPA provides a control in and out interface,
 * on top of the audio in and out one, so some parameters are readable too.
 *
 * You can see the listing of plugins available with:
 * <refsect2>
 * <title>Inspecting the plugins list</title>
 * |[
 * gst-inspect ladspa
 * ]| List available LADSPA plugins on gstreamer.
 * </refsect2>
 *
 * You can see the parameters of any plugin with:
 * <refsect2>
 * <title>Inspecting the plugins</title>
 * |[
 * gst-inspect ladspa-retro-flange-1208-so-retroFlange
 * ]| List details of the plugin, parameters, range and defaults included.
 * </refsect2>
 *
 * The elements categorize in: 
 * <itemizedlist>
 * <listitem><para>Filter/Effect/Audio/LADSPA:</para>
 * <refsect2>
 * <title>Example Filter/Effect/Audio/LADSPA line with this plugins</title>
 * |[
 * gst-launch filesrc location="$myfile" ! decodebin ! audioconvert !
audioresample ! ladspa-calf-so-Reverb decay-time=15 high-frq-damp=20000
room-size=5 diffusion=1 wet-amount=2 dry-amount=2 pre-delay=50 bass-cut=20000
treble-cut=20000 ! ladspa-tap-echo-so-tap-stereo-echo l-delay=500
r-haas-delay=500 ! autoaudiosink
 * ]| Decode any audio file, filter it through Calf Reverb LADSPA then TAP
Stereo Echo, and play it.
 * </refsect2>
 * <refsect2>
 * </listitem>
 * <listitem><para>Source/Audio/LADSPA:</para> 
 * <refsect2>
 * <title>Example Source/Audio/LADSPA line with this plugins</title>
 * |[
 * gst-launch -e ladspasrc-sine-so-sine-fcac frequency=220 amplitude=100 !
audioconvert ! "audio/x-raw,rate=22050" ! autoaudiosink
 * ]| Generate a sine wave with Sine Oscillator (Freq:control, Amp:control),
convert it to 22050 Hz and play it.
 * </refsect2>
 * <refsect2>
 * <title>Example Source/Audio/LADSPA line with this plugins</title>
 * |[
 * gst-launch -e ladspasrc-caps-so-Click bpm=240 volume=1 ! autoaudiosink
 * ]| Generate clicks with CAPS Click - Metronome at 240 beats per minute and
play it.
 * </refsect2>
 * <refsect2>
 * <title>Example Source/Audio/LADSPA line with this plugins</title>
 * |[
 * gst-launch -e ladspasrc-random-1661-so-random-fcsc-oa !
ladspa-cmt-so-amp-mono gain=1.5 ! ladspa-caps-so-Plate ! tee name=myT myT. !
queue ! autoaudiosink myT. ! queue ! audioconvert ! wavescope ! videoconvert !
autovideosink
 * ]| Generate random wave, filter it trhough Mono Amplifier and Versatile
Plate Reverb, and play, while showing, it.
 * </refsect2>
 * </listitem>
 * <listitem><para>Sink/Audio/LADSPA:</para>
 * <refsect2>
 * <title>Example Sink/Audio/LADSPA line with this plugins</title>
 * |[
 * gst-launch -e autoaudiosrc ! ladspa-cmt-so-amp-mono gain=2 !
ladspa-caps-so-Plate ! ladspa-tap-echo-so-tap-stereo-echo l-delay=500
r-haas-delay=500 ! tee name=myT myT. ! audioconvert ! audioresample ! queue !
ladspasink-cmt-so-null-ai dump=true myT. ! audioconvert ! audioresample ! queue
! goom ! videoconvert ! xvimagesink pixel-aspect-ratio=3/4
 * ]| Get audio input, filter it trhough Mono Amplifier, CAPS Plate LADSPA and
TAP Stereo Echo, explicitily anulate audio with Null (Audio Input) dumping
contents, and play a visualization (recommended hearphones).
 * </refsect2>
 * </listitem>
 * </itemizedlist>
 */


I use also for testing something huge like:

export myfile="some.avi"

GST_PLUGIN_PATH="." gst-launch-1.0 filesrc location="$myfile" ! decodebin !
audioconvert ! audioresample ! ladspa-caps-so-Plate bandwidth=0.999 tail=0.749
damping=1 blend=0.5 ! ladspa-tap-echo-so-tap-stereo-echo ! audioconvert !
ladspa-cmt-so-amp-mono gain=5 ! ladspa-cmt-so-delay-5s delay=3 !
ladspa-cmt-so-amp-mono gain=2 ! autoaudiosink # this is a super pipeline

GST_PLUGIN_PATH="." gst-launch-1.0 ladspasrc-caps-so-Click bpm=60 volume=1 !
tee name=myT myT. ! queue ! autoaudiosink myT. ! queue ! audioconvert !
wavescope ! videoconvert ! xvimagesink pixel-aspect-ratio=3/4

GST_PLUGIN_PATH="." gst-launch-1.0 ladspasrc-random-1661-so-random-fcsc-oa !
"audio/x-raw,rate=48000" ! ladspa-cmt-so-amp-mono gain=2 ! ladspa-caps-so-Plate
! ladspa-tap-echo-so-tap-stereo-echo l-delay=500 r-haas-delay=500 ! tee
name=myT myT. ! queue ! autoaudiosink myT. ! queue ! audioconvert ! goom !
videoconvert ! xvimagesink pixel-aspect-ratio=3/4

GST_PLUGIN_PATH="." gst-launch-1.0 ladspasrc-cmt-so-pink-full-frequency !
ladspa-cmt-so-amp-mono gain=2 ! ladspa-caps-so-Plate !
ladspa-tap-echo-so-tap-stereo-echo l-delay=500 r-haas-delay=500 ! tee name=myT
myT. ! queue ! autoaudiosink myT. ! queue ! audioconvert ! goom ! videoconvert
! xvimagesink pixel-aspect-ratio=3/4


---------------------------


The naming scheme was really needed since conflicts where happening on the
background:

$ gst-inspect-0.10 ladspa
...
344 elements

$ gst-inspect-1.0 ladspa
...
357 elements

note that now, this is in line with:

$ padsp listplugins |grep -vE '\.so'|wc -l
357

The parameter beautification was also needed since it was not really near the
user (yes, 0.10 required that ---- in the parameter name, and the description
was missing stuff, happening more than one could expect):

$ gst-inspect-0.10 ladspa-tap-stereo-echo
...
R-Haas-Feedback---- : R-Haas-Feedback----
                      flags: readable, writable, controllable
                      Float. Range:               0 -             100 Default: 
             0
...

$ gst-inspect-1.0 ladspa-tap-echo-so-tap-stereo-echo
...
r-haas-feedback     : R/Haas Feedback [%]
                      flags: readable, writable, controllable
                      Float. Range:               0 -             100 Default: 
             0 
...


The element naming, ladspa-stuff ladspasrc-stuff and ladspasink-stuff is
inspired in the GStreamer tendency (audiotestsrc, autoaudiosink, audioecho).


---------------------------

Here is the listing on my computer for reference:

$ gst-inspect-1.0 ladspa

Plugin Details:
  Name:            ladspa
  Description:        LADSPA plugin
  Filename:        ./.libs/libgstladspa.so
  Version:        1.0.6
  License:        LGPL
  Source module:    gst-plugins-bad
  Source release date:    2013-03-22
  Binary package:    GStreamer Bad Plug-ins source release
  Origin URL:        Unknown package origin

  ladspa-tape-delay-1211-so-tapeDelay: Tape Delay Simulation
  ladspa-guitarix-amp-so-guitarix-amp: guitarix_amp
  ladspa-retro-flange-1208-so-retroFlange: Retro Flanger
  ladspa-amp-1654-so-amp-gaia-oa: Amplifier (GAIA)
  ladspa-amp-1654-so-amp-gcia-oa: Amplifier (GCIA)
  ladspa-mvclpf24-so-Mvclpf-1: Mvclpf-1   Digital implementation of the VC
filter invented by R.A.Moog
  ladspa-mvclpf24-so-Mvclpf-2: Mvclpf-2   Digital implementation of the VC
filter invented by R.A.Moog
  ladspa-mvclpf24-so-Mvclpf-3: Mvclpf-3   Digital implementation of the VC
filter invented by R.A.Moog
  ladspa-mvclpf24-so-Mvclpf-4: Mvclpf-4   Digital implementation of the VC
filter invented by R.A.Moog
  ladspa-square-1643-so-square-fa-oa: Bandlimited Square Oscillator (FA)
  ladspasrc-square-1643-so-square-fc-oa: Bandlimited Square Oscillator (FC)
  ladspa-lcr-delay-1436-so-lcrDelay: L/C/R Delay
  ladspa-gong-beater-1439-so-gongBeater: Gong beater
  ladspa-filters-so-Parametric1: 4-band parametric filter
  ladspa-amp-so-amp-mono: Mono Amplifier
  ladspa-amp-so-amp-stereo: Stereo Amplifier
  ladspa-tap-reverb-so-tap-reverb: TAP Reverberator
  ladspa-wave-terrain-1412-so-waveTerrain: Wave Terrain Oscillator
  ladspa-harmonic-gen-1220-so-harmonicGen: Harmonic generator
  ladspa-se4-1883-so-se4: SE4
  ladspa-guitarix-distortion-so-guitarix-distortion: guitarix_distortion
  ladspasrc-impulse-1885-so-impulse-fc: Nonbandlimited single-sample impulses
(Frequency: Control)
  ladspa-cs-chorus-so-Chorus1: Chorus1 - Based on CSound orchestra by Sean
Costello
  ladspa-cs-chorus-so-Chorus2: Chorus2 - Based on CSound orchestra by Sean
Costello
  ladspa-cs-chorus-so-TripleChorus: Triple chorus
  ladspa-sequencer64-1675-so-sequencer64: Analogue Style 64 Step Sequencer
  ladspa-chebstortion-1430-so-chebstortion: Chebyshev distortion
  ladspa-vco-sawpulse-so-Pulse-VCO: Pulse-VCO  --  Anti-aliased oscillator
  ladspa-vco-sawpulse-so-Saw-VCO: Saw-VCO  --  Anti-aliased oscillator
  ladspa-vco-sawpulse-so-Rec-VCO: Rec-VCO  --  Anti-aliased oscillator
  ladspa-hermes-filter-1200-so-hermesFilter: Hermes Filter
  ladspa-pitch-scale-1193-so-pitchScale: Pitch Scaler
  ladspa-pulse-1645-so-pulse-fapa-oa: Bandlimited Variable Width Pulse
Oscillator (FAPA)
  ladspa-pulse-1645-so-pulse-fapc-oa: Bandlimited Variable Width Pulse
Oscillator (FAPC)
  ladspa-pulse-1645-so-pulse-fcpa-oa: Bandlimited Variable Width Pulse
Oscillator (FCPA)
  ladspasrc-pulse-1645-so-pulse-fcpc-oa: Bandlimited Variable Width Pulse
Oscillator (FCPC)
  ladspa-quantiser20-2027-so-quantiser20: Quantiser (20 Steps)
  ladspa-tap-deesser-so-tap-deesser: TAP DeEsser
  ladspa-tap-pitch-so-tap-pitch: TAP Pitch Shifter
  ladspa-dj-eq-1901-so-dj-eq-mono: DJ EQ (mono)
  ladspa-dj-eq-1901-so-dj-eq: DJ EQ
  ladspa-mod-delay-1419-so-modDelay: Modulatable delay
  ladspa-sinus-wavewrapper-1198-so-sinusWavewrapper: Sinus wavewrapper
  ladspa-inv-1429-so-inv: Inverter
  ladspa-tap-vibrato-so-tap-vibrato: TAP Vibrato
  ladspa-bandpass-a-iir-1893-so-bandpass-a-iir: Glame Bandpass Analog Filter
  ladspa-foverdrive-1196-so-foverdrive: Fast overdrive
  ladspa-svf-1214-so-svf: State Variable Filter
  ladspa-freq-tracker-1418-so-freqTracker: Frequency tracker
  ladspa-dj-flanger-1438-so-djFlanger: DJ flanger
  ladspa-autotalent-so-autotalent: Autotalent
  ladspa-delay-1898-so-delay-n: Simple delay line, noninterpolating
  ladspa-delay-1898-so-delay-l: Simple delay line, linear interpolation
  ladspa-delay-1898-so-delay-c: Simple delay line, cubic spline interpolation
  ladspa-giant-flange-1437-so-giantFlange: Giant flange
  ladspa-comb-1887-so-comb-n: Comb delay line, noninterpolating
  ladspa-comb-1887-so-comb-l: Comb delay line, linear interpolation
  ladspa-comb-1887-so-comb-c: Comb delay line, cubic spline interpolation
  ladspa-sum-1665-so-sum-iaia-oa: Signal Sum (IAIA)
  ladspa-sum-1665-so-sum-iaic-oa: Signal Sum (IAIC)
  ladspasrc-sum-1665-so-sum-icic-oc: Signal Sum (ICIC)
  ladspa-adsr-1680-so-adsr-g+t: ADSR Envelope with Gate and Trigger
  ladspa-highpass-iir-1890-so-highpass-iir: Glame Highpass Filter
  ladspa-crossover-dist-1404-so-crossoverDist: Crossover distortion
  ladspa-libwasp-xshaper-so-XShaperM: X-Shaper (mono)
  ladspa-libwasp-xshaper-so-XShaperS: X-Shaper (stereo)
  ladspa-alias-1407-so-alias: Aliasing
  ladspa-valve-1209-so-valve: Valve saturation
  ladspa-tap-reflector-so-tap-reflector: TAP Reflector
  ladspa-latency-1914-so-artificialLatency: Artificial latency
  ladspa-dc-remove-1207-so-dcRemove: DC Offset Remover
  ladspa-comb-1190-so-comb: Comb Filter
  ladspa-sync-pulse-2023-so-syncpulse-fapaga-oa: Clock Pulse Oscillator with
Gate (FAPAGA)
  ladspa-sync-pulse-2023-so-syncpulse-fcpcga-oa: Clock Pulse Oscillator with
Gate (FCPCGA)
  ladspa-tap-dynamics-st-so-tap-dynamics-st: TAP Dynamics (St)
  ladspa-flanger-1191-so-flanger: Flanger
  ladspa-lowpass-iir-1891-so-lowpass-iir: Glame Lowpass Filter
  ladspasrc-noise-so-noise-white: White Noise Source
  ladspa-ambisonic3-so-Ambisonics-31-panner: AMB order 3,1 panner
  ladspa-ambisonic3-so-Ambisonics-31-rotator: AMB order 3,1 rotator
  ladspa-ambisonic3-so-Ambisonics-33-panner: AMB order 3,3 panner
  ladspa-ambisonic3-so-Ambisonics-33-rotator: AMB order 3,3 rotator
  ladspa-quantiser50-2028-so-quantiser50: Quantiser (50 Steps)
  ladspa-notch-iir-1894-so-notch-iir: Mag's Notch Filter
  ladspasrc-analogue-osc-1416-so-analogueOsc: Analogue Oscillator
  ladspa-zm1-1428-so-zm1: z-1
  ladspa-sc4-1882-so-sc4: SC4
  ladspa-step-muxer-1212-so-stepMuxer: Step Demuxer
  ladspa-quantiser100-2029-so-quantiser100: Quantiser (100 Steps)
  ladspa-adsr-1653-so-adsr: ADSR Envelope
  ladspa-caps-so-Eq: C* Eq - 10-band equalizer
  ladspa-caps-so-Eq2x2: C* Eq2x2 - stereo 10-band equalizer
  ladspa-caps-so-Compress: C* Compress - Mono compressor
  ladspa-caps-so-Pan: C* Pan - Pan and width
  ladspa-caps-so-PreampIII: C* PreampIII - Tube preamp emulation
  ladspa-caps-so-PreampIV: C* PreampIV - Tube preamp emulation + tone controls
  ladspa-caps-so-ToneStack: C* ToneStack - Tone stack emulation
  ladspa-caps-so-ToneStackLT: C* ToneStackLT - Tone stack emulation, lattice
filter 44.1
  ladspa-caps-so-AmpIII: C* AmpIII - Tube amp
  ladspa-caps-so-AmpIV: C* AmpIV - Tube amp + tone controls
  ladspa-caps-so-AmpV: C* AmpV - Tube amp
  ladspa-caps-so-AmpVTS: C* AmpVTS - Tube amp + Tone stack
  ladspa-caps-so-CabinetI: C* CabinetI - Loudspeaker cabinet emulation
  ladspa-caps-so-CabinetII: C* CabinetII - Refined loudspeaker cabinet
emulation
  ladspa-caps-so-Clip: C* Clip - Hard clipper, 8x oversampled
  ladspa-caps-so-ChorusI: C* ChorusI - Mono chorus/flanger
  ladspa-caps-so-StereoChorusI: C* StereoChorusI - Stereo chorus/flanger
  ladspa-caps-so-ChorusII: C* ChorusII - Mono chorus/flanger modulated by a
fractal
  ladspa-caps-so-StereoChorusII: C* StereoChorusII - Stereo chorus/flanger
modulated by a fractal
  ladspa-caps-so-PhaserI: C* PhaserI - Mono phaser
  ladspa-caps-so-PhaserII: C* PhaserII - Mono phaser modulated by a Lorenz
fractal
  ladspa-caps-so-SweepVFI: C* SweepVFI - Resonant filter swept by a Lorenz
fractal
  ladspa-caps-so-SweepVFII: C* SweepVFII - Resonant filter, f and Q swept by a
Lorenz fractal
  ladspa-caps-so-AutoWah: C* AutoWah - Resonant envelope-following filter
  ladspa-caps-so-Scape: C* Scape - Stereo delay + Filters
  ladspasrc-caps-so-VCOs: C* VCOs - Virtual 'analogue' oscillator
  ladspasrc-caps-so-VCOd: C* VCOd - Double VCO with detune and hard sync
options
  ladspasrc-caps-so-CEO: C* CEO - Chief Executive Oscillator
  ladspasrc-caps-so-Sin: C* Sin - Sine wave generator
  ladspasrc-caps-so-White: C* White - White noise generator
  ladspasrc-caps-so-Lorenz: C* Lorenz - The sound of a Lorenz attractor
  ladspasrc-caps-so-Roessler: C* Roessler - The sound of a Roessler attractor
  ladspa-caps-so-JVRev: C* JVRev - Stanford-style reverb from STK
  ladspa-caps-so-Plate: C* Plate - Versatile plate reverb
  ladspa-caps-so-Plate2x2: C* Plate2x2 - Versatile plate reverb, stereo inputs
  ladspasrc-caps-so-Click: C* Click - Metronome
  ladspasrc-caps-so-Dirac: C* Dirac - One-sample impulse generator
  ladspa-caps-so-HRTF: C* HRTF - Head-related transfer function at elevation 0
  ladspa-karaoke-1409-so-karaoke: Karaoke
  ladspa-sequencer16-1677-so-sequencer16: Analogue Style 16 Step Sequencer
  ladspa-diode-1185-so-diode: Diode Processor
  ladspa-xfade-1915-so-xfade: Crossfade
  ladspa-xfade-1915-so-xfade4: Crossfade (4 outs)
  ladspa-fast-lookahead-limiter-1913-so-fastLookaheadLimiter: Fast Lookahead
limiter
  ladspa-tap-tremolo-so-tap-tremolo: TAP Tremolo
  ladspa-delayorama-1402-so-delayorama: Delayorama
  ladspa-shaper-1187-so-shaper: Wave shaper
  ladspa-tap-doubler-so-tap-doubler: TAP Fractal Doubler
  ladspa-const-1909-so-const: Constant Signal Generator
  ladspa-hard-limiter-1413-so-hardLimiter: Hard Limiter
  ladspa-matrix-ms-st-1421-so-matrixMSSt: Matrix: MS to Stereo
  ladspa-ls-filter-1908-so-lsFilter: LS Filter
  ladspa-gverb-1216-so-gverb: GVerb
  ladspa-am-pitchshift-1433-so-amPitchshift: AM pitchshifter
  ladspa-sifter-1210-so-sifter: Signal sifter
  ladspa-gsm-1215-so-gsm: GSM simulator
  ladspa-ambisonic2-so-Ambisonics-21-panner: AMB order 2,1 panner
  ladspa-ambisonic2-so-Ambisonics-21-rotator: AMB order 2,1 rotator
  ladspa-ambisonic2-so-Ambisonics-22-panner: AMB order 2,2 panner
  ladspa-ambisonic2-so-Ambisonics-22-rotator: AMB order 2,2 rotator
  ladspa-matrix-st-ms-1420-so-matrixStMS: Matrix: Stereo to MS
  ladspa-foldover-1213-so-foldover: Foldover distortion
  ladspa-satan-maximiser-1408-so-satanMaximiser: Barry's Satan Maximiser
  ladspa-tap-eq-so-tap-equalizer: TAP Equalizer
  ladspa-ambisonic1-so-Ambisonics-11-mono-panner: AMB order 1,1 mono panner
  ladspa-ambisonic1-so-Ambisonics-11-stereo-panner: AMB order 1,1 stereo panner
  ladspa-ambisonic1-so-Ambisonics-11-rotator: AMB order 1,1 rotator
  ladspa-ambisonic1-so-Ambisonics-11-square-decoder: AMB order 1,1 square
decoder
  ladspa-ambisonic1-so-Ambisonics-11-hexagon-decoder: AMB order 1,1 hexagon
decoder
  ladspa-ambisonic1-so-Ambisonics-11-cube-decoder: AMB order 1,1 cube decoder
  ladspa-guitarix-IR-so-guitarix-IR: guitarix_IR
  ladspa-g2reverb-so-G2reverb: Stereo reverb
  ladspa-bode-shifter-1431-so-bodeShifter: Bode frequency shifter
  ladspa-comb-splitter-1411-so-combSplitter: Comb Splitter
  ladspa-matrix-spatialiser-1422-so-matrixSpatialiser: Matrix Spatialiser
  ladspa-sync-square-1678-so-syncsquare-faga-oa: Clock Oscillator with Gate
(FAGA)
  ladspa-sync-square-1678-so-syncsquare-fcga-oa: Clock Oscillator with Gate
(FCGA)
  ladspa-pointer-cast-1910-so-pointerCastDistortion: Pointer cast distortion
  ladspa-fad-delay-1192-so-fadDelay: Fractionally Addressed Delay Line
  ladspa-tap-pinknoise-so-tap-pinknoise: TAP Pink/Fractal Noise
  ladspa-tap-dynamics-m-so-tap-dynamics-m: TAP Dynamics (M)
  ladspa-triple-para-1204-so-triplePara: Triple band parametric with shelves
  ladspa-tap-autopan-so-tap-autopan: TAP AutoPanner
  ladspa-decay-1886-so-decay: Exponential signal decay
  ladspa-tap-eqbw-so-tap-equalizer-bw: TAP Equalizer/BW
  ladspa-dyson-compress-1403-so-dysonCompress: Dyson compressor
  ladspa-tap-rotspeak-so-tap-rotspeak: TAP Rotary Speaker
  ladspa-delay-so-delay-5s: Simple Delay Line
  ladspa-guitarix-freeverb-so-guitarix-freeverb: guitarix_freeverb
  ladspa-sequencer32-1676-so-sequencer32: Analogue Style 32 Step Sequencer
  ladspa-gong-1424-so-gong: Gong model
  ladspa-revdelay-1605-so-revdelay: Reverse Delay (5s max)
  ladspa-declip-1195-so-declip: Declipper
  ladspa-dahdsr-2021-so-dahdsr-g+t-audio: DAHDSR Envelope with Gate and Trigger
(Audio-Rate Inputs)
  ladspa-dahdsr-2021-so-dahdsr-g+t-control: DAHDSR Envelope with Gate and
Trigger (Control Inputs)
  ladspasrc-dahdsr-2021-so-dahdsr-cg+t-control: DAHDSR Envelope with Control
Gate and Trigger (Control Inputs)
  ladspa-cs-phaser-so-Phaser1: Phaser1 - Similar to CSound's phaser1 by Sean
Costello
  ladspa-cs-phaser-so-Phaser1+LFO: Phaser1 with LFO
  ladspa-rate-shifter-1417-so-rateShifter: Rate shifter
  ladspa-guitarix-so-Simulators: guitarix
  ladspa-phasers-1217-so-lfoPhaser: LFO Phaser
  ladspa-phasers-1217-so-fourByFourPole: 4 x 4 pole allpass
  ladspa-phasers-1217-so-autoPhaser: Auto phaser
  ladspa-pitch-scale-1194-so-pitchScaleHQ: Higher Quality Pitch Scaler
  ladspa-difference-2030-so-difference-iama-oa: Signal Difference (IAMA)
  ladspa-difference-2030-so-difference-iamc-oa: Signal Difference (IAMC)
  ladspa-difference-2030-so-difference-icma-oa: Signal Difference (ICMA)
  ladspasrc-difference-2030-so-difference-icmc-oc: Signal Difference (ICMC)
  ladspa-cmt-so-bf2cube: Ambisonic Decoder (B-Format to Cube)
  ladspa-cmt-so-bf2quad: Ambisonic Decoder (B-Format to Quad)
  ladspa-cmt-so-bf2stereo: Ambisonic Decoder (B-Format to Stereo)
  ladspa-cmt-so-fmh2oct: Ambisonic Decoder (FMH-Format to Octagon)
  ladspa-cmt-so-encode-bformat: Ambisonic Encoder (B-Format)
  ladspa-cmt-so-encode-fmh: Ambisonic Encoder (FMH-Format)
  ladspa-cmt-so-bf-rotate-z: Ambisonic Rotation (B-Format, Horizontal)
  ladspa-cmt-so-fmh-rotate-z: Ambisonic Rotation (FMH-Format, Horizontal)
  ladspa-cmt-so-amp-mono: Amplifier (Mono)
  ladspa-cmt-so-amp-stereo: Amplifier (Stereo)
  ladspa-cmt-so-am: Amplitude Modulator
  ladspasrc-cmt-so-analogue: Analogue Voice
  ladspa-cmt-so-canyon-delay: Canyon Delay
  ladspa-cmt-so-disintegrator: Disintegrator
  ladspa-cmt-so-sledgehammer: Dynamic Sledgehammer
  ladspa-cmt-so-delay-0-01s: Echo Delay Line (Maximum Delay 0.01s)
  ladspa-cmt-so-delay-0-1s: Echo Delay Line (Maximum Delay 0.1s)
  ladspa-cmt-so-delay-1s: Echo Delay Line (Maximum Delay 1s)
  ladspa-cmt-so-delay-5s: Echo Delay Line (Maximum Delay 5s)
  ladspa-cmt-so-delay-60s: Echo Delay Line (Maximum Delay 60s)
  ladspasink-cmt-so-track-max-peak: Envelope Tracker (Maximum Peak)
  ladspasink-cmt-so-track-max-rms: Envelope Tracker (Maximum RMS)
  ladspasink-cmt-so-track-peak: Envelope Tracker (Peak)
  ladspasink-cmt-so-track-rms: Envelope Tracker (RMS)
  ladspa-cmt-so-fmh2bf: FMH-Format to B-Format (Discards RSTUV Channels)
  ladspa-cmt-so-fbdelay-0-01s: Feedback Delay Line (Maximum Delay 0.01s)
  ladspa-cmt-so-fbdelay-0-1s: Feedback Delay Line (Maximum Delay 0.1s)
  ladspa-cmt-so-fbdelay-1s: Feedback Delay Line (Maximum Delay 1s)
  ladspa-cmt-so-fbdelay-5s: Feedback Delay Line (Maximum Delay 5s)
  ladspa-cmt-so-fbdelay-60s: Feedback Delay Line (Maximum Delay 60s)
  ladspa-cmt-so-freeverb3: Freeverb (Version 3)
  ladspa-cmt-so-grain-scatter: Granular Scatter Processor
  ladspa-cmt-so-hard-gate: Hard Gate
  ladspa-cmt-so-hpf: High Pass Filter (One Pole)
  ladspa-cmt-so-identity-audio: Identity (Audio)
  ladspasrc-cmt-so-identity-control: Identity (Control)
  ladspa-cmt-so-lofi: Lo Fi
  ladspasrc-cmt-so-logistic: Logistic Map Control Generator
  ladspa-cmt-so-lpf: Low Pass Filter (One Pole)
  ladspa-cmt-so-mixer: Mixer (Stereo to Mono)
  ladspasrc-cmt-so-noise-source-white: Noise Source (White)
  ladspasink-cmt-so-null-ai: Null (Audio Input)
  ladspasrc-cmt-so-null-ao: Null (Audio Output)
  ladspasrc-cmt-so-null-ci: Null (Control Input)
  ladspasrc-cmt-so-null-co: Null (Control Output)
  ladspasrc-cmt-so-organ: Organ
  ladspasink-cmt-so-peak: Peak Monitor
  ladspasrc-cmt-so-phasemod: Phase Modulated Voice
  ladspasrc-cmt-so-pink-interpolated-audio: Pink Noise (Interpolated)
  ladspasrc-cmt-so-pink-full-frequency: Pink Noise (full frequency range)
  ladspasrc-cmt-so-pink-sh: Pink Noise (sample and hold)
  ladspa-cmt-so-compress-peak: Simple Compressor (Peak Envelope Tracking)
  ladspa-cmt-so-compress-rms: Simple Compressor (RMS Envelope Tracking)
  ladspa-cmt-so-expand-peak: Simple Expander (Peak Envelope Tracking)
  ladspa-cmt-so-expand-rms: Simple Expander (RMS Envelope Tracking)
  ladspa-cmt-so-limit-peak: Simple Limiter (Peak Envelope Tracking)
  ladspa-cmt-so-limit-rms: Simple Limiter (RMS Envelope Tracking)
  ladspa-cmt-so-sine-faaa: Sine Oscillator (Freq:audio, Amp:audio)
  ladspa-cmt-so-sine-faac: Sine Oscillator (Freq:audio, Amp:control)
  ladspa-cmt-so-sine-fcaa: Sine Oscillator (Freq:control, Amp:audio)
  ladspasrc-cmt-so-sine-fcac: Sine Oscillator (Freq:control, Amp:control)
  ladspasrc-cmt-so-syndrum: Syn Drum
  ladspa-cmt-so-vcf303: VCF 303
  ladspa-cmt-so-wshape-sine: Wave Shaper (Sine-Based)
  ladspa-tap-limiter-so-tap-limiter: TAP Scaling Limiter
  ladspa-surround-encoder-1401-so-surroundEncoder: Surround matrix encoder
  ladspa-sc2-1426-so-sc2: SC2
  ladspa-mvchpf24-so-Mvchpf-1: Mvchpf-1   Digital implementation of the VC HP
filter invented by R.A. Moog
  ladspa-gate-1410-so-gate: Gate
  ladspa-bandpass-iir-1892-so-bandpass-iir: Glame Bandpass Filter
  ladspa-sc4m-1916-so-sc4m: SC4 mono
  ladspa-ladspa-guitarix-so-guitarix-amp: Guitarix Amp
  ladspa-ladspa-guitarix-so-guitarix-fx: Guitarix Stereo Fx
  ladspa-guitarix-echo-so-guitarix-echo: guitarix_echo
  ladspasrc-interpolator-1660-so-interpolator: Control to Audio Interpolator
  ladspa-ratio-2034-so-ratio-nada-oa: Signal Ratio (NADA)
  ladspa-ratio-2034-so-ratio-nadc-oa: Signal Ratio (NADC)
  ladspa-ratio-2034-so-ratio-ncda-oa: Signal Ratio (NCDA)
  ladspasrc-ratio-2034-so-ratio-ncdc-oc: Signal Ratio (NCDC)
  ladspa-filter-so-lpf: Simple Low Pass Filter
  ladspa-filter-so-hpf: Simple High Pass Filter
  ladspa-butterworth-1902-so-bwxover-iir: Glame Butterworth X-over Filter
  ladspa-butterworth-1902-so-buttlow-iir: GLAME Butterworth Lowpass
  ladspa-butterworth-1902-so-butthigh-iir: GLAME Butterworth Highpass
  ladspa-tracker-2025-so-tracker-gaaadaia-oa: Signal Tracker (Audio Rates)
  ladspa-tracker-2025-so-tracker-gaacdcia-oa: Signal Tracker (Control Rates)
  ladspa-mbeq-1197-so-mbeq: Multiband EQ
  ladspa-blvco-so-Pulse-VCO: Pulse-VCO  --  Anti-aliased oscillator
  ladspa-blvco-so-Saw-VCO: Saw-VCO  --  Anti-aliased oscillator
  ladspa-blvco-so-Rec-VCO: Rec-VCO  --  Anti-aliased oscillator
  ladspa-tap-chorusflanger-so-tap-chorusflanger: TAP Chorus/Flanger
  ladspa-transient-1206-so-transient: Transient mangler
  ladspa-sine-so-sine-faaa: Sine Oscillator (Freq:audio, Amp:audio)
  ladspa-sine-so-sine-faac: Sine Oscillator (Freq:audio, Amp:control)
  ladspa-sine-so-sine-fcaa: Sine Oscillator (Freq:control, Amp:audio)
  ladspasrc-sine-so-sine-fcac: Sine Oscillator (Freq:control, Amp:control)
  ladspa-vynil-1905-so-vynil: VyNil (Vinyl Effect)
  ladspa-lp4pole-1671-so-lp4pole-faraia-oa: 4 Pole Low-Pass Filter with
Resonance (FARAIA)
  ladspa-lp4pole-1671-so-lp4pole-fcrcia-oa: 4 Pole Low-Pass Filter with
Resonance (FCRCIA)
  ladspa-ringmod-1188-so-ringmod-2i1o: Ringmod with two inputs
  ladspa-ringmod-1188-so-ringmod-1i1o1l: Ringmod with LFO
  ladspa-random-1661-so-random-fasa-oa: Random Wave Generator (FASA)
  ladspa-random-1661-so-random-fasc-oa: Random Wave Generator (FASC)
  ladspa-random-1661-so-random-fcsa-oa: Random Wave Generator (FCSA)
  ladspasrc-random-1661-so-random-fcsc-oa: Random Wave Generator (FCSC)
  ladspa-libwasp-noisifier-so-NoisifierM: Noisifier (mono)
  ladspa-libwasp-noisifier-so-NoisifierS: Noisifier (stereo)
  ladspa-multivoice-chorus-1201-so-multivoiceChorus: Multivoice Chorus
  ladspasrc-sin-cos-1881-so-sinCos: Sine + cosine oscillator
  ladspa-sawtooth-1641-so-sawtooth-fa-oa: Bandlimited Sawtooth Oscillator (FA)
  ladspasrc-sawtooth-1641-so-sawtooth-fc-oa: Bandlimited Sawtooth Oscillator
(FC)
  ladspa-sc1-1425-so-sc1: SC1
  ladspa-split-1406-so-split: Mono to Stereo splitter
  ladspa-tap-sigmoid-so-tap-sigmoid: TAP Sigmoid Booster
  ladspa-fmod-1656-so-fmod-fama-oa: Frequency Modulator (FAMA)
  ladspa-fmod-1656-so-fmod-famc-oa: Frequency Modulator (FAMC)
  ladspa-fmod-1656-so-fmod-fcma-oa: Frequency Modulator (FCMA)
  ladspasrc-fmod-1656-so-fmod-fcmc-oc: Frequency Modulator (FCMC)
  ladspa-hilbert-1440-so-hilbert: Hilbert transformer
  ladspa-bode-shifter-cv-1432-so-bodeShifterCV: Bode frequency shifter (CV)
  ladspa-sc3-1427-so-sc3: SC3
  ladspa-branch-1673-so-branch-ia-oaoa: Signal Branch (IA)
  ladspasrc-branch-1673-so-branch-ic-ococ: Signal Branch (IC)
  ladspa-ambisonic0-so-Tricardioid-to-AMB: Three cardioids to AMB matrix
  ladspa-ambisonic0-so-Virtualmic: Virtual stereo microphone
  ladspa-triangle-1649-so-triangle-fasa-oa: Bandlimited Variable Slope Triangle
Oscillator (FASA)
  ladspa-triangle-1649-so-triangle-fasc-oa: Bandlimited Variable Slope Triangle
Oscillator (FASC)
  ladspa-triangle-1649-so-triangle-fcsa-oa: Bandlimited Variable Slope Triangle
Oscillator (FCSA)
  ladspasrc-triangle-1649-so-triangle-fcsc-oa: Bandlimited Variable Slope
Triangle Oscillator (FCSC)
  ladspa-valve-rect-1405-so-valveRect: Valve rectifier
  ladspa-tap-echo-so-tap-stereo-echo: TAP Stereo Echo
  ladspa-plate-1423-so-plate: Plate reverb
  ladspa-guitarix-compressor-so-guitarix-compressor: guitarix_compressor
  ladspa-product-1668-so-product-iaia-oa: Signal Product (IAIA)
  ladspa-product-1668-so-product-iaic-oa: Signal Product (IAIC)
  ladspasrc-product-1668-so-product-icic-oc: Signal Product (ICIC)
  ladspa-tap-tubewarmth-so-tap-tubewarmth: TAP TubeWarmth
  ladspa-calf-so-Filter: Calf Filter LADSPA
  ladspa-calf-so-Filterclavier: Calf Filterclavier LADSPA
  ladspa-calf-so-Flanger: Calf Flanger LADSPA
  ladspa-calf-so-Reverb: Calf Reverb LADSPA
  ladspa-calf-so-VintageDelay: Calf Vintage Delay LADSPA
  ladspa-calf-so-RotarySpeaker: Calf Rotary Speaker LADSPA
  ladspa-calf-so-Phaser: Calf Phaser LADSPA
  ladspa-calf-so-MultiChorus: Calf MultiChorus LADSPA
  ladspa-calf-so-Compressor: Calf Compressor LADSPA
  ladspa-single-para-1203-so-singlePara: Single band parametric
  ladspa-smooth-decimate-1414-so-smoothDecimate: Smooth Decimator
  ladspa-fm-osc-1415-so-fmOsc: FM Oscillator
  ladspa-divider-1186-so-divider: Audio Divider (Suboctave Generator)
  ladspa-decimator-1202-so-decimator: Decimator
  ladspa-imp-1199-so-imp: Impulse convolver
  ladspa-amp-1181-so-amp: Simple amplifier
  ladspa-libwasp-booster-so-BoosterM: Clipping Booster (mono)
  ladspa-libwasp-booster-so-BoosterS: Clipping Booster (stereo)
  ladspa-guitarix-crybaby-so-guitarix-crybaby: guitarix_crybaby
  ladspa-allpass-1895-so-allpass-n: Allpass delay line, noninterpolating
  ladspa-allpass-1895-so-allpass-l: Allpass delay line, linear interpolation
  ladspa-allpass-1895-so-allpass-c: Allpass delay line, cubic spline
interpolation

  357 features:
  +-- 357 elements

Here is the listing of one filter for reference too, this one is even special
cause does a mono to stereo, and not just keeps the channels and filters, it
works great:

$ gst-inspect-1.0 ladspa-caps-so-Plate
Factory Details:
  Rank:         none (0)
  Long-name:            C* Plate - Versatile plate reverb
  Klass:                Filter/Effect/Audio/LADSPA
  Description:          C* Plate - Versatile plate reverb
  Author:               Tim Goetze <tim at quitte.de>, Juan Manuel Borges Caño
<juanmabcmail at gmail.com>, Andy Wingo <wingo at pobox.com>, Steve Baker
<stevebaker_org at yahoo.co.uk>, Erik Walthinsen <omega at cse.ogi.edu>, Stefan Kost
<ensonic at users.sf.net> (audiotestsrc), Wim Taymans <wim at fluendo.com> (fakesink)

Plugin Details:
  Name:                 ladspa
  Description:          LADSPA plugin
  Filename:             ./.libs/libgstladspa.so
  Version:              1.0.6
  License:              LGPL
  Source module:        gst-plugins-bad
  Source release date:  2013-03-22
  Binary package:       GStreamer Bad Plug-ins source release
  Origin URL:           Unknown package origin

GObject
 +----GInitiallyUnowned
       +----GstObject
             +----GstElement
                   +----GstBaseTransform
                         +----GstAudioFilter
                               +----ladspa-caps-so-Plate

Pad Templates:
  SRC template: 'src'
    Availability: Always
    Capabilities:
      audio/x-raw
                 format: F32LE
               channels: 2
                   rate: [ 1, 2147483647 ]
                 layout: interleaved

  SINK template: 'sink'
    Availability: Always
    Capabilities:
      audio/x-raw
                 format: F32LE
               channels: 1
                   rate: [ 1, 2147483647 ]
                 layout: interleaved


Element Flags:
  no flags set

Element Implementation:
  Has change_state() function: gst_audio_filter_change_state

Element has no clocking capabilities.
Element has no indexing capabilities.
Element has no URI handling capabilities.

Pads:
  SINK: 'sink'
    Implementation:
      Has chainfunc(): gst_base_transform_chain
      Has custom eventfunc(): gst_base_transform_sink_event
      Has custom queryfunc(): gst_base_transform_query
      Has custom iterintlinkfunc(): gst_pad_iterate_internal_links_default
    Pad Template: 'sink'
  SRC: 'src'
    Implementation:
      Has getrangefunc(): gst_base_transform_getrange
      Has custom eventfunc(): gst_base_transform_src_event
      Has custom queryfunc(): gst_base_transform_query
      Has custom iterintlinkfunc(): gst_pad_iterate_internal_links_default
    Pad Template: 'src'

Element Properties:
  name                : The name of the object
                        flags: readable, writable
                        String. Default: "ladspa-caps-so-plate0"
  parent              : The parent of the object
                        flags: readable, writable
                        Object of type "GstObject"
  qos                 : Handle Quality-of-Service events
                        flags: readable, writable
                        Boolean. Default: false
  bandwidth           : bandwidth
                        flags: readable, writable, controllable
                        Float. Range:           0.005 -           0.999
Default:           0.502 
  tail                : tail
                        flags: readable, writable, controllable
                        Float. Range:               0 -           0.749
Default:          0.3745 
  damping             : damping
                        flags: readable, writable, controllable
                        Float. Range:          0.0005 -               1
Default:        0.250375 
  blend               : blend
                        flags: readable, writable, controllable
                        Float. Range:               0 -               1
Default:            0.25 


---------------------------


I don't know if you should take the time to review it, which could take long,
assuming you are also not idle, so perhaps this and the openal port that i
submitted recenlty proves that i could deserve git access and so keep working
fluidly. The openal port is gonna really be enforced with what i learned with
this plugin, src, transforms and sinks all of them + dynamic (hopefully),
though i could for sure learn better yet. I will be glad anyway too. As so, to
hear your corrections.  As a final remark if accepted, consider too moving to
-good.

Thanks, hoping people enjoy as much as i enjoyed programming it.

juanmabc


---------------------------

-- 
Configure bugmail: https://bugzilla.gnome.org/userprefs.cgi?tab=email
------- 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