gst/equalizer/: And continue to update docs. Also include some sample code for the...
authorSebastian Dröge <slomo@circular-chaos.org>
Sun, 11 Nov 2007 13:55:27 +0000 (13:55 +0000)
committerSebastian Dröge <slomo@circular-chaos.org>
Sun, 11 Nov 2007 13:55:27 +0000 (13:55 +0000)
Original commit message from CVS:
* gst/equalizer/gstiirequalizer10bands.c:
* gst/equalizer/gstiirequalizer3bands.c:
* gst/equalizer/gstiirequalizernbands.c:
And continue to update docs. Also include some sample code
for the n-band equalizer in the docs.

ChangeLog
gst/equalizer/gstiirequalizer10bands.c
gst/equalizer/gstiirequalizer3bands.c
gst/equalizer/gstiirequalizernbands.c

index 39ab9160be8cd287f360c8e14b57c18eec95b292..5113bd639f4c8d25ff7a612173ef7c87a1638f80 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2007-11-11  Sebastian Dröge  <slomo@circular-chaos.org>
+
+       * gst/equalizer/gstiirequalizer10bands.c:
+       * gst/equalizer/gstiirequalizer3bands.c:
+       * gst/equalizer/gstiirequalizernbands.c:
+       And continue to update docs. Also include some sample code
+       for the n-band equalizer in the docs.
+
 2007-11-11  Sebastian Dröge  <slomo@circular-chaos.org>
 
        * gst/equalizer/gstiirequalizer10bands.c:
index a2e2018f8add2028e27ce6f076f1b73669e3fd6a..e951077d6005bfe461ab03141abfdd1b7285ef5e 100644 (file)
 
 /**
  * SECTION:element-equalizer-10bands
+ * @short_description: 10-band equalizer
  *
  * <refsect2>
- * <title>Example launch line</title>
  * <para>
- * The 10 band equalizer element changes the frequency spectrum of the audio data.
+ * The 10 band equalizer element allows to change the gain of 10 equally distributed
+ * frequency bands between 30 Hz and 15 kHz.
  * </para>
+ * <title>Example launch line</title>
  * <para>
  * <programlisting>
  * gst-launch filesrc location=song.ogg ! oggdemux ! vorbisdec ! audioconvert ! equalizer-10bands band2=3.0 ! alsasink
index e2229dd7aea77dc8386cfb7aeb7ce93be45fdca4..f1e11d508e36fe0aadf1372223bb5b4eb4460624 100644 (file)
 
 /**
  * SECTION:element-equalizer-3bands
+ * @short_description: 3-band equalizer
  *
  * <refsect2>
- * <title>Example launch line</title>
  * <para>
- * The 3 band equalizer element changes the frequency spectrum of the audio data.
+ * The 3-band equalizer element allows to change the gain of a low frequency,
+ * medium frequency and high frequency band.
  * </para>
+ * <title>Example launch line</title>
  * <para>
  * <programlisting>
  * gst-launch filesrc location=song.ogg ! oggdemux ! vorbisdec ! audioconvert ! equalizer-3bands band1=6.0 ! alsasink
  * </programlisting>
- * This raises the volume of the 2nd band which is at 1110 Hz by 6 db.
+ * This raises the volume of the 2nd band, which is at 1110 Hz, by 6 db.
  * </para>
  * </refsect2>
  */
index 164dca5cd69842dda33c414464b45bfb3226c92b..316cd0297709af9d7948f9f7fb892086c179d53d 100644 (file)
 
 /**
  * SECTION:element-equalizer-nbands
+ * @short_description: Fully parametric N-band equalizer
  *
  * <refsect2>
- * <title>Example launch line</title>
  * <para>
- * The n-band equalizer element changes the frequency spectrum of the audio data.
+ * The n-band equalizer element is a fully parametric equalizer. It allows to
+ * select between 1 and 64 bands and has properties on each band to change
+ * the center frequency, band width and gain.
  * </para>
+ * <title>Example launch line</title>
  * <para>
  * <programlisting>
  * gst-launch filesrc location=song.ogg ! oggdemux ! vorbisdec ! audioconvert ! equalizer-nbands num-bands=15 band5::gain=6.0 ! alsasink
  * </programlisting>
  * This make the equalizer use 15 bands and raises the volume of the 5th band by 6 db.
  * </para>
+ * <title>Example code</title>
+ * <para>
+ * <programlisting>
+
+#include &lt;gst/gst.h&gt;
+
+...
+typedef struct {
+  gfloat freq;
+  gfloat width;
+  gfloat gain;
+} GstEqualizerBandState;
+
+...
+
+  GstElement *equalizer;
+  GstObject *band;
+  gint i;
+  GstEqualizerBandState state[] = {
+    { 120.0,   50.0, - 3.0},
+    { 500.0,   20.0,  12.0},
+    {1503.0,    2.0, -20.0},
+    {6000.0, 1000.0,   6.0},
+    {3000.0,  120.0,   2.0}
+  };
+
+...
+
+
+  equalizer = gst_element_factory_make ("equalizer-nbands", "equalizer");
+  g_object_set (G_OBJECT (equalizer), "num-bands", 5, NULL);
+
+...
+
+  for (i = 0; i &lt; 5; i++) {
+    band = gst_child_proxy_get_child_by_index (GST_CHILD_PROXY (equalizer), i);
+    g_object_set (G_OBJECT (band), "freq", state[i].freq,
+        "bandwidth", state[i].width,
+       "gain", state[i].gain);
+    g_object_unref (G_OBJECT (band));
+  }
+
+...
+
+ * </programlisting>
+ * </para>
  * </refsect2>
  */