MPMoviePlayerController детали текущего воспроизводимого элемента?
Я играю URL-адрес аудиопотока с помощью MPMoviePlayerController, он работает нормально, это любой способ получить подробную информацию о текущей воспроизводимой дорожке. Я имею в виду название песни, имя исполнителя и т. д.
заранее спасибо
2 ответа
Добавьте этот файл.h.
@property (nonatomic, retain) MPMusicPlayerController *musicPlayer;
@property (nonatomic, retain) IBOutlet UILabel *songLabel;
@property (nonatomic, retain) IBOutlet UILabel *artistLabel;
@property (nonatomic, retain) IBOutlet UILabel *albumLabel;
- (void)handleNowPlayingItemChanged:(id)notification
{
// Ask the music player for the current song.
MPMediaItem *currentItem = self.musicPlayer.nowPlayingItem;
// Display the artist, album, and song name for the now-playing media item.
// These are all UILabels.
self.songLabel.text = [currentItem valueForProperty:MPMediaItemPropertyTitle];
self.artistLabel.text = [currentItem valueForProperty:MPMediaItemPropertyArtist];
self.albumLabel.text = [currentItem valueForProperty:MPMediaItemPropertyAlbumTitle];
// Display album artwork. self.artworkImageView is a UIImageView.
CGSize artworkImageViewSize = self.artworkImageView.bounds.size;
MPMediaItemArtwork *artwork = [currentItem valueForProperty:MPMediaItemPropertyArtwork];
if (artwork != nil)
{
self.artworkImageView.image = [artwork imageWithSize:artworkImageViewSize];
}
else
{
self.artworkImageView.image = nil;
}
}
MPMoviePlayerController
не поддерживает извлечение метаданных на основе ID3 из воспроизводимого потока. Вам придется использовать MPMusicPlayerController
(местный контент) или, возможно, AVPlayer
(потоковый контент), чтобы добиться этого. Хотя я должен признать, что я не совсем уверен, если AVPlayer
/AVPlayerItem
на самом деле сделаю работу - я никогда не пробовал сам.