ブックマーク

このガイドでは、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;
    }
  }
}

サンプルアプリ

サンプルアプリ