|
@@ -43,31 +43,42 @@ static NSCache *_thumbnailCache;
|
|
|
return [NSString stringWithString:output];
|
|
|
}
|
|
|
|
|
|
-+ (NSString *)_getArtworkPathFromMedia:(MLFile *)file
|
|
|
++ (UIImage *)thumbnailForMediaItemWithTitle:(NSString *)title Artist:(NSString*)artist andAlbumName:(NSString*)albumname
|
|
|
{
|
|
|
- NSString *artworkURL, *artist, *album, *title;
|
|
|
-
|
|
|
- if (file.isAlbumTrack) {
|
|
|
- artist = file.albumTrack.artist;
|
|
|
- album = file.albumTrack.album.name;
|
|
|
- }
|
|
|
- title = file.title;
|
|
|
+ return [UIImage imageWithContentsOfFile:[self artworkPathForMediaItemWithTitle:title Artist:artist andAlbumName:albumname]];
|
|
|
+}
|
|
|
|
|
|
++ (NSString *)artworkPathForMediaItemWithTitle:(NSString *)title Artist:(NSString*)artist andAlbumName:(NSString*)albumname
|
|
|
+{
|
|
|
+ NSString *artworkURL;
|
|
|
NSArray *searchPaths = NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES);
|
|
|
NSString *cacheDir = searchPaths[0];
|
|
|
cacheDir = [cacheDir stringByAppendingFormat:@"/%@", [[NSBundle mainBundle] bundleIdentifier]];
|
|
|
|
|
|
- if (artist.length == 0 || album.length == 0) {
|
|
|
+ if (artist.length == 0 || albumname.length == 0) {
|
|
|
/* Use generated hash to find art */
|
|
|
artworkURL = [cacheDir stringByAppendingFormat:@"/art/arturl/%@/art.jpg", [self _md5FromString:title]];
|
|
|
} else {
|
|
|
/* Otherwise, it was cached by artist and album */
|
|
|
- artworkURL = [cacheDir stringByAppendingFormat:@"/art/artistalbum/%@/%@/art.jpg", artist, album];
|
|
|
+ artworkURL = [cacheDir stringByAppendingFormat:@"/art/artistalbum/%@/%@/art.jpg", artist, albumname];
|
|
|
}
|
|
|
|
|
|
return artworkURL;
|
|
|
}
|
|
|
|
|
|
++ (NSString *)_getArtworkPathFromMedia:(MLFile *)file
|
|
|
+{
|
|
|
+ NSString *artist, *album, *title;
|
|
|
+
|
|
|
+ if (file.isAlbumTrack) {
|
|
|
+ artist = file.albumTrack.artist;
|
|
|
+ album = file.albumTrack.album.name;
|
|
|
+ }
|
|
|
+ title = file.title;
|
|
|
+
|
|
|
+ return [self artworkPathForMediaItemWithTitle:title Artist:artist andAlbumName:album];
|
|
|
+}
|
|
|
+
|
|
|
+ (UIImage *)thumbnailForMediaFile:(MLFile *)mediaFile
|
|
|
{
|
|
|
if (mediaFile == nil || mediaFile.objectID == nil)
|