Package: pacpl
Version: 4.0.5-3
Severity: minor
Tags: patch

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

pacpl doesn't interpret tags like title, author etc. in flac files (while it
properly reads TITLE, AUTHOR etc.)
I reckon tag labels should be uppercase, but I very frequently find files
that get it worng and use lowercase ones. The attached patch makes pacpl
deal with them.

Cheers,

Luca

- -- System Information:
Debian Release: squeeze/sid
  APT prefers unstable
  APT policy: (995, 'unstable'), (991, 'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 2.6.32-toshiba (SMP w/2 CPU cores)
Locale: LANG=it_IT.UTF-8, LC_CTYPE=it_IT.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash

Versions of packages pacpl depends on:
ii  libaudio-flac-header-perl     2.3-1      Perl interface to FLAC file header
ii  libaudio-musepack-perl        0.7-2      object-oriented interface to Musep
ii  libaudio-wma-perl             1.3-1      perl extension for reading WMA/ASF
ii  libcddb-get-perl              2.27-1     Perl interface to read the CDDB en
ii  libmp3-tag-perl               1.11-1     Module for reading tags of MP3 aud
ii  libmp4-info-perl              1.12-2.1   Fetch info from MPEG-4 files
ii  libogg-vorbis-header-perl     0.03-3+b1  perl interface to Ogg Vorbis infor
ii  perl                          5.10.1-8   Larry Wall's Practical Extraction 

Versions of packages pacpl recommends:
ii  cdparanoia      3.10.2+debian-9          audio extraction tool for sampling
ii  faad            2.7-4                    freeware Advanced Audio Decoder pl
ii  ffmpeg          5:0.5+svn20091129-0.0    audio/video encoder, streaming ser
ii  flac            1.2.1-2+b1               Free Lossless Audio Codec - comman
ii  flake           0.10-3                   Alternative encoder for the Free L
ii  mplayer         1:1.0.rc2svn20091129-0.0 The Ultimate Movie Player For Linu
ii  mppenc          1.16-1                   Musepack lossy audio codec encoder
ii  sndfile-program 1.0.20-3                 Sample programs that use libsndfil
ii  sox             14.3.0-1.1               Swiss army knife of sound processi
ii  speex           1.2~rc1-1                The Speex codec command line tools
ii  twolame         0.3.12-1                 MPEG Audio Layer 2 encoder (comman
ii  vorbis-tools    1.2.0-6                  several Ogg Vorbis tools
ii  wavpack         4.60.1-1                 an audio codec (lossy and lossless

Versions of packages pacpl suggests:
pn  dolphin                       <none>     (no description available)
pn  kommander                     <none>     (no description available)
pn  konqueror                     <none>     (no description available)

- -- no debconf information

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (GNU/Linux)

iEYEARECAAYFAksqDIoACgkQ+AQB36CPPlq0NQCdEn/4xX73UY6aVc12FkBKQ/fq
O9sAoKEgr8ruUxN/xZ9WJkY7LL5TGogG
=NysG
-----END PGP SIGNATURE-----
--- a/pacpl-4.0.5/pacpl 2009-12-17 11:20:35.000000000 +0100
+++ b/pacpl-4.0.5/pacpl 2009-12-17 02:23:56.105250724 +0100
@@ -2158,13 +2158,41 @@
        case /flac|fla/ {
                             my $flac_tag = $tag_module->new($in_file)->tags();
 
-                               $tag_name{title}   = $flac_tag->{TITLE}       
if $flac_tag->{TITLE};
-                               $tag_name{track}   = $flac_tag->{TRACKNUMBER} 
if $flac_tag->{TRACKNUMBER};
-                               $tag_name{artist}  = $flac_tag->{ARTIST}      
if $flac_tag->{ARTIST};
-                               $tag_name{album}   = $flac_tag->{ALBUM}       
if $flac_tag->{ALBUM};
-                               $tag_name{comment} = $flac_tag->{DESCRIPTION} 
if $flac_tag->{DESCRIPTION};
-                               $tag_name{year}    = $flac_tag->{DATE}        
if $flac_tag->{DATE};
-                               $tag_name{genre}   = $flac_tag->{GENRE}       
if $flac_tag->{GENRE};
+                               if ($flac_tag->{title}) {
+                                   $tag_name{title}   = $flac_tag->{title};
+                               } elsif ($flac_tag->{TITLE}) {
+                                   $tag_name{title}   = $flac_tag->{TITLE};
+                               }
+                               if ($flac_tag->{tracknumber}) {
+                                   $tag_name{track}   = 
$flac_tag->{tracknumber};
+                               } elsif ($flac_tag->{TRACKNUMBER}) {
+                                   $tag_name{track}   = 
$flac_tag->{TRACKNUMBER};
+                               }
+                               if ($flac_tag->{artist}) {
+                                   $tag_name{artist}   = $flac_tag->{artist};
+                               } elsif ($flac_tag->{ARTIST}) {
+                                   $tag_name{artist}   = $flac_tag->{ARTIST};
+                               }
+                               if ($flac_tag->{album}) {
+                                   $tag_name{album}   = $flac_tag->{album};
+                               } elsif ($flac_tag->{ALBUM}) {
+                                   $tag_name{album}   = $flac_tag->{ALBUM};
+                               }
+                               if ($flac_tag->{description}) {
+                                   $tag_name{comment}   = 
$flac_tag->{description};
+                               } elsif ($flac_tag->{DESCRIPTION}) {
+                                   $tag_name{comment}   = 
$flac_tag->{DESCRIPTION};
+                               }
+                               if ($flac_tag->{date}) {
+                                   $tag_name{year}   = $flac_tag->{date};
+                               } elsif ($flac_tag->{DATE}) {
+                                   $tag_name{year}   = $flac_tag->{DATE};
+                               }
+                               if ($flac_tag->{genre}) {
+                                   $tag_name{genre}   = $flac_tag->{genre};
+                               } elsif ($flac_tag->{GENRE}) {
+                                   $tag_name{genre}   = $flac_tag->{GENRE};
+                               }
 
                             return 0;
                        }

Reply via email to