Bugzilla – Bug 619
[PATCH] Add support for iTunes compilations
Last modified: 2008-12-18 11:52:06 UTC
Oops... Sorry for the first bugzilla-entry (still strugling with the keyboard of my new macintosh). I have attached a patch against 5.3.1 that will group all songs in the iTunes library having the "Compilation" element set to 1 as a "pseudo" artist named "Compilations". This feature is configurable via the iTunes-Settings-page. The advantage of grouping compilations is that your artist list doesn't "explode" if you have lots of compilations, the disadvantage is that you can no longer search for a artist from the compilations. What would be nice is to have the "Compilations" artist at the top of the artist list (right underneath "All Albums") but since I'm a total SlimServer and Perl novice I don't know if that is possible. Can you have a look at the changes and comment or even include in future versions of SlimServer? Cheers, Michel
Created attachment 177 [details] unified diff
Thanks for the patch. Doesn't this have the side effect of losing the artist information when looking at song info or searching? Do you think that this is a reasonable tradeoff?
Yes it has this side effect, altough (and I really don't understand why) the real artists still are visible when browsing albums for some time: If I wipe the cache and therefore force the iTunes-module to rescan the library, showing details of a "Compilations" album shows the real artists, but some time later, only "Compilations" is shown for the artist's names. For me personally, this tradeoff is acceptable since without this grouping, my artist-list would become huge (I have a lot of compilations). In the long term, the SlimServer-DB should support (iTunes)-Compilations so that even if this grouping is in effect, it would be still possible to search for artists. With my simple-and-stupid patch chances are high that users will complain that they can no longer search artists - so from the supporter's point of view i would not include it in the official SlimServer.
*** Bug 665 has been marked as a duplicate of this bug. ***
This is how I currently group my Compilations to avoid having a huge number of artists from compilation albums: Index: MP3.pm =================================================================== --- MP3.pm (revision 2430) +++ MP3.pm (working copy) @@ -1,6 +1,6 @@ package Slim::Formats::MP3; -# $Id: MP3.pm,v 1.13 2004/12/07 20:19:52 dsully Exp $ +# $Id$ # SlimServer Copyright (c) 2001-2004 Sean Adams, Slim Devices Inc. # This program is free software; you can redistribute it and/or @@ -32,6 +32,12 @@ my $tags = MP3::Info::get_mp3tag($fh); my $info = MP3::Info::get_mp3info($fh); + # Quick and Dirty hack for pseudo compilations support... + if ( $file =~ m!/Compilations/! ) { + #$tags->{ARTIST}="Compilations"; + $tags->{ARTIST}=$tags->{ALBUM}; + } + # we'll always have $info, as it's machine generated. if ($tags && $info) { %$info = (%$info, %$tags); I really hope that Slim v6.x will one fine day properly support the compilation tag. I guess that compilations don't fit in the current DB model :-( Anyway, I'm resolving this bug (wontfix)
Routine bug db maintenance; removing old versions which cause confusion. I apologize for the inconvenience.