このガイドでは、IMA DAI SDK を使用してブックマークを実装する方法について説明します (ビデオ オンデマンド(VOD)ストリームでダイナミック広告挿入(DAI)を使用する場合) これは、 使ってみる。
ブックマークとは
ブックマークは、保存してから特定の時点に戻る機能 コンテンツストリームで通知されます。ユーザーがコンテンツを 5 分間視聴したとします。 動画ストリームから移動して戻ります。ブックマークに登録しておくと、 ストリーム内のユーザーの現在地が 示されます 視聴がシームレスになります
DAI ブックマークの仕組み
DAI ストリームをブックマークする場合は、ストリームの ID と時間を記録する必要がある ユーザーが動画を終了したときユーザーが戻ったら、 保存された時間までシークできます。リクエストされた各インスタンスは、 ストリームを保存するだけで、再生時間の異なるミッドロール挿入点を設定できます。 時間が機能しないことがあります。本当にやりたいのは、同じマシンから コンテンツ時間。
その問題を解決するための変換方法
IMA DAI SDK には、コンテンツ時刻をリクエストする 2 つのメソッドが用意されています。 特定の配信時刻と配信時刻の あります。これらの変換方法を使用すると、ブックマークに追加した コンテンツ時間を指定してから、そのコンテンツ時間の ストリームの新しいインスタンスが作成されます(リンクを含む) 動作中のブックマーク実装を示すサンプルアプリにアクセスできます。
ブックマークを保存しています
アクティビティが一時停止しているときにブックマークを保存する。
- (void)viewWillDisappear:(BOOL)animated {
[super viewWillDisappear:animated];
[self.contentPlayer pause];
// Ignore this if you're presenting a modal view (e.g. in-app clickthrough).
if ([self.navigationController.viewControllers indexOfObject:self] ==
NSNotFound) {
NSTimeInterval contentTime =
[self.streamManager contentTimeForStreamTime:CMTimeGetSeconds(
self.contentPlayer.currentTime)];
self.video.savedTime = contentTime;
...
}
}
}
ブックマークを読み込んでいます
ストリームを再度リクエストするときにブックマークを読み込みます。これは実装の一部として
VideoStreamPlayer
インターフェース
- (void)streamManager:(IMAStreamManager *)streamManager didReceiveAdEvent:(IMAAdEvent *)event {
...
case kIMAAdEvent_STREAM_LOADED: {
if (self.video.savedTime > 0) {
NSTimeInterval streamTime =
[self.streamManager streamTimeForContentTime:self.video.savedTime];
[self.IMAVideoDisplay.playerItem
seekToTime:CMTimeMakeWithSeconds(streamTime, NSEC_PER_SEC)];
self.video.savedTime = 0;
}
}
}