[gstreamer-bugs] [Bug 404646] [audiofx] Compressor/Expander element

GStreamer (bugzilla.gnome.org) bugzilla-daemon at bugzilla.gnome.org
Thu Mar 1 15:20:55 PST 2007


Do not reply to this via email (we are currently unable to handle email
responses and they get discarded).  You can add comments to this bug at
http://bugzilla.gnome.org/show_bug.cgi?id=404646

  GStreamer | gst-plugins-good | Ver: HEAD CVS


Sebastian Dröge changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
            Summary|[audiofx] Compressor element|[audiofx]
                   |                            |Compressor/Expander element




------- Comment #3 from Sebastian Dröge  2007-03-01 23:18 UTC -------
Ok, roadmap for now is the following:
1) Implement an element with the following properties:
   - characteristics = {hardknee,softknee}
   - mode = {compressor,expander}
   - ratio = [0.0;G_MAXDOUBLE]
   - threshold = [0.0;1.0]

The soft-knee solution will most probably use a bezier curve in the beginning,
which will have a slope of 1 at the $threshold and a slope of $ratio$ at the
maximum (i.e. 0 for expander, 1 compressor).

2) Implement additional properties:
   - attack = [0.0;GST_SECOND]
   - release = [0.0;GST_SECOND]

Attack will look "in the future" and if something above $threshold is noticed
$attack seconds in the future the ratio will be raised from 1 to $ratio over
this time, having full compression at the point where the input is above
$threshold.

If the input is below $threshold again the compression will be lowered from
$ratio to 1 in the following $release seconds. If the input gets above
$threshold again in $attack seconds while lowering the compression the effect
of $attack and $release are mixed.


Any additional ideas on this?


-- 
Configure bugmail: http://bugzilla.gnome.org/userprefs.cgi?tab=email




More information about the Gstreamer-bugs mailing list