<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>rgvolume</title>
<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
<link rel="home" href="index.html" title="GStreamer Good Plugins 1.0 Plugins Reference Manual">
<link rel="up" href="ch01.html" title="gst-plugins-good Elements">
<link rel="prev" href="gst-plugins-good-plugins-rglimiter.html" title="rglimiter">
<link rel="next" href="gst-plugins-good-plugins-rippletv.html" title="rippletv">
<meta name="generator" content="GTK-Doc V1.18 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
<tr valign="middle">
<td><a accesskey="p" href="gst-plugins-good-plugins-rglimiter.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
<td><a accesskey="u" href="ch01.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
<th width="100%" align="center">GStreamer Good Plugins 1.0 Plugins Reference Manual</th>
<td><a accesskey="n" href="gst-plugins-good-plugins-rippletv.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
</tr>
<tr><td colspan="5" class="shortcuts">
<a href="#gst-plugins-good-plugins-rgvolume.synopsis" class="shortcut">Top</a>
                   | 
                  <a href="#gst-plugins-good-plugins-rgvolume.description" class="shortcut">Description</a>
                   | 
                  <a href="#gst-plugins-good-plugins-rgvolume.object-hierarchy" class="shortcut">Object Hierarchy</a>
                   | 
                  <a href="#gst-plugins-good-plugins-rgvolume.implemented-interfaces" class="shortcut">Implemented Interfaces</a>
                   | 
                  <a href="#gst-plugins-good-plugins-rgvolume.properties" class="shortcut">Properties</a>
</td></tr>
</table>
<div class="refentry">
<a name="gst-plugins-good-plugins-rgvolume"></a><div class="titlepage"></div>
<div class="refnamediv"><table width="100%"><tr>
<td valign="top">
<h2><span class="refentrytitle"><a name="gst-plugins-good-plugins-rgvolume.top_of_page"></a>rgvolume</span></h2>
<p>rgvolume — Apply ReplayGain volume adjustment</p>
</td>
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsynopsisdiv">
<a name="gst-plugins-good-plugins-rgvolume.synopsis"></a><h2>Synopsis</h2>
<a name="GstRgVolume"></a><pre class="synopsis">struct              <a class="link" href="gst-plugins-good-plugins-rgvolume.html#GstRgVolume-struct" title="struct GstRgVolume">GstRgVolume</a>;
</pre>
</div>
<div class="refsect1">
<a name="gst-plugins-good-plugins-rgvolume.object-hierarchy"></a><h2>Object Hierarchy</h2>
<pre class="synopsis">
  <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
   +----<a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
         +----<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstObject.html">GstObject</a>
               +----<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html">GstElement</a>
                     +----<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstBin.html">GstBin</a>
                           +----GstRgVolume
</pre>
</div>
<div class="refsect1">
<a name="gst-plugins-good-plugins-rgvolume.implemented-interfaces"></a><h2>Implemented Interfaces</h2>
<p>
GstRgVolume implements
 <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstChildProxy.html">GstChildProxy</a>.</p>
</div>
<div class="refsect1">
<a name="gst-plugins-good-plugins-rgvolume.properties"></a><h2>Properties</h2>
<pre class="synopsis">
  "<a class="link" href="gst-plugins-good-plugins-rgvolume.html#GstRgVolume--album-mode" title='The "album-mode" property'>album-mode</a>"               <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a>              : Read / Write
  "<a class="link" href="gst-plugins-good-plugins-rgvolume.html#GstRgVolume--fallback-gain" title='The "fallback-gain" property'>fallback-gain</a>"            <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a>               : Read / Write
  "<a class="link" href="gst-plugins-good-plugins-rgvolume.html#GstRgVolume--headroom" title='The "headroom" property'>headroom</a>"                 <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a>               : Read / Write
  "<a class="link" href="gst-plugins-good-plugins-rgvolume.html#GstRgVolume--pre-amp" title='The "pre-amp" property'>pre-amp</a>"                  <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a>               : Read / Write
  "<a class="link" href="gst-plugins-good-plugins-rgvolume.html#GstRgVolume--result-gain" title='The "result-gain" property'>result-gain</a>"              <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a>               : Read
  "<a class="link" href="gst-plugins-good-plugins-rgvolume.html#GstRgVolume--target-gain" title='The "target-gain" property'>target-gain</a>"              <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a>               : Read
</pre>
</div>
<div class="refsect1">
<a name="gst-plugins-good-plugins-rgvolume.description"></a><h2>Description</h2>
<p>
This element applies volume changes to streams as lined out in the proposed
<a class="ulink" href="http://replaygain.org" target="_top">ReplayGain standard</a>.  It
interprets the ReplayGain meta data tags and carries out the adjustment (by
using a volume element internally).  The relevant tags are:
</p>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstTagList.html#GST-TAG-TRACK-GAIN:CAPS"><span class="type">GST_TAG_TRACK_GAIN</span></a></li>
<li class="listitem"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstTagList.html#GST-TAG-TRACK-PEAK:CAPS"><span class="type">GST_TAG_TRACK_PEAK</span></a></li>
<li class="listitem"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstTagList.html#GST-TAG-ALBUM-GAIN:CAPS"><span class="type">GST_TAG_ALBUM_GAIN</span></a></li>
<li class="listitem"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstTagList.html#GST-TAG-ALBUM-PEAK:CAPS"><span class="type">GST_TAG_ALBUM_PEAK</span></a></li>
<li class="listitem"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstTagList.html#GST-TAG-REFERENCE-LEVEL:CAPS"><span class="type">GST_TAG_REFERENCE_LEVEL</span></a></li>
</ul></div>
<p>
The information carried by these tags must have been calculated beforehand by
performing the ReplayGain analysis.  This is implemented by the <a class="link" href="gst-plugins-good-plugins-rganalysis.html#GstRgAnalysis">rganalysis</a> element.
</p>
<p>
The signal compression/limiting recommendations outlined in the proposed
standard are not implemented by this element.  This has to be handled by
separate elements because applications might want to have additional filters
between the volume adjustment and the limiting stage.  A basic limiter is
included with this plugin: The <a class="link" href="gst-plugins-good-plugins-rglimiter.html#GstRgLimiter">rglimiter</a>
element applies -6 dB hard limiting as mentioned in the ReplayGain standard.
</p>
<p>
</p>
<div class="refsect2">
<a name="idp16461296"></a><h3>Example launch line</h3>
<div class="informalexample">
  <table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
    <tbody>
      <tr>
        <td class="listing_lines" align="right"><pre>1
2</pre></td>
        <td class="listing_code"><pre class="programlisting">gst<span class="gtkdoc opt">-</span>launch<span class="gtkdoc opt">-</span><span class="number">1.0</span> filesrc location<span class="gtkdoc opt">=</span>filename<span class="gtkdoc opt">.</span>ext <span class="gtkdoc opt">!</span> decodebin <span class="gtkdoc opt">!</span> audioconvert \
    <span class="gtkdoc opt">!</span> rgvolume <span class="gtkdoc opt">!</span> audioconvert <span class="gtkdoc opt">!</span> audioresample <span class="gtkdoc opt">!</span> alsasink</pre></td>
      </tr>
    </tbody>
  </table>
</div>
 Playback of a file
</div>
<p>
</p>
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<div class="refsect2">
<a name="idp16014704"></a><h3>Element Information</h3>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term">plugin</span></p></td>
<td>
            <a class="link" href="gst-plugins-good-plugins-plugin-replaygain.html#plugin-replaygain">replaygain</a>
          </td>
</tr>
<tr>
<td><p><span class="term">author</span></p></td>
<td>René Stadler &lt;mail@renestadler.de&gt;</td>
</tr>
<tr>
<td><p><span class="term">class</span></p></td>
<td>Filter/Effect/Audio</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="idp17717824"></a><h3>Element Pads</h3>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term">name</span></p></td>
<td>sink</td>
</tr>
<tr>
<td><p><span class="term">direction</span></p></td>
<td>sink</td>
</tr>
<tr>
<td><p><span class="term">presence</span></p></td>
<td>always</td>
</tr>
<tr>
<td><p><span class="term">details</span></p></td>
<td>audio/x-raw, format=(string){ F32LE, S16LE }, layout=(string){ interleaved, non-interleaved }, rate=(int)[ 1, 2147483647 ], channels=(int)[ 1, 2147483647 ]</td>
</tr>
</tbody>
</table></div>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term">name</span></p></td>
<td>src</td>
</tr>
<tr>
<td><p><span class="term">direction</span></p></td>
<td>source</td>
</tr>
<tr>
<td><p><span class="term">presence</span></p></td>
<td>always</td>
</tr>
<tr>
<td><p><span class="term">details</span></p></td>
<td>audio/x-raw, format=(string){ F32LE, S16LE }, layout=(string){ interleaved, non-interleaved }, rate=(int)[ 1, 2147483647 ], channels=(int)[ 1, 2147483647 ]</td>
</tr>
</tbody>
</table></div>
</div>
</div>
<p>
</p>
</div>
<div class="refsect1">
<a name="gst-plugins-good-plugins-rgvolume.details"></a><h2>Details</h2>
<div class="refsect2">
<a name="GstRgVolume-struct"></a><h3>struct GstRgVolume</h3>
<pre class="programlisting">struct GstRgVolume;</pre>
<p>
Opaque data structure.
</p>
</div>
</div>
<div class="refsect1">
<a name="gst-plugins-good-plugins-rgvolume.property-details"></a><h2>Property Details</h2>
<div class="refsect2">
<a name="GstRgVolume--album-mode"></a><h3>The <code class="literal">"album-mode"</code> property</h3>
<pre class="programlisting">  "album-mode"               <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a>              : Read / Write</pre>
<p>
Whether to prefer album gain over track gain.
</p>
<p>
If set to <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, use album gain instead of track gain if both are
available.  This keeps the relative loudness levels of tracks from the same
album intact.
</p>
<p>
If set to <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>, track mode is used instead.  This effectively leads to
more extensive normalization.
</p>
<p>
If album mode is enabled but the album gain tag is absent in the stream,
the track gain is used instead.  If both gain tags are missing, the value
of the <a class="link" href="gst-plugins-good-plugins-rgvolume.html#GstRgVolume--fallback-gain" title='The "fallback-gain" property'>fallback-gain</a>
property is used instead.
</p>
<p>Default value: TRUE</p>
</div>
<hr>
<div class="refsect2">
<a name="GstRgVolume--fallback-gain"></a><h3>The <code class="literal">"fallback-gain"</code> property</h3>
<pre class="programlisting">  "fallback-gain"            <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a>               : Read / Write</pre>
<p>
Fallback gain [dB] for streams missing ReplayGain tags.
</p>
<p>Allowed values: [-60,60]</p>
<p>Default value: 0</p>
</div>
<hr>
<div class="refsect2">
<a name="GstRgVolume--headroom"></a><h3>The <code class="literal">"headroom"</code> property</h3>
<pre class="programlisting">  "headroom"                 <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a>               : Read / Write</pre>
<p>
Extra headroom [dB].  This controls the amount by which the output can
exceed digital full scale.
</p>
<p>
Only set this to a value greater than 0.0 if signal compression/limiting of
a suitable form is applied to the output (or output is brought into the
correct range by some other transformation).
</p>
<p>
This element internally uses a volume element, which also supports
operating on integer audio formats.  These formats do not allow exceeding
digital full scale.  If extra headroom is used, make sure that the raw
audio data format is floating point (F32).  Otherwise,
clipping distortion might be introduced as part of the volume adjustment
itself.
</p>
<p>Allowed values: [0,60]</p>
<p>Default value: 0</p>
</div>
<hr>
<div class="refsect2">
<a name="GstRgVolume--pre-amp"></a><h3>The <code class="literal">"pre-amp"</code> property</h3>
<pre class="programlisting">  "pre-amp"                  <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a>               : Read / Write</pre>
<p>
Additional gain to apply globally [dB].  This controls the trade-off
between uniformity of normalization and utilization of available dynamic
range.
</p>
<p>
Note that the default value is 0 dB because the ReplayGain reference value
was adjusted by +6 dB (from 83 to 89 dB).  At the time of this writing, the
<a class="ulink" href="http://replaygain.org" target="_top">webpage</a> is still outdated and
does not reflect this change however.  Where the original proposal states
that a proper default pre-amp value is +6 dB, this translates to the used 0
dB.
</p>
<p>Allowed values: [-60,60]</p>
<p>Default value: 0</p>
</div>
<hr>
<div class="refsect2">
<a name="GstRgVolume--result-gain"></a><h3>The <code class="literal">"result-gain"</code> property</h3>
<pre class="programlisting">  "result-gain"              <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a>               : Read</pre>
<p>
Applied gain [dB].  This gain is applied to processed buffer data.
</p>
<p>
This is set to the <a class="link" href="gst-plugins-good-plugins-rgvolume.html#GstRgVolume--target-gain" title='The "target-gain" property'>target
gain</a> if amplification by that amount can be applied safely.
"Safely" means that the volume adjustment does not inflict clipping
distortion.  Should this not be the case, the result gain is set to an
appropriately reduced value (by applying peak normalization).  The proposed
standard calls this "clipping prevention".
</p>
<p>
The difference between target and result gain reflects the necessary amount
of reduction.  Applications can make use of this information to temporarily
reduce the <a class="link" href="gst-plugins-good-plugins-rgvolume.html#GstRgVolume--pre-amp" title='The "pre-amp" property'>pre-amp</a> for
subsequent streams, as recommended by the ReplayGain standard.
</p>
<p>
Note that target and result gain differing for a great majority of streams
indicates a problem: What happens in this case is that most streams receive
peak normalization instead of amplification by the ideal replay gain.  To
prevent this, the <a class="link" href="gst-plugins-good-plugins-rgvolume.html#GstRgVolume--pre-amp" title='The "pre-amp" property'>pre-amp</a> has
to be lowered and/or a limiter has to be used which facilitates the use of
<a class="link" href="gst-plugins-good-plugins-rgvolume.html#GstRgVolume--headroom" title='The "headroom" property'>headroom</a>.
</p>
<p>Allowed values: [-120,120]</p>
<p>Default value: 0</p>
</div>
<hr>
<div class="refsect2">
<a name="GstRgVolume--target-gain"></a><h3>The <code class="literal">"target-gain"</code> property</h3>
<pre class="programlisting">  "target-gain"              <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a>               : Read</pre>
<p>
Applicable gain [dB].  This gain is supposed to be applied.
</p>
<p>
Depending on the value of the <a class="link" href="gst-plugins-good-plugins-rgvolume.html#GstRgVolume--album-mode" title='The "album-mode" property'>album-mode</a> property and the
presence of ReplayGain tags in the stream, this is set according to one of
these simple formulas:
</p>
<p>
</p>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<a class="link" href="gst-plugins-good-plugins-rgvolume.html#GstRgVolume--pre-amp" title='The "pre-amp" property'>pre-amp</a> + album gain
of the stream</li>
<li class="listitem">
<a class="link" href="gst-plugins-good-plugins-rgvolume.html#GstRgVolume--pre-amp" title='The "pre-amp" property'>pre-amp</a> + track gain
of the stream</li>
<li class="listitem">
<a class="link" href="gst-plugins-good-plugins-rgvolume.html#GstRgVolume--pre-amp" title='The "pre-amp" property'>pre-amp</a> + <a class="link" href="gst-plugins-good-plugins-rgvolume.html#GstRgVolume--fallback-gain" title='The "fallback-gain" property'>fallback gain</a>
</li>
</ul></div>
<p>
</p>
<p>Allowed values: [-120,120]</p>
<p>Default value: 0</p>
</div>
</div>
<div class="refsect1">
<a name="gst-plugins-good-plugins-rgvolume.see-also"></a><h2>See Also</h2>
<a class="link" href="gst-plugins-good-plugins-rglimiter.html#GstRgLimiter"><span class="type">GstRgLimiter</span></a>, <a class="link" href="gst-plugins-good-plugins-rganalysis.html#GstRgAnalysis"><span class="type">GstRgAnalysis</span></a>
</div>
</div>
<div class="footer">
<hr>
          Generated by GTK-Doc V1.18</div>
</body>
</html>