www.mikrocontroller.net

Mikrocontroller.net Forum WinARM / Yagarto / ARM-GCC > Helix MP3 decoder

Posted by Jerry Milner (jrmymllr)
on 13.06.2008 20:39
Hi, this might be a little off topic, but since there is an MP3 player
project on this website using Helix, I thought someone might know the
answer.  In summary, Helix won't play many MP3 files.  I have 1 or two
out of several I've tested that will play, but the others never seem to
find sync or have invalid frame headers.

As I'm watching what is occurring thru a debug session, normally what
happens is MP3FindSyncWord returns a non-zero offset value a few times,
MP3Decode will return ERR_MP3_MAINDATA_UNDERFLOW or
ERR_MP3_INVALID_FRAMEHEADER a few times, then it starts decoding and
spitting out PCM.  However, with some MP3 files, MP3FindSyncWord returns
offset values of a few 10's to several hundred, and MP3Decode returns
ERR_MP3_INVALID_FRAMEHEADER over and over again.  It's like the file
format is incorrect, but these files play fine on my computer with
Winamp.

Any idea what is going on?  I've tried taking pieces of MP3's near the
middle of the file, but it won't sync on these, either.