Получить обложку альбома из файла MP3 / тега ID3
Я пытаюсь получить обложку альбома из файла MP3.
В этом случае я использую AVAudioPlayer
воспроизвести файл.
Вот код, который я думал, получит обложку альбома:
MPMusicPlayerController *controller = [MPMusicPlayerController applicationMusicPlayer];
MPMediaItem *current = controller.nowPlayingItem;
MPMediaItemArtwork *artwork = [current valueForProperty:MPMediaItemPropertyArtwork];
UIImage *artwork2 = [artwork imageWithSize:artwork.bounds.size];
[artworkView setImage:artwork2];
тем не мение artworkView
не содержит изображения вообще.
Я немного застрял.
Если кто-то может помочь, предоставив предложения о том, где / как я могу получить изображение непосредственно из тега ID3, это было бы очень полезно.
Любая помощь приветствуется.
1 ответ
Вы должны использовать enumerateValuesForProperties вот пример:
[item enumerateValuesForProperties:[NSSet setWithObjects:MPMediaItemPropertyTitle,MPMediaItemPropertyAlbumTitle,MPMediaItemPropertyArtist,MPMediaItemPropertyArtwork,nil]
usingBlock:^(NSString *property, id value, BOOL *stop) {
if ([property isEqualToString:MPMediaItemPropertyTitle]){
if (value){
titre=value;
}else {
titre=@"";
}
}
if ([property isEqualToString:MPMediaItemPropertyArtist]){
if(value){
artist=value;
}else {
artist=@"";
}
}
if ([property isEqualToString:MPMediaItemPropertyArtwork]){
MPMediaItemArtwork *art=value;
if (art!=nil){
imgV.image=[art imageWithSize:CGSizeMake(self.view.bounds.size.width, self.view.bounds.size.width)];
}
}
}];