- Agora, o Chrome desativa as faixas de vídeo quando um vídeo MSE é reproduzido em segundo plano para otimizar o desempenho.
- O vídeo entra em tela cheia quando o dispositivo é girado.
Otimizações de faixa de vídeo em segundo plano (somente MSE)
Para prolongar a duração da bateria, o Chrome agora desativa as faixas de vídeo quando o vídeo é reproduzido em segundo plano (por exemplo, em uma guia não visível) se ele usa Media Source Extensions (MSE).
Para inspecionar essas mudanças, acesse a página chrome://media-internals
e filtre pela propriedade "info". Quando a guia com um vídeo em reprodução
fica inativa, aparece uma mensagem como Selected video track: []
indicando que a faixa de vídeo foi desativada. Quando a guia é reativada, a faixa de vídeo é reativada automaticamente.
Para quem quer entender o que está acontecendo, aqui está um snippet de código JavaScript que mostra o que o Chrome está fazendo nos bastidores.
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;
}
});
Talvez seja necessário reduzir a qualidade do stream de vídeo quando a faixa de vídeo estiver desativada. Basta usar a API Page Visibility, conforme mostrado acima, para detectar quando uma página está oculta.
Confira algumas restrições:
- Essa otimização se aplica apenas a vídeos com uma distância de keyframe < 5s.
- Se o vídeo não tiver faixas de áudio, ele será pausado automaticamente quando for reproduzido em segundo plano.
Tela cheia automática de vídeo quando o dispositivo é girado
Se você girar um dispositivo para o modo paisagem enquanto um vídeo está sendo reproduzido na janela de visualização, a reprodução vai mudar automaticamente para o modo de tela cheia. Girar o dispositivo para o modo retrato coloca o vídeo de volta no modo de janela.
É possível implementar esse comportamento manualmente. Consulte o artigo Reprodução de vídeo na Web para dispositivos móveis.
Esse comportamento mágico só acontece quando:
- O dispositivo é um smartphone Android (não um tablet)
- A orientação da tela do usuário está definida como "Girar automaticamente".
- o tamanho do vídeo é de pelo menos 200 x 200 pixels
- o vídeo usa controles nativos
- o vídeo está sendo reproduzido
- pelo menos 75% do vídeo estejam visíveis (na tela)
- a orientação gira 90 graus (não 180 graus)
- ainda não há um elemento de tela cheia
- a tela não está bloqueada usando a API Screen Orientation