iOS : Sélection de la source

Dans cette rubrique, vous apprendrez comment le SDK Brightcove Native Player pour iOS utilise un processus de sélection source (format associé) par défaut lors de la lecture d'une vidéo.

Processus de sélection par défaut

Lorsque vous récupérez des vidéos du catalogue Brightcove ou créez un BCOVVidéo objet avec plusieurs Source BCOV éléments, le joueur doit décider BCOVSource (rendu) à lire.

Apple a introduit App Transport Security dans iOS 9 et encourage fortement l'utilisation de HTTPS au lieu de HTTP pour tout le trafic Web. Par conséquent, la politique de sélection des sources par défaut de Brightcove est la suivante : [BCOVBasicSourceSelectionPolicy SourceSelectionHlsWithScheme:NSURLProtectionSpaceHTTPS].

Brightcove fournit une implémentation par défaut comme suit :

  1. Il recherche la première source qui a un deliveryType de HLS en utilisant le schéma HTTPS.
  2. Si aucune source de ce type n'est trouvée, la première HLS avec un schéma HTTP est renvoyé.
  3. Sinon HLS sources sont présentes, il retombera sur la première source avec un deliveryType de MP4.
  4. Si aucune des réponses ci-dessus n'est trouvée, la première source jouable de quelque nature que ce soit est renvoyée.
  5. L'URL source est fournie au AVPlayer pour la lecture.
  6. Lorsque la lecture commence, le AVPlayer est responsable de la sélection du débit binaire et de la résolution à servir.
  7. Les AVPlayer commencera au premier élément de l'index et s'ajustera en conséquence.

Lorsque vous utilisez les paramètres de transcodage par défaut, la première source HLS doit être la liste de lecture principale m3u8 qui pointe vers toutes vos interprétations individuelles.

Politiques de sélection de sources alternatives

Vous pouvez facilement remplacer la politique de sélection de source par défaut si cela ne fonctionne pas pour vous. Pour plus de détails, consultez le Sélection de la source partie de la Kit de développement logiciel Brightcove Player pour iOS document de référence.

Source prioritaire

Si vous souhaitez remplacer BCOVSource est fourni au AVPlayer , vous pouvez implémenter le sourceSelectionPolicy bloquer la propriété sur le BCOVBasicSessionProviderOptionsBCOVBasicSessionProviderOptionsBCOVBasicSessionProviderOptions classe.