Marque-page

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 ?

Cette fonctionnalité permet d'enregistrer un point précis du flux de contenu, puis d'y revenir. Supposons qu'un utilisateur regarde cinq minutes de contenu quitte le flux vidéo, puis y retourne. L'ajout aux favoris la position de l'utilisateur dans le flux pour que celui-ci puisse reprendre pour offrir une expérience fluide à l'utilisateur.

Fonctionnement des 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é. Étant donné que chaque instance du flux demandé peut avoir des coupures publicitaires de durées différentes, enregistrer simplement la durée du flux 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.

Enregistrer des favoris

Enregistrez 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 lorsque vous demandez à nouveau un flux. Il fait partie de l'implémentation de 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