0
我无法从HTTP实时流(使用m3u,m3u8播放列表文件)获取iPhone上的歌曲名称和作曲家姓名。我试过从这个网站得到tempomix radio。这是链接流 - http://stream21.group-network.net:9012在iPhone上从流上获取ID3标签
我尝试使用下面的代码:
AVPlayerItem *playerItem = [AVPlayerItem playerItemWithURL:url];
_player = [[AVPlayer playerWithPlayerItem:playerItem] retain];
_player.actionAtItemEnd = AVPlayerActionAtItemEndNone;
[_player addObserver:self forKeyPath:@"status" options:NSKeyValueObservingOptionNew context:NULL];
[_player addObserver:self forKeyPath:@"currentItem" options:NSKeyValueObservingOptionNew context:NULL];
[_player addObserver:self forKeyPath:@"timedMetadata" options:NSKeyValueObservingOptionNew context:NULL];
然后等待回调位置:
- (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context {
回调时说到 - 我检查AVPlayerStatus和运行游戏。 收音机播放良好 - 但从来没有来观察ValueForKeyPath。
我知道这个问题看起来类似this question,但描述的方法不适合我。
任何想法?谢谢。
谢谢你的回答!对于这个流,我可以看到标题(在RAW数据中)。但这个链接http://fms.broadcast.quantumart.ru/hls-live/adaptive-dfm/_definst_/dfm/livestream.m3u8?此列表仅提供少量.st文件 - 但内部没有ICY标签... – 2012-07-31 18:50:10
@Sergey,您刚刚链接的那些流是完全不同的,并且不由SHOUTcast/Icecast提供服务。如果有元数据,则需要将其从MPEG流中提取出来。 http://en.wikipedia.org/wiki/MPEG_transport_stream – Brad 2012-07-31 18:56:46