我正在尝试将标题与AVPlayerItem相关联,但似乎无法使其正常工作。根据Apple的文档,我应该可以使用AVPlayerItem.externalMetadata.append(value)来实现这一目标,但我似乎无法让它工作。 编译器返回消息"类型' AVPlayerItem'没有会员' externalMetadata。'"由于我已经做了很多搜索并且没有发现任何有类似问题的人,我认为我必须遗漏一些明显的东西。这是我试图使用的功能:
func enqueue(avAsset: AVURLAsset, title:String) {
let item = AVPlayerItem(asset: avAsset)
let titleMetadata = AVMutableMetadataItem()
titleMetadata.identifier = AVMetadataCommonKeyTitle
titleMetadata.value = title as (NSCopying & NSObjectProtocol)?
item.externalMetadata.append(titleMetadata)
self.player.insert(item, after: nil)
if player.rate == 0 {
self.startPlaying()
}
}
非常感谢任何帮助。
答案 0 :(得分:4)
externalMetadata是仅限tvOS的属性。在API Reference的右侧栏中,在SDK部分下,那里只有“tvOS 9.0+”。它根本不适用于iOS。