建構DVR增強的控制列

您可以實作具有DVR支援VOD和即時串流的控制列。 DVR支援包括可搜尋視窗和使用者端即時點的概念。

  • 對於VOD,可搜尋視窗的長度是整個資產的持續時間。

  • 對於即時串流,DVR (可搜尋)視窗的長度定義為從即時播放視窗開始,並在使用者端即時點結束的時間範圍。

    使用者端即時點的計算方式是從即時視窗結尾減去緩衝長度。 目標持續時間是大於或等於資訊清單中片段最大持續時間的值。

    預設值為10000毫秒。

    即時播放的控制列支援DVR,方法是在開始播放時先將縮圖放置在使用者端即時點,並顯示一個區域,該區域會標籤不允許搜尋的區域。

  1. 若要實作支援DVR的控制列,請遵循顯示搜尋拖曳列的步驟,但有一些細微的差異:

    • 您可以選擇實作僅對應至可搜尋範圍的控制列,而非針對播放範圍的控制列。 搜尋的任何使用者互動都可以視為可搜尋範圍中的安全互動。

    • 您可以選擇實作已對應至播放範圍的控制列,但也會顯示可搜尋範圍。

      對於控制列:

    1. 在代表播放範圍的控制列新增覆蓋。

    2. 當使用者開始搜尋時,請使用 MediaPlayer.seekableRange 屬性。

      例如:

      var desiredPosition:Number = // TODO : choose a value
      
      private function onStatusChange(event:MediaPlayerStatusChangeEvent):void {
          switch(event.status) {
              case MediaPlayerStatus.PREPARED:
                  _mediaPlayer.prepareToPlay(desiredPosition);
          }
      }
      

      您也可以選擇使用 MediaPlayer.LIVE_POINT 常數。

      private function onSeekToLiveClick(event:MouseEvent):void {
          _player.seek(DefaultMediaPlayer.LIVE_POINT);
      }
      

本頁內容