減少直播流的延遲

本主題介紹如何減少 Brightcove Live 流的延遲。

介紹

延遲是在現實生活中記錄某物與在視頻播放器中看到它之間的時間差。當然,通過互聯網將信號從信號源傳輸到觀眾播放器需要一些實時時間。在線視頻以謹慎的塊(稱為段)傳輸這一事實加劇了延遲。

可以通過縮短視頻片段的長度來減少延遲,以下部分將詳細介紹如何做到這一點。

但是請注意,這裡有一個權衡:為了確保不間斷播放,播放器會在當前播放位置之前下載幾個視頻片段(這稱為緩衝),以便在需要時準備就緒。

如果您縮短段的長度,請記住以下幾點:

  • 播放器將預取較少的視頻數據,並且播放器緩衝額外片段時播放暫停的機會將會增加
  • 客戶的 CDN 將看到增加的請求流量

要求

以下播放器版本支持低延遲 HLS 直播:

  • Brightcove Player(網絡)版本 6.62.0 及更新版本
  • 適用於 iOS 版本 6.10.3 及更新版本的本機 SDK
  • 適用於 Android 版本 7.0.1 及更新版本的本機 SDK

創建減少延遲的實時配置文件

為減少延遲,您需要創建自定義 Live 配置文件。請按照以下步驟操作:

  1. 登錄工作室。
  2. 打開行政模塊。
  3. 在左側導航中,單擊攝取配置文件 .
  4. 選擇其中一個居住攝取配置文件不超過4個演繹。
    選擇一個實時配置文件
  5. 單擊鏈接以打開配置文件。
  6. 點擊複製以基於所選配置文件創建新的配置文件。
  7. 在新配置文件中,更改name到“低延遲配置文件”(或其他有意義的名稱)。
  8. 對於每個renditions , 改變segment_seconds2將段的長度減少到 2 秒。
  9. 配置文件應類似於以下內容:
    {
      "model_version": 1,
      "name": "Low Latency Profile",
      "description": "Deliver high-quality renditions to maximize quality for desktop and OTT.",
      "account_id": "57838016001",
      "renditions": [
        {
          "media_type": "video",
          "format": "ts",
          "segment_seconds": 2,
          "label": "hls1080p",
          "live_stream": true,
          "video_codec": "h264",
          "video_bitrate": 4000,
          "keyframe_interval": 60,
          "width": 1920,
          "height": 1080,
          "h264_profile": "high"
        },
        {
          "media_type": "video",
          "format": "ts",
          "segment_seconds": 2,
          "label": "hls720p",
          "live_stream": true,
          "video_codec": "h264",
          "video_bitrate": 2400,
          "keyframe_interval": 60,
          "width": 1280,
          "height": 720,
          "h264_profile": "high"
        },
        {
          "media_type": "video",
          "format": "ts",
          "segment_seconds": 2,
          "label": "hls540p",
          "live_stream": true,
          "video_codec": "h264",
          "video_bitrate": 1700,
          "keyframe_interval": 60,
          "width": 960,
          "height": 540,
          "h264_profile": "main"
        },
        {
          "media_type": "video",
          "format": "ts",
          "segment_seconds": 2,
          "label": "hls360p",
          "live_stream": true,
          "video_codec": "h264",
          "video_bitrate": 900,
          "keyframe_interval": 60,
          "width": 640,
          "height": 360,
          "h264_profile": "main"
        }
      ],
      "packages": []
    }
  10. 要使用配置文件,請在實時模塊中創建新的實時事件時選擇它。
    創建現場活動

使用實時 API

如果您想要減少延遲,並且您使用 Live API 創建您的實時作業,只需像往常一樣創建作業,但包括不超過4次演繹 , 並設置segment_seconds對於每個演繹2 .確保您遵守列出的限制對於這個功能。

限制

以下限制是不是使用減少的延遲支持實時流:

  • SSAI
  • 數字版權管理
  • 多語言音軌
  • 冗餘
  • 輸入上的 B 幀

其他限制包括:

  • DVR 窗口必須小於5分鐘
  • 不多於4個演繹
  • 低延遲直播僅提供 30fps