Support and General Use > Audio Playback, Database and Playlists

ipod video hangs on certain mp2 files, maybe bad format or id3 tags?

(1/2) > >>

rockport:
Hi,

I'm using the latest nightly release of rockbox with the default
settings on a 30gb ipod video.

For some time, I noticed that rockbox hangs on certain files. These
are mp2 files recorded from digital radio (DVB-S) using vdr on
Linux. The mp2 files are edited (cut) on Linux with mp3DirectCut
(running under Wine). I wrote a script that gets the
playlist/description from the radio station's web page and inserts it
in the mp2 file using the Linux eyeD3 application, limiting the title
text to 255 chars max.

Anyway, I did a test on a file that was causing rockbox to hang. I
edited the id3 tags in iTunes on a mac, just replacing a single letter
and saving the mp2 file back to the rockbox. After that, the file was
slightly larger and no longer caused rockbox to hang.

So, I am assuming the problem was an invalid mp2 file length or maybe
an invalid id3tag formatting that was corrected by iTunes. Rockbox should
still not hang in this case, but I'm not sure how easy it is to fix this.

In the mean time, does anyone know of an easy way to verify and/or
correct the format of mp2 files?

Lear:

--- Quote from: rockport on December 15, 2006, 07:01:16 PM ---So, I am assuming the problem was an invalid mp2 file length or maybe
an invalid id3tag formatting that was corrected by iTunes. Rockbox should
still not hang in this case, but I'm not sure how easy it is to fix this.

--- End quote ---

Do you have an example file, preferably not too large, that I could take a look at?

rockport:
I could post an example, but it may not be necessary. I did some more tests on plain mp3 files and found that setting an id3v2 title longer than about 132 chars causes the ipod video to hang when playing it. (It could be that a buffer with length 128 is overflowing, and since this is C code, you might not notice it right away until it overflows more than a few bytes).

I did notice a "char temp_buf[128]" in gwps-common.c that deals with displaying id3 tags, but I don't know if this is the cause. I suspect it is something like that though. There probably needs to be a check for buffer overflow there somewhere.

I used the eyeD3 application to set the title, but I noticed the same problem when using the id3v2 application.
The titles are sometimes rather long because I get the description of a broadcast from a web page. I thought it would be enough to limit the length to 256 or so chars, although according to the id3v2 standard there should be no limit, as far as I know.

Lear:
There is a bug report about long tags causing problems, but testing in the simulator and looking at the code hasn't really given me any clues as to what the problem might be. I guess it is time to take a look at what happens on a device... :)

temp_buf shouldn't be the problem here, as it is mainly used to format short stuff, like numbers.

Lear:
I just fixed a bug that caused long strings to freeze Rockbox when scrolled. Maybe you could test it to see if it fixes your problem?

Navigation

[0] Message Index

[#] Next page

Go to full version