Package: slimserver
Version: 6.2.1-2
Tags: patch

There appear to be two problems with getting SlimServer to recognize
FLACs with multiple tracks (I like to rip CDs into a single FLAC with
a separate CUE sheet).

First, SlimServer ignores songs which don't have an associated
byte-size.  This is the case when playing a song from a multi-track
FLAC file.  The patch below fixes this problem by not ignoring the
song as long as it has either a byte-size or a duration.

Second, SlimServer fails to properly track the TITLE tags in the CUE
sheet.  Specifically, in a CUE sheet with multiple tracks, it will
just use the last track name as the album title.  Patch below fixes
this by storing the TITLE value in $tracks->{$currtrack}->{'TITLE'}
once the first TITLE tag has been processed (which serves as the album
title).

Regards,

        --david

--- SlimServer_v6.2.1/Slim/Player/Source.pm     2005-11-14 17:12:33.000000000 
-0700
+++ SlimServer_v6.2.1-davidm/Slim/Player/Source.pm      2006-03-12 
19:19:23.000000000 -0700
@@ -1528,7 +1528,7 @@
                                return undef;
                        }
 
-                       if (!$size || !$duration) {
+                       if (!$size && !$duration) {
 
                                $::d_source && msg("openSong: not bothering 
opening file with zero size or duration\n");
                                errorOpening($client);
--- SlimServer_v6.2.1/Slim/Formats/Parse.pm     2005-11-14 17:12:32.000000000 
-0700
+++ SlimServer_v6.2.1-davidm/Slim/Formats/Parse.pm      2006-03-13 
08:46:04.000000000 -0700
@@ -322,8 +322,11 @@
                $line =~ s/\s*$//;
 
                if ($line =~ /^TITLE\s+\"(.*)\"/i) {
-                       $album = $1;
-
+                       if (defined $currtrack) {
+                               $tracks->{$currtrack}->{'TITLE'} = $1;
+                       } else {
+                               $album = $1;
+                       }
                } elsif ($line =~ /^PERFORMER\s+\"(.*)\"/i) {
                        $artist = $1;
 


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to