Old 5th July 2008, 16:26   #1
MkFly
Junior Member
 
Join Date: May 2008
Posts: 12
Problems with Foobar2000's "Fix MP3 VBR Header" and Winamp

Here's my original post on the foobar forums (user: antihero). http://www.hydrogenaudio.org/forums/...howtopic=64405
Quoting myself:
Quote:
So ... I had a few albums in VBR that wouldn't play correctly on my cheap iPod, so I used the "Fix VBR Header" option in foobar to attempt to repair them.

They do now play on my iPod, but the problem is that Winamp now reports their bitrate strangely. Earlier, with the "pre-fixed" headers, the bitrate would show correctly in Winamp and foobar. Now, foobar still shows the correct bitrate (around, say, 220Kbps), but Winamp reports strange values like 80 or 32. What's up with this? Is this a Winamp problem or a foobar problem?

If it's a Winamp problem, how come it showed them correctly before? It also shows the correct bitrate for all of my other files.

Thanks for any help.
Part of the problem/fix I found:

Quote:
Well, here's what I've found after studying the changes that foobar does to files:
LAME 3.97 itself writes part of the Xing VBR header as follows:
code:
4C 41 4D 45 33 2E 39 37 20 04 C3
L A M E 3 . 9 7


And after applying "Fix MP3 VBR Header" it is changed to:
code:
4C 41 4D 45 33 2E 39 37 20 01 C3
L A M E 3 . 9 7


Note that hex "04 C3" at the end has been changed to "01 C3" This appears to be where the problem is. While foobar still has no problem detecting the VBR bitrate, Winamp then struggles with it. After manually changing that single byte in VBR "fixed" files, Winamp then reports the correct VBR bitrate!
Also to add: If I take a file that was working properly (eg. had not been "fixed"), and change that value from 04 to 01 ... the VBR bitrate reporting in Winamp breaks. So I'm sure that is where the problem is.

My question is ... is this entirely a foobar problem? Or should Winamp be able to make sense of this change?
MkFly is offline   Reply With Quote
Old 5th July 2008, 17:35   #2
MkFly
Junior Member
 
Join Date: May 2008
Posts: 12
Well ... looks like it was entirely foobar's problem:
Quote:
Thanks for your thorough debugging. According to the LAME documentation here, a value of 01 means CBR, and values of 03-06 mean VBR, so foobar2000 appears to be doing it wrong according to the spec.

It's been noted and I imagine a fix will come soon.
MkFly is offline   Reply With Quote
Old 5th July 2008, 17:39   #3
Rocker
Hiding in plain sight (mod)
 
Join Date: Jun 2000
Location: Melbourne, Australia
Posts: 9,910
peter will fix it.(if he hasn't already)
Rocker is offline   Reply With Quote
Old 5th July 2008, 17:46   #4
MkFly
Junior Member
 
Join Date: May 2008
Posts: 12
Not sure now if Winamp needs an update ... it looks like foobar was slapping the wrong byte in there, effectively telling Winamp that it was CBR file.

So Winamp was only reporting was it was told. :P Hopefully it will get fixed in the next version of FB2k. :P
MkFly is offline   Reply With Quote
Old 6th July 2008, 10:40   #5
The_Seeker
Junior Member
 
The_Seeker's Avatar
 
Join Date: Feb 2008
Location: Buxton, UK
Posts: 13
Fixed now - http://www.hydrogenaudio.org/forums/...1&#entry575151
The_Seeker is offline   Reply With Quote
Reply
Go Back   Winamp & Shoutcast Forums > Winamp > Winamp Technical Support

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump