Mises à jour multimédias dans Chrome 61

François Beaufort
François Beaufort

Optimisations des pistes vidéo en arrière-plan (MSE uniquement)

Pour améliorer l'autonomie de la batterie, Chrome désactive désormais les pistes vidéo lorsque la vidéo est lue en arrière-plan (dans un onglet non visible, par exemple) si la vidéo utilise des extensions de source multimédia (MSE).

Vous pouvez inspecter ces modifications en accédant à la page chrome://media-internals et en filtrant la propriété "info". Lorsque l'onglet contenant une vidéo en cours de lecture devient inactif, un message de type Selected video track: [] indique que la piste vidéo a été désactivée. Lorsque l'onglet redevient actif, la piste vidéo est automatiquement réactivée.

Panneau de journal sur la page chrome://media-internals
Panneau de journal sur la page chrome://media-internals

Si vous souhaitez comprendre ce qu'il se passe, voici un extrait de code JavaScript qui vous montre ce que Chrome fait en arrière-plan.

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

Vous pouvez réduire la qualité du flux vidéo lorsque la piste vidéo est désactivée. Ce serait aussi simple que d'utiliser l'API Page Visibility, comme indiqué ci-dessus, pour détecter quand une page est masquée.

Voici quelques restrictions:

  • Cette optimisation ne s'applique qu'aux vidéos dont la distance de l'image clé est inférieure à 5 s.
  • Si la vidéo ne contient aucune piste audio, elle est automatiquement mise en pause lorsqu'elle est lue en arrière-plan.

Bug Chromium

Lecture automatique de la vidéo en plein écran lorsque vous faites pivoter l'appareil

Si vous faites pivoter un appareil en mode paysage alors qu'une vidéo est en cours de lecture dans la fenêtre d'affichage, la lecture passe automatiquement en mode plein écran. Faire pivoter l'appareil en mode portrait rétablit la vidéo en mode fenêtre.

Notez que vous pouvez implémenter vous-même ce comportement manuellement. Consultez l'article Lecture de vidéos sur le Web mobile.

Lecture automatique de la vidéo en plein écran lorsque vous faites pivoter l'appareil

Ce comportement magique ne se produit que dans les cas suivants:

  • l'appareil est un téléphone Android (et non une tablette)
  • l'orientation de l'écran de l'utilisateur est définie sur "Rotation automatique"
  • La taille de la vidéo est d'au moins 200 x 200 pixels
  • la vidéo utilise des commandes natives
  • vidéo en cours de lecture
  • au moins 75% de la vidéo est visible (à l'écran)
  • rotation de l'orientation de 90 degrés (et non de 180 degrés)
  • Il n'y a pas encore d'élément plein écran
  • l'écran n'est pas verrouillé à l'aide de l'API Screen Orientation

Bug Chromium