Mailing List archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[vdr] Re: MP3 0.32 excessive decoding errors



On 21 Jan 2002 SemiSchwabe <SemiSchwabe@Brutzel.de> wrote:

> Stefan Huelswitt wrote:
>>
>>1.) Enable DEBUG (mp3-core.h, remove // in front of #define
>>DEBUG), recompile, watch output on console. What exact decoding
>>error does you get?
>>
> Then I get an output like:
> 
> quotestr: old=*.m3u new=*.m3u
> quotestr: old=lwd/mp3 new=/lwd/mp3
> scandir: command 'find "/lwd/mp3" -follow -type f -iname "*.m3u" 
> -maxdepth 1 2>/dev/null | sort -df'
> etc...
> instant: load
> instant: file /lwd/mp3/4 Gewinnt/01 - Die fanta4 - 4Gewinnt
> vdr[236]: MP3: playback started with instant playlist /lwd/mp3/4 
> Gewinnt/01 - Die fanta4 - 4Gewinnt.mp3
> vdr[275]: mp3 output thread started (pid=275)
> vdr[276]: mp3 input thread started (pid=276)
> vdr[276]: ERROR: excessive decoding errors, aborting file /lwd/mp3/4 
> Gewinnt/01 - Die fanta4 - 4Gewinnt.mp3
> vdr[276]: mp3 input thread ended (pid=276)
> vdr[275]: mp3 output thread ended (pid=275)
> 
> But I donīt think that this ouput is more informative than the last.

Yes, this is true, but this isn't the complete log. Obviously
mp3-dvb.c wasn't recompiled. I get the following:

scandir: command 'find "/mnt/videodata/mp3/test" -follow -type f   -maxdepth 1 2>/dev/null | sort -df'
instant: load
instant: file test/01-Die_Fantastischen_Vier-Vier_Gewinnt.mp3
MP3: inital trickmode=2
mp3: playlist has 1 files, first is test/01-Die_Fantastischen_Vier-Vier_Gewinnt.mp3
mp3: shuffle order 0
mp3: heartbeat buffer=0
mp3: scale stats clipped=0 peak_clip=0.000000 peak=0.000000
mp3: playing /mnt/videodata/mp3/test/01-Die_Fantastischen_Vier-Vier_Gewinnt.mp3 mp3: sending cmd 1
mp3: found mpgcmd 1 (mode=1, state=0)
mp3: starting play
mad: initialy found id3 tag at EOF
mad: id3-scan, decode header error: lost synchronization
mad: id3-scan, decode header error: forbidden bitrate value
mad: id3-scan, decode header error: forbidden bitrate value
[much lines deleted]
mad: id3-scan, decode header error: forbidden bitrate value
mad: scanned 20 frames
mad: constant birate
cache: caching infos for /mnt/videodata/mp3/test/01-Die_Fantastischen_Vier-Vier_Gewinnt.mp3
mad: scanned infos: Total=03:52 Size=3725387 Frames=8913 SampleFreq=44100 Channels=2 SMode=2 Bitrate=128000 Title='Vier Gewinnt' Artist='Die Fantastischen Vier' Album='4 Gewinnt' Year=-1
mad: decode hdr error, frame=0: lost synchronization
mad: decode hdr error, frame=0: forbidden bitrate value
mad: decode hdr error, frame=0: forbidden bitrate value
mad: decode hdr error, frame=0: forbidden bitrate value
mad: decode hdr error, frame=0: forbidden bitrate value
mad: decode hdr error, frame=0: forbidden bitrate value
mad: decode hdr error, frame=0: forbidden bitrate value
mad: decode hdr error, frame=0: forbidden bitrate value
mad: decode hdr error, frame=0: forbidden bitrate value
mad: decode hdr error, frame=0: forbidden bitrate value
mp3: eof or error
mp3: end of playlist

What you sees is, that libmad wasn't able to decode a single
frame at the beginning (frame counter stays 0).

There must be some junk at the beginning. Looking at the file:

# hexdump -n 200 -c /mnt/videodata/mp3/test/01-Die_Fantastischen_Vier-Vier_Gewinnt.mp3 
0000000   I   D   3 003  \0  \0  \0  \0 001   )   C   O   M   M  \0  \0
0000010  \0   #  \0  \0  \0  \0  \0  \0   M   u   s   i   c   M   a   t
0000020   c   h   _   P   r   e   f   e   r   e   n   c   e  \0   E   x
0000030   c   e   l   l   e   n   t   T   I   T   2  \0  \0  \0  \r  \0
0000040  \0  \0   V   i   e   r       G   e   w   i   n   n   t   T   R
0000050   C   K  \0  \0  \0 003  \0  \0  \0   0   1   T   P   E   1  \0
0000060  \0  \0 027  \0  \0  \0   D   i   e       F   a   n   t   a   s
0000070   t   i   s   c   h   e   n       V   i   e   r   T   A   L   B
0000080  \0  \0  \0  \n  \0  \0  \0   4       G   e   w   i   n   n   t
0000090   T   C   O   N  \0  \0  \0  \b  \0  \0  \0   H   i   p       H
00000a0   o   p   T   L   E   N  \0  \0  \0  \a  \0  \0  \0   2   3   2
00000b0   0   0   0  \0  \0   2   3   2   6   9   8  \0  \0  \0  \0  \0
00000c0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0
*
0000820  \0  \0  \0  \0  \0  \0  \0  \0   K 200  \0  \0  \b  \0  \0  \t
0000830   p  \0  \0 001  \0  \0 001   .  \0  \0  \0      \0  \0   % 300
0000840  \0  \0 004 377 377 377 377 377 377 377 377 377 377 377 377 377
0000850 377 377 377 377 377 377 377 377 377 377 377 377 377 377 377 377

I guess that we see is a non-standard ID3 tag and some
MusicMatch preferences, too. This is followed by approx 2k zero
bytes (I think the real mp3 starts near 0x820). So libmad isn't
able to find a valid frame within 10 atempts.

For me, this a corrupted mp3 file created with a buggy software.
No need to worry about.

-- 
Stefan Huelswitt
huels@iname.com  | http://home.pages.de/~nathan



Home | Main Index | Thread Index