Posted by: gryning
VBR times - 13/02/2002 07:54
VBR files ripped with musicamatch jukebox and fraunhofer codec when played back show incorrect track length...
c^
c^
[MP3 ENCODER] FhG VBR header
Mathew Hendry [email protected]
Mon, 22 Jan 2001 13:01:13 -0000
> From: "Mathew Hendry" <[email protected]>
> Sent: Friday, January 19, 2001 11:20 AM
>
> Anyone know the format of the VBR header added by FhG coders? It isn't the
> same as the Xing tag - the only player/decoder I have that recognises it
is
> MusicMatch Jukebox.
>
> It's marked as a 160kbit/s stereo frame, and contains the string "VBRI" at
> offset 0x24.
I had a closer look at these tags over the weekend.
On all the files I looked at (30 or so) the header is set as 160kbit/s, stereo, even if the rest of the MP3 is joint stereo or other. I think that makes FhG's VBR encoder non-compliant.
Here's a breakdown of the frame structure - some stuff (marked ?) I'm not sure about.
0x0000 \
0x0001 |_______ MPEG header (160kbit/s, stereo)
0x0002 |
0x0003 /
0x0004 0x00 empty
...... .... ... .....
0x0023 0x00 empty
0x0024 0x56 'V'
0x0025 0x42 'B'
0x0026 0x52 'R'
0x0027 0x49 'I'
0x0028 0x00 ? version
0x0029 0x01 ? version
0x002a 0x09 ? version
0x002b 0x31 ? version
0x002c 0x00 ? quality (high byte)
0x002d quality (1-100)
0x002e \
0x002f |_______ file length in bytes
0x0030 |
0x0031 /
0x0032 \
0x0033 |_______ file length in frames
0x0034 |
0x0035 /
0x0036 \_______ number of seek offsets
0x0037 /
0x0038 0x00 ?
0x0039 0x01 ?
0x003a 0x00 ?
0x003b 0x02 ?
0x003c \_______ offset "stride" (number of frames between offsets)
0x003d /
0x003e \_______ seek offset 0 (from beginning of file)
0x003f /
0x0040 \_______ seek offset 1 (from previous offset)
0x0041 /
...... .... ... .....
0x0208 \_______ seek offset n (from previous offset)
0x0209 /
For smallish files, the seek offsets seem to be straightforward byte
offsets. For larger files it's using something different - not sure what yet.