Dans video_player.js, définissez une classe wrapper de lecteur vidéo pour lancer et contrôler le lecteur dash.js.
Configurer le lecteur haut débit
Définissez l'emplacement du lecteur haut débit dans votre application en créant des tags vidéo et wrapper :
Créer le lecteur vidéo
Initialisez la classe de lecteur vidéo avec des variables pour les éléments HTML, le lecteur dash.js et les rappels que d'autres méthodes de classe peuvent utiliser.
Définir les fonctions de contrôle de la lecture
Pour afficher le lecteur d'annonces et associer la vue vidéo, créez la méthode VideoPlayer.play(). Ensuite, créez la méthode VideoPlayer.stop() pour gérer le nettoyage une fois les séries d'annonces terminées.
Précharger le fichier manifeste du flux d'annonces
Pour vérifier que les annonces sont suffisamment chargées pendant le flux de contenu et avant le début de la coupure publicitaire, utilisez VideoPlayer.preload() et VideoPlayer.isPreloaded().
1. Précharger le flux d'annonces
Créez la méthode VideoPlayer.preload() pour précharger le fichier manifeste du flux d'annonces et créer un tampon d'annonces avant une coupure publicitaire. Vous devez définir les paramètres de streaming du lecteur
'cacheInitSegments' sur true. En modifiant les paramètres, vous activez la mise en cache des segments d'initialisation, ce qui évite les retards lors du passage aux annonces.
2. Vérifier le tampon d'annonces préchargé
Créez la méthode VideoPlayer.isPreloaded() pour vérifier si suffisamment de tampon d'annonces a été préchargé par rapport à un seuil de tampon défini dans l'application :
Associer des écouteurs de lecteur
Pour ajouter des écouteurs d'événements pour l'événement du lecteur dash.js, créez la méthode VideoPlayer.attachPlayerListener() : PLAYBACK_PLAYING, PLAYBACK_ENDED, LOG et ERROR. Cette méthode gère également les événements pour l'URI d'ID de schéma, en plus de définir la fonction de nettoyage pour supprimer ces écouteurs.
Définir des rappels d'événements de lecteur
Pour gérer la lecture des séries d'annonces en fonction des événements du lecteur, créez les méthodes VideoPlayer.onAdPodPlaying(), VideoPlayer.onAdPodEnded() et VideoPlayer.onAdPodError() :
Créer le setter pour l'événement onAdPodEnded
Définissez une fonction de rappel qui s'exécute lorsqu'une série d'annonces se termine en créant la méthode VideoPlayer.setOnAdPodEnded(). La classe d'application utilise cette méthode pour reprendre la diffusion de contenu après les coupures publicitaires.
Gérer les événements de métadonnées de flux
Définissez une fonction de rappel qui s'exécute en fonction des événements emsg en créant la méthode VideoPlayer.setEmsgEventHandler(). Pour ce guide, incluez le paramètre scope, car vous appelez setEmsgEventHandler() en dehors de video_player.js.
Afficher et masquer le lecteur vidéo pour les coupures publicitaires
Pour afficher le lecteur vidéo pendant les coupures publicitaires et le masquer une fois la coupure publicitaire terminée, créez les méthodes VideoPlayer.show() et VideoPlayer.hide() :
Ensuite, créez une classe de gestionnaire d'annonces pour utiliser le SDK IMA afin d'effectuer une demande de flux, d'obtenir un fichier manifeste de série d'annonces, d'écouter les événements de flux IMA et de transmettre les événements emsg au SDK IMA.