[MP3 ENCODER] Potential LAME Xing header bug

2002-12-16 Thread Bitt Faulk
I was recently trying to track down why it was that LAME's --nogap 
option implicitly disabled Xing headers.  Turning them back on was 
obvious, but it reintroduced a gap, which seemed odd, but which was, I 
assume, why they were turned off in the first place.

In trying to figure out the cause of the reintroduced gap, I noticed 
that many mp3 tools that understood Xing headers claimed that the one 
generated by LAME was invalid.  Upon further searching, I noticed that 
they claimed that even for mp3s created by LAME without --nogap.

So I started trying to figure out why the header was invalid, and it 
looks as if the Xing header that LAME generates reports one too few 
frames.  My thought is that it fails to take itself into account, but 
maybe there's a different off-by-one error somewhere.  I'm sorry to say 
that I don't have the free time available to walk through the entirety 
of the related code.  Anyway, it would appear that the gap is being 
introduced because players assume that the Xing header's information is 
correct and simply don't play the last frame.  Fixing the number of 
frames in the header (even though that potentially slightly corrupts the 
TOC) fixes the gap, at least in my test cases.

In order to test this theory for yourselves, reenable Xing headers for 
nogapped files (by removing the if-clause at frontend/lame.c:668). 
Create some nogapped mp3s using this new LAME.  They should seem to have 
a gap in some (most?) players.  Then fix the Xing header by running it 
through mp3tool (http://empeg-hijack.sourceforge.net/mp3tool.html), for 
example.  Then play it again.  The gaps should be gone.

Again, if you use a tool to examine the Xing header on even non nogapped 
mp3s, you should see that it's corrupt on them as well.  So I believe 
that Xing headers are currently broken (albeit slightly) in LAME. 
Putting a `+1' in libmp3lame/VbrTag.c:910 seems to patch the problem, 
but that doesn't take into account the additional frame when computing 
the TOC.

If someone could take a better look at the Xing header generation code, 
I'd appreciate it.  Thanks.

-Bitt

___
mp3encoder mailing list
[EMAIL PROTECTED]
http://minnie.tuhs.org/mailman/listinfo/mp3encoder


Re: [MP3 ENCODER] time complexity of MP3 encoder

2002-12-16 Thread Gabriel Bouvigne
> hai there, does anyone know what is the time complexity of MP3 encoder
> algorithm such as Lame or the Fhg? i mean what is the big O number? is it
> O(n), O(n2) or else? could someone tell me how to measure this up? thanx
> alot

Encoder complexity is roughly linear related to the number of input samples.
Some parts of your track might require more time than others to encode, but
it will decrease after.

___
mp3encoder mailing list
[EMAIL PROTECTED]
http://minnie.tuhs.org/mailman/listinfo/mp3encoder