我想获取文件名,如果可能的话,可以从我在AVQueuePlayer上播放的AVPlayerItem中的流式URL中的相册图像,但是我不知道该怎么做.
另外如果事实证明,我的流网址没有任何元数据,我可以将元数据放入我的NSURL *,然后传递给AVPlayerItem?
谢谢.
解决方法
好,我很惊讶没有人回答这个问题.
其实没有人回答我的其他问题.
让我想知道这里真正拥有多少知识.
其实没有人回答我的其他问题.
让我想知道这里真正拥有多少知识.
无论如何,我会继续回答我自己的问题.
我发现如何通过执行以下操作获取元数据:
AVPlayerItem *playerItem = [AVPlayerItem playerItemWithURL:url]; NSArray *MetadataList = [playerItem.asset commonMetadata]; for (AVMetadataItem *MetaItem in MetadataList) { NSLog(@"%@",[MetaItem commonKey]); }
这给我一个列表如下:
title creationDate artwork albumName artist
现在有了这个列表,我知道如何从我的音频流中访问元数据.只需简单地浏览NSArray并查找具有我想要的commonKey(例如标题)的AVMetadataItem.然后当我发现AVMetadataItem从它获取值属性.
现在,这很有用,但是当您尝试获取数据时可能需要一段时间.您可以通过将loadValuesAsynchronouslyForKeys:completionHandler:发送到刚找到的AVMetadataItem来异步加载数据.
希望有助于任何可能会遇到同样问题的人.