[ID3 Dev] RVAD -> RVA2
Mitchell S. Honnert
mitch at honnert.com
Thu Jan 18 13:07:24 PST 2007
For what it's worth...
When I implemented the RVAD frame for my ID3 library, I found the iTunes
implemented it, so I used its implementation as a guide. (In spite of
iTunes' mangling of ID3v4.) The iTunes UI has a "Volume Adjustment" slider
which goes from -100% to +100% with tic marks at every 20%. A -20% in
iTunes results in the Right Volume and the Left Volume fields being
"Decrement 12850". -40% was "Decrement 26471". At the time, I scratched my
head a bit, wondering why the frame would need these large values, but I
didn't really delve into it too far.
- Mitchell S. Honnert
----- Original Message -----
From: "Jud White" <jwhite at cdtag.com>
To: <id3v2 at id3.org>
Sent: Thursday, January 18, 2007 2:29 PM
Subject: Re: [ID3 Dev] RVAD -> RVA2
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
---------------------------------------------------------------------
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