[Live-devel] mp3 ADUs

Matthew Romaine Matthew.Romaine at jp.sony.com
Wed Mar 9 18:27:08 PST 2005

Hi Ross,

I've been trying out the ADU fix you sent last week, but I still have a 
question about some of the output. While the stream plays for a few 
seconds more than before, it still eventually stops due to continuous 
buffer dropping. While I continue to debug the issue, I thought I'd 
share some observations to see if it might trigger a suggestion.

-) StreamRead in VLC's livedotcom.cpp still gets called every few 
frames (albeit seemingly sporadically) with a pts difference of 0 
(compared to the previous frame) after a "Scale: x" request is sent 
with x > 1.0.  Should StreamRead really be called with a seemingly 
redundant frame?

-) the mad library loaded for decoding mp3s in the VLC client returns a 
number of errors after trickplay has been initiated, most notably "bad 
main_data_begin pointer", "bad audio data length", and "Huffman data 
overrun". My hunch is that the second error, which according to the mad 
library occurs when "channel->part2_3_length - part2_length < 0", is 
triggered by a miscalculation somewhere when handling ADUs.  If these 
errors are expected at times due to the nature of frame skipping, 
please let me know, as then it would seem VLC should be set to be less 
strict in this situation ...

Does one of your test clients re-convert ADU frames back to mp3 so that 
one might output to a file to do a bit-level comparison?


More information about the live-devel mailing list