Chrome 61 的音訊/影片更新

François Beaufort
François Beaufort

背景影片軌最佳化 (僅限 MSE)

為延長電池續航力,如果影片使用 Media Source Extensions (MSE),Chrome 現在會在影片於背景播放時 (例如在非顯示的分頁中) 停用影片軌。

如要檢查這些變更,請前往「chrome://media-internals」頁面,然後篩選「資訊」屬性。如果含有播放中影片的分頁變成閒置狀態,系統會顯示類似 Selected video track: [] 的訊息,指出影片軌已停用。分頁恢復為使用中狀態時,系統會自動重新啟用影片軌。

chrome://media-internals 頁面中的記錄面板
圖 1. chrome://media-internals 頁面中的記錄面板

如要瞭解實際情況,請參閱以下 JavaScript 程式碼片段,瞭解 Chrome 在幕後大致執行的作業。

    var video = document.querySelector('video');
    var selectedVideoTrackIndex;

    document.addEventListener('visibilitychange', function() {
      if (document.hidden) {
        // Disable video track when page is hidden.
        selectedVideoTrackIndex = video.videoTracks.selectedIndex;
        video.videoTracks[selectedVideoTrackIndex].selected = false;
      } else {
        // Re-enable video track when page is not hidden anymore.
        video.videoTracks[selectedVideoTrackIndex].selected = true;
      }
    });

如果停用視訊軌,建議降低視訊串流品質。如上所示,只要使用 Page Visibility API 偵測網頁何時隱藏,就能輕鬆完成這項工作。

但須遵守下列限制:

  • 這項最佳化功能只適用於關鍵影格距離小於 5 秒的影片。
  • 如果影片不含任何音軌,在背景播放時會自動暫停。

Chromium 錯誤

旋轉裝置時自動進入全螢幕模式

如果在影片於檢視區塊中播放時將裝置旋轉為橫向,播放作業會自動切換為全螢幕模式。將裝置轉為直向模式,影片就會回到視窗模式。

請注意,您可以自行手動實作這項行為。(請參閱「行動網頁影片播放」一文)。

旋轉裝置時自動進入全螢幕模式
圖 2. 裝置旋轉時自動進入全螢幕模式

只有在下列情況下,系統才會自動執行這項魔法行為:

  • 裝置是 Android 手機 (而非平板電腦)
  • 使用者將螢幕方向設為「自動旋轉」
  • 影片大小至少為 200x200 像素
  • 影片使用原生控制項
  • 目前正在播放這部影片
  • 至少 75% 的影片可視 (顯示在畫面上)
  • 方向旋轉 90 度 (而非 180 度)
  • 目前沒有全螢幕元素
  • 螢幕未透過 Screen Orientation API 鎖定

Chromium 錯誤