banshee r3021 - in trunk/banshee: . src/Core/Banshee.Services/Banshee.Metadata src/Core/Banshee.Services/Banshee.Metadata.MusicBrainz src/Core/Banshee.Services/Banshee.Metadata.Rhapsody



Author: abock
Date: Fri Jan 25 01:48:54 2008
New Revision: 3021
URL: http://svn.gnome.org/viewvc/banshee?rev=3021&view=rev

Log:
2008-01-24  Aaron Bockover  <abockover novell com>

    * src/Core/Banshee.Services/Banshee.Metadata.Rhapsody/RhapsodyQueryJob.cs:
    Try to download the 500px and then fall back to the 170px; awesome hires
    from Rhapsody

    * src/Core/Banshee.Services/Banshee.Metadata/MetadataService.cs:
    Prefer the rhapsody provider over musicbrainz for fetching cover art
    now that we can get hires from rhapsody

    * src/Core/Banshee.Services/Banshee.Metadata.MusicBrainz/MusicBrainzQueryJob.cs:
    Print some debug stuff



Modified:
   trunk/banshee/ChangeLog
   trunk/banshee/src/Core/Banshee.Services/Banshee.Metadata.MusicBrainz/MusicBrainzQueryJob.cs
   trunk/banshee/src/Core/Banshee.Services/Banshee.Metadata.Rhapsody/RhapsodyQueryJob.cs
   trunk/banshee/src/Core/Banshee.Services/Banshee.Metadata/MetadataService.cs

Modified: trunk/banshee/src/Core/Banshee.Services/Banshee.Metadata.MusicBrainz/MusicBrainzQueryJob.cs
==============================================================================
--- trunk/banshee/src/Core/Banshee.Services/Banshee.Metadata.MusicBrainz/MusicBrainzQueryJob.cs	(original)
+++ trunk/banshee/src/Core/Banshee.Services/Banshee.Metadata.MusicBrainz/MusicBrainzQueryJob.cs	Fri Jan 25 01:48:54 2008
@@ -90,6 +90,7 @@
             
             if(SaveHttpStreamCover(new Uri(String.Format(AmazonUriFormat, asin)), album_artist_id, 
                 new string [] { "image/gif" })) {
+                Log.Debug ("Downloaded cover art from Amazon", album_artist_id);
                 StreamTag tag = new StreamTag();
                 tag.Name = CommonTags.AlbumCoverId;
                 tag.Value = album_artist_id;

Modified: trunk/banshee/src/Core/Banshee.Services/Banshee.Metadata.Rhapsody/RhapsodyQueryJob.cs
==============================================================================
--- trunk/banshee/src/Core/Banshee.Services/Banshee.Metadata.Rhapsody/RhapsodyQueryJob.cs	(original)
+++ trunk/banshee/src/Core/Banshee.Services/Banshee.Metadata.Rhapsody/RhapsodyQueryJob.cs	Fri Jan 25 01:48:54 2008
@@ -78,8 +78,13 @@
 
             XmlNode art_node = doc.DocumentElement.SelectSingleNode("/album/art/album-art[ size='large']/img");
             if(art_node != null && art_node.Attributes["src"] != null) {
-                Uri art_uri = new Uri(art_node.Attributes["src"].Value);
-                if(SaveHttpStreamCover(art_uri, album_artist_id, null)) {
+                // awesome hack to get high resolution cover art from Rhapsody
+                string second_attempt = art_node.Attributes["src"].Value;
+                string first_attempt = second_attempt.Replace("170x170", "500x500");
+
+                if(SaveHttpStreamCover(new Uri(first_attempt), album_artist_id, null) || 
+                    SaveHttpStreamCover(new Uri(second_attempt), album_artist_id, null)) {
+                    Log.Debug ("Downloaded cover art from Rhapsody", album_artist_id);
                     StreamTag tag = new StreamTag();
                     tag.Name = CommonTags.AlbumCoverId;
                     tag.Value = album_artist_id;

Modified: trunk/banshee/src/Core/Banshee.Services/Banshee.Metadata/MetadataService.cs
==============================================================================
--- trunk/banshee/src/Core/Banshee.Services/Banshee.Metadata/MetadataService.cs	(original)
+++ trunk/banshee/src/Core/Banshee.Services/Banshee.Metadata/MetadataService.cs	Fri Jan 25 01:48:54 2008
@@ -58,8 +58,8 @@
         public MetadataService()
         {
             AddProvider(new Banshee.Metadata.Embedded.EmbeddedMetadataProvider());
-            AddProvider(new Banshee.Metadata.MusicBrainz.MusicBrainzMetadataProvider());
             AddProvider(new Banshee.Metadata.Rhapsody.RhapsodyMetadataProvider());
+            AddProvider(new Banshee.Metadata.MusicBrainz.MusicBrainzMetadataProvider());
             
             Scheduler.JobFinished += OnSchedulerJobFinished;
             Scheduler.JobUnscheduled += OnSchedulerJobUnscheduled;



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]