Enregistrer et charger des favoris de flux d'annonces

Ce guide explique comment intégrer des favoris à l'aide du SDK IMA DAI lorsque vous utilisez l'insertion dynamique d'annonces pour les flux de vidéo à la demande. Cela suppose que l'implémentation d'IMA DAI fonctionne correctement, comme celle présentée dans l'article Premiers pas

Qu'est-ce que l'ajout de favoris ?

Les favoris permettent d'enregistrer un point spécifique, puis de revenir à ce dernier. dans le flux de contenu. Supposons qu'un utilisateur regarde cinq minutes de contenu quitte le flux vidéo, puis y retourne. La fonctionnalité de favoris enregistre la position de l'utilisateur dans le flux de sorte que celui-ci puisse reprendre la lecture là où l'utilisateur s'était arrêté. Cela garantit une expérience homogène à l'utilisateur.

Options avancées de l'ajout de favoris pour l'insertion dynamique d'annonces

Lorsque vous ajoutez un flux pour l'insertion dynamique d'annonce aux favoris, vous devez enregistrer l'ID et l'heure du flux. lorsque l'utilisateur quitte la vidéo. Lorsque l'utilisateur revient, demandez à nouveau le et rechercher le temps gagné. Puisque chaque instance de la requête peut comporter des coupures publicitaires de différentes durées. Il suffit d'enregistrer la diffusion. l'heure ne fonctionnera pas. Ce que vous voulez vraiment faire, c'est continuer date et heure du contenu.

Les méthodes de conversion à la rescousse

Le SDK IMA DAI fournit deux méthodes pour demander l'heure du contenu pour une durée de diffusion donnée et la durée de diffusion d'un contenu donné heure. À l'aide de ces méthodes de conversion, vous pouvez stocker les favoris durée du contenu, puis recherchez la durée de la diffusion correspondante dans la nouvelle instance du flux. Voici l'approche à adopter, avec un lien à un exemple d'application qui montre une implémentation opérationnelle de la fonction d'ajout de favoris.

Enregistrement des favoris

Enregistrer un favori lorsque l'activité est mise en pause.

Saves the current time as a bookmark in the current video.
Function saveBookmarkTime(player as Object,  streamManager as Object) as Void
  m.videos[player.video.index].bookmarkTime =
      streamManager.getContentTime(player.currentTime * 1000)
End Function

Chargement des favoris...

Chargez le favori lors d'une nouvelle demande de flux. Cela fait partie de l'implémentation l'interface VideoStreamPlayer.

player.loadUrl = Function(streamInfo as Object)
  ...
  If m.video.bookmarkTime > 0
    streamTime = m.streamManager.getStreamTime(m.video.bookmarkTime)
    m.videoPlayer.seek(streamTime)
  End If
End Function

Application exemple

Application exemple