Lesezeichen

In diesem Leitfaden wird beschrieben, wie Sie Lesezeichen mit dem IMA DAI SDK bei Verwendung der dynamischen Anzeigenbereitstellung für Video-on-Demand-Streams implementieren. Dies setzt eine funktionierende Implementierung für die dynamische Anzeigenbereitstellung mit IMA voraus, wie sie beispielsweise unter Erste Schritte beschrieben wird.

Was ist Lesezeichen?

Lesezeichen ist die Möglichkeit, einen bestimmten Punkt im Inhaltsstream zu speichern und dann wieder dorthin zurückzukehren. Angenommen, ein Nutzer sieht sich Inhalte fünf Minuten lang an, verlässt den Videostream und kehrt dann zu ihm zurück. Durch Lesezeichen wird die Position des Nutzers im Stream gespeichert. So kann der Stream an der Stelle fortgesetzt werden, an der er unterbrochen wurde, und bietet so eine nahtlose Erfahrung für den Betrachter.

Interne Lesezeichen für die dynamische Anzeigenbereitstellung

Wenn Sie einen Stream für die dynamische Anzeigenbereitstellung als Lesezeichen speichern, müssen Sie die Stream-ID und die Zeit erfassen, zu der der Nutzer das Video verlässt. Wenn der Nutzer zurückkehrt, fordern Sie den Stream noch einmal an und suchen Sie nach der gespeicherten Zeit. Da jede Instanz des angeforderten Streams Werbeunterbrechungen mit unterschiedlicher Dauer haben kann, reicht es nicht aus, die Streamzeit zu speichern. Sie sollten eigentlich bei der gleichen Inhaltszeit weitermachen.

Konvertierungsmethoden zur Lösung

Das IMA DAI SDK umfasst mehrere Methoden, mit denen die Inhaltszeit für eine bestimmte Streamzeit und die Streamzeit für eine Inhaltszeit angefordert werden. Mit diesen Konvertierungsmethoden können Sie die mit einem Lesezeichen versehene Inhaltszeit speichern und dann die entsprechende Streamzeit in der neuen Instanz des Streams suchen. Hier ist der Ansatz einschließlich eines Links zu einer Beispiel-App, die eine funktionierende Lesezeichenimplementierung zeigt.

Lesezeichen speichern

Lesezeichen speichern, 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

Lesezeichen beim erneuten Anfordern eines Streams laden. Er 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

Beispielanwendung

Beispiel-App