[ID3 Dev] RVAD -> RVA2

Ben Allison benski at winamp.com
Thu Jan 18 11:45:31 PST 2007


We use ReplayGain, which standardizes the reference volume, hearing 
threshold filtering and storage mechanism.  For ID3v2.3+, it is stored 
in TXXX frames with descriptions "replaygain_track_gain", 
"replaygain_album_gain", "replaygain_track_peak" and 
"replaygain_track_album". 

The old RVAD tag seems to be ill-defined and broken - the meaning of the 
value stored seems to be up to the program that wrote it!  I would be 
surprised if you even ran across a file with this information. 

-Ben Allison

Jud White wrote:
> Turned up some information, but still need the gaps filled in.  Please help, anybody :)
>
> >From the ID3v2.3 spec on RVAD:
> The 'bits used for volume description' field is normally $10 (16 bits) for MPEG 2 layer I, II and III and MPEG 2.5.
>
> One interpretation is the adjustment data is directly related to the way 16-bit audio is stored (let's assume we're talking about 16-bit for simplicity).  I personally don't see any other possibilities for interpretation on this, although I'd be fine with asking any major implementor what they did.  Nice to see Winamp fixed their Compliance issues, maybe they could shed some light on RVAD (if they use it).
>
> What I turned up (probably most of you know this already) is that each bit in digital audio is capable of representing roughly 6 dB (specifically, 20*log10(2) dB).  Therefore, 16-bit audio is capable of representing 96 dB.  Initially I was confused - how can 1 bit represent 6dB, and even if it does how does it increase linearally instead of exponentially?  Quantization, or in other words, the curve isn't a curve it's a lot of little steps.  As you increase bits not only does the max dB you can represent go up but the steps get smaller.  Ok, I'm sure most of you know this, I'm writing to help myself understand. :)  If someone wants to flesh out this description please do.
>
> Here's a good article: http://www.tc.umn.edu/~erick205/Papers/paper.html
>
> My take:  RVAD/RVA adjustment is likely implemented the same way as n-bit audio.  If it is, then dB = value/(2^n - 1) * (6 * n).  e.g., in 16-bit audio: dB = value/65535 * 96.
>
> Jud
>
>   


---------------------------------------------------------------------
To unsubscribe, e-mail: id3v2-unsubscribe at id3.org
For additional commands, e-mail: id3v2-help at id3.org



More information about the ID3v2 mailing list