2017-02-21 1 views
0

Je tente d'associer un titre à un AVPlayerItem et je n'arrive pas à le faire fonctionner. Selon la documentation d'Apple, je devrais pouvoir utiliser AVPlayerItem.externalMetadata.append (valeur) pour accomplir ceci, mais je n'arrive pas à le faire fonctionner. Le compilateur renvoie le message "Valeur de type 'AVPlayerItem' n'a pas de membre 'externalMetadata'" Comme j'ai fait beaucoup de recherches et que je n'ai trouvé personne avec des problèmes similaires, je suppose qu'il me manque quelque chose d'évident. C'est la fonction que j'essaie d'utiliser:Ajout de métadonnées à un AVPlayerItem dans Swift 3

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() 
    } 
} 

Toute aide serait grandement appréciée.

Répondre

3

externalMetadata est une propriété de tvOS uniquement. Dans la colonne de droite du API Reference, sous la section SDK, il n'y a que "tvOS 9.0+". Ce n'est tout simplement pas disponible pour iOS.

+0

Merci. Cela clarifie les choses. Je savais qu'il me manquait quelque chose d'assez évident. – kamisama42