- 이제 Chrome은 성능을 최적화하기 위해 MSE 동영상이 백그라운드에서 재생될 때 동영상 트랙을 사용 중지합니다.
- 기기를 회전하면 동영상이 전체 화면으로 전환됩니다.
백그라운드 동영상 트랙 최적화 (MSE만 해당)
배터리 수명을 개선하기 위해 Chrome에서는 동영상이 미디어 소스 확장 프로그램 (MSE)을 사용하는 경우 동영상이 백그라운드에서 재생될 때 (예: 표시되지 않는 탭) 동영상 트랙을 사용 중지합니다.
chrome://media-internals
페이지로 이동하여 'info' 속성을 필터링하면 이러한 변경사항을 검사할 수 있습니다. 재생 중인 동영상이 포함된 탭이 비활성화되면 동영상 트랙이 사용 중지되었음을 나타내는 Selected video track: []
와 같은 메시지가 표시됩니다. 탭이 다시 활성화되면 동영상 트랙이 자동으로 다시 사용 설정됩니다.
어떤 일이 일어나고 있는지 알고 싶은 분들을 위해 Chrome이 백그라운드에서 대략적으로 하는 일을 보여주는 JavaScript 코드 스니펫을 준비했습니다.
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;
}
});
동영상 트랙이 사용 중지된 경우 동영상 스트림의 품질을 낮추는 것이 좋습니다. 위와 같이 페이지 가시성 API를 사용하여 페이지가 숨겨진 시점을 감지하면 됩니다.
다음은 몇 가지 제한사항입니다.
- 이 최적화는 키프레임 간격이 5초 미만인 동영상에만 적용됩니다.
- 동영상에 오디오 트랙이 포함되어 있지 않으면 백그라운드에서 재생될 때 동영상이 자동으로 일시중지됩니다.
기기를 회전할 때 동영상이 자동으로 전체 화면으로 전환됨
동영상이 표시 영역에서 재생되는 동안 기기를 가로 모드로 회전하면 재생이 전체 화면 모드로 자동 전환됩니다. 기기를 세로 모드로 회전하면 동영상이 다시 창 모드로 전환됩니다.
이 동작은 직접 수동으로 구현할 수 있습니다. 모바일 웹 동영상 재생 도움말을 참고하세요.
이 마법 같은 동작은 다음 경우에만 발생합니다.