Aggiornamenti di contenuti multimediali in Chrome 61

François Beaufort
François Beaufort

Ottimizzazioni della traccia video in background (solo MSE)

Per aumentare la durata della batteria, Chrome ora disattiva le tracce video quando il video viene riprodotto in background (ad esempio, in una scheda non visibile) se il video utilizza Media Source Extensions (MSE).

Per esaminare queste modifiche, vai alla pagina chrome://media-internals e filtra in base alla proprietà "informazioni". Quando la scheda contenente un video in riproduzione diventa inattiva, vedrai un messaggio come Selected video track: [] che indica che la traccia video è stata disattivata. Quando la scheda diventa di nuovo attiva, la traccia video viene riattivata automaticamente.

Riquadro dei log nella pagina chrome://media-internals
Riquadro dei log nella pagina chrome://media-internals

Per chi vuole capire cosa sta succedendo, ecco uno snippet di codice JavaScript che mostra ciò che Chrome sta facendo approssimativamente dietro le quinte.

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;
  }
});

Se la traccia video è disattivata, può essere opportuno ridurre la qualità del video stream. Per rilevare quando una pagina è nascosta, basta usare l'API Page Visibilità come mostrato sopra.

Ecco alcune limitazioni:

  • Questa ottimizzazione si applica solo ai video con una distanza dei frame chiave < 5 s.
  • Se il video non contiene tracce audio, verrà messo automaticamente in pausa durante la riproduzione in background.

Bug di Chromium

Video a schermo intero automatico quando il dispositivo viene ruotato

Se ruoti un dispositivo in orizzontale durante la riproduzione di un video nell'area visibile, la riproduzione passerà automaticamente alla modalità a schermo intero. Ruotando il dispositivo in verticale, il video torna alla modalità a finestre.

Tieni presente che puoi implementare manualmente questo comportamento autonomamente. (consulta l'articolo Riproduzione di video sul web mobile).

Video a schermo intero automatico quando il dispositivo viene ruotato

Questo comportamento magico si verifica solo quando:

  • il dispositivo è un telefono Android (non un tablet)
  • l'orientamento dello schermo dell'utente è impostato su "Rotazione automatica"
  • la dimensione del video è di almeno 200 x 200 px
  • il video utilizza i controlli nativi
  • video attualmente in riproduzione
  • almeno il 75% del video è visibile (sullo schermo)
  • l'orientamento ruota di 90 gradi (non di 180 gradi)
  • non esiste ancora nessun elemento a schermo intero
  • lo schermo non sia bloccato usando l'API Screen Orientation

Bug di Chromium