In dieser Anleitung wird beschrieben, wie Sie die Lesezeichenfunktion mit dem IMA DAI SDK implementieren, wenn Sie die dynamische Anzeigenbereitstellung für Video-on-Demand-Streams verwenden. Dabei wird davon ausgegangen, dass eine funktionierende IMA DAI-Implementierung vorhanden ist, wie sie im Leitfaden für den Einstieg beschrieben wird.
Was ist Bookmarking?
Lesezeichen: Möglichkeit, eine bestimmte Stelle im Contentstream zu speichern und dorthin zurückzukehren. Ein Beispiel: Ein Nutzer sieht sich den Content fünf Minuten lang an, schließt den Videostream und kehrt dann dorthin zurück. Mithilfe der Lesezeichenfunktion wird die Stelle gespeichert, an der der Nutzer den Stream geschlossen hat, damit er dorthin zurückkehren und fortfahren kann. Mit dieser Funktion bieten Sie dem Betrachter also eine nahtlose Erfahrung.
So funktioniert die Lesezeichenfunktion bei der dynamischen Anzeigenbereitstellung
Wenn Sie einen DAI-Stream mit einem Lesezeichen versehen, müssen Sie die Stream-ID und die Uhrzeit aufzeichnen, zu der der Nutzer das Video verlässt. Wenn der Nutzer zurückkehrt, fordern Sie den Stream noch einmal an und springen Sie zur gespeicherten Zeit. Da jede Instanz des angeforderten Streams Werbeunterbrechungen mit unterschiedlichen Längen haben kann, reicht es nicht aus, die Streamzeit zu speichern. Sie möchten aber eigentlich an der gleichen Inhaltszeit fortfahren.
Conversion-Methoden
Das IMA DAI SDK bietet zwei Methoden zum Anfordern der Inhaltszeit für eine bestimmte Streamzeit und der Streamzeit für eine bestimmte Inhaltszeit. Mit diesen Konvertierungsmethoden können Sie die Lesezeichenzeit speichern und dann in der neuen Instanz des Streams zur entsprechenden Streamzeit springen. Hier finden Sie eine Anleitung und einen Link zu einer Beispiel-App, die eine funktionierende Lesezeichenimplementierung enthält.
Lesezeichen speichern
Speichern Sie ein Lesezeichen, wenn die Aktivität pausiert ist.
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
Lesezeichen werden geladen
Laden Sie das Lesezeichen, wenn Sie einen Stream noch einmal anfordern. Dies ist Teil der Implementierung der VideoStreamPlayer
-Schnittstelle.
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