Bugzilla – Bug 5284
SlimServer's database cannot read some tags in some ogg files.
Last modified: 2011-11-06 23:24:55 UTC
System Info: Gateway, P4, 1.97 GHz, 1.25 GB of RAM, Win 2K SP4 ENU SlimServer Version: 7.0a1 - 12587 - Windows 2000 - EN - cp1252 Perl Version: 5.8.8 MSWin32-x86-multi-thread MySQL Version: 5.0.22-community-nt Steps to Reproduce: 1. Use Mp3Tag to add some values to some tags in a few ogg files. 2. Add these tracks to the PlayList. 3. Open SQLyog and look at all these tracks. 4. Notice for two of them, the titilts are missing ".ogg", the year is "0" instead of "2007", track numbers are "NULL"s instead of "11" and "15", etc.
Created attachment 2107 [details] Correct data in Mp3Tag, which is used to add the tags' value.
Created attachment 2108 [details] The data for two tracks (highlighted in red) are wrong.
Created attachment 2109 [details] One of the tracks in the bug.
Created attachment 2110 [details] Another track with problem in this bug.
New Track: [file:///Users/fishbone/testmusic/ogg_16_08000_1_440_10.ogg] [20:32:53.2596] Slim::Schema::newTrack (811) readTags is 1 [20:32:53.2599] Slim::Music::Info::typeFromPath (1297) ogg file type for /Users/fishbone/testmusic/ogg_16_08000_1_440_10.ogg [20:32:53.3393] Ogg::Vorbis::Header::PurePerl::_calculateTrackLength (364) Warning: Ogg::Vorbis::Header::PurePerl: Didn't find an ogg header - invalid file? [20:32:53.3397] Slim::Formats::Ogg::getTag (78) Warning: Length for Ogg file: /Users/fishbone/testmusic/ogg_16_08000_1_440_10.ogg is 0 - skipping. [20:32:53.3401] Slim::Music::Info::guessTags (603) Guessing tags for: file:///Users/fishbone/testmusic/ogg_16_08000_1_440_10.ogg [20:32:53.3406] Slim::Music::Info::guessTags (642) Using format "(ARTIST - ALBUM) TRACKNUM - TITLE" = /\(([^\/]+) - ([^\/]+)\) (\d+) - ([^\/]+)/... [20:32:53.3409] Slim::Music::Info::guessTags (642) Using format "/ARTIST/ALBUM/TRACKNUM - TITLE" = //([^\/]+)/([^\/]+)/(\d+) - ([^\/]+)/... [20:32:53.3412] Slim::Music::Info::guessTags (642) Using format "/ARTIST/ALBUM/TRACKNUM TITLE" = //([^\/]+)/([^\/]+)/(\d+) ([^\/]+)/... [20:32:53.3416] Slim::Music::Info::guessTags (642) Using format "/ARTIST/ALBUM/TRACKNUM. TITLE" = //([^\/]+)/([^\/]+)/(\d+)\. ([^\/]+)/... [20:32:53.3419] Slim::Music::Info::plainTitle (458) Plain title for: file:///Users/fishbone/testmusic/ogg_16_08000_1_440_10.ogg [20:32:53.3423] Slim::Music::Info::plainTitle (485) is ogg 16 08000 1 440 10
seems to be a problem due to missing header and stream structure for the supplied ogg files.
this works, but I'm not sure why we need to look further back into the file for the info. How was this file created? which ogg version? Index: lib/Ogg/Vorbis/Header/PurePerl.pm =================================================================== --- lib/Ogg/Vorbis/Header/PurePerl.pm (revision 15796) +++ lib/Ogg/Vorbis/Header/PurePerl.pm (working copy) @@ -331,9 +331,9 @@ # Bug 1155 - Seek further back to get the granule_position. # However, for short tracks, don't seek that far back. - if (($data->{'filesize'} - $data->{'INFO'}{'offset'}) > ($data->{'INFO'}{'blocksize_0'} * 2)) { + if (($data->{'filesize'} - $data->{'INFO'}{'offset'}) > ($data->{'INFO'}{'blocksize_0'} * 4)) { - $len = $data->{'INFO'}{'blocksize_0'} * 2; + $len = $data->{'INFO'}{'blocksize_0'} * 4; } else { $len = $data->{'INFO'}{'blocksize_0'}; }
Wallace: Have files with this issue been found in the wild? KDF: What do you think the risk of this patch is?
the risk is that I don't know why it needs to be done, nor what it does for every other ogg file out there :)
Punting to 7.0.1, when we'll have more time to look at this. Wallace, please feel free to comment in the mean time.
Pinging anybody: Do people in general like to add tags and values to ogg files? Or, do they like to add tags to any music file at all? Personally, I find it really fun to add my own tags and stuff. They make it easier to sort songs my way.
Wallace, Andy says this area has been rewritten. Could you retest in 7.1 when you get a chance?
Tried with 7.1, build 20420, and a 7.2 build. This problem is still seen.
When additional users express an interest in this bug we will reconsider it.
bugs formerly assigned to Wallace
Unassigned bugs cannot have a priority.