[Bug 753275] Opus: playback gain always relative to EBU R128 level (-23db LUFS), must be played 5db louder to match ReplayGain level (-18db LUFS) when using ReplayGain

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Mon May 1 19:28:46 UTC 2017


https://bugzilla.gnome.org/show_bug.cgi?id=753275

--- Comment #15 from Nikolaus Waxweiler <madigens at gmail.com> ---
I'm no expert here, but opusinfo tells me that while R128_TRACK_GAIN is 0,
playback gain is -13.9922 dB, so I guess it's correct? 


I read somewhere that since all (?) players honor the playback gain but not
necessarily the tag, the Opus people wanted the gain encoded mainly into the
playback gain field.

Here's the most current RFC I could find:
https://tools.ietf.org/rfc/rfc7845.txt

Page 14, regarding the output gain field:
"""
       Players and media frameworks SHOULD apply it by default.  If a
       player chooses to apply any volume adjustment or gain
       modification, such as the R128_TRACK_GAIN (see Section 5.2), the
       adjustment MUST be applied in addition to this output gain in
       order to achieve playback at the normalized volume.
"""

Page 24 talks about the tags:
"""
   If present, R128_TRACK_GAIN and R128_ALBUM_GAIN MUST correctly
   represent the R128 normalization gain relative to the 'output gain'
   field specified in the ID header.  If a player chooses to make use of
   the R128_TRACK_GAIN tag or the R128_ALBUM_GAIN tag, it MUST apply
   those gains _in addition_ to the 'output gain' value.  If a tool
   modifies the ID header's 'output gain' field, it MUST also update or
"""

If I understand correctly, you need to add output gain and track/album gain and
then add 5 to that to get to what ReplayGain does.


Also, I think you should expand on your comment on the 5 a bit. Something like
"We normalize to a reference volume of -18db LUFS because that's what early
ReplayGain implementations did; the Opus file format instead defers to the EBU
R128 standard of volume normalization which normalizes to -23db LUFS, so we
have a difference of 5db that we need to add to be consistent with the
ReplayGained content in the wild."

-- 
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