Avec Safari 17, l’iPad et le Mac inauguraient une nouvelle API améliorant l’efficacité du streaming vidéo, Managed Media Source. Avec iOS et Safari 17.1, l’iPhone peut maintenant en profiter. Pour la première fois, Apple propose une solution de diffusion en continu respectueuse de l’autonomie et des performances des appareils mobiles ayant vocation à être standardisée.
Depuis maintenant dix ans, l’API Media Source permet de créer un flux audiovisuel reproduit dans un élément <audio>
ou <video>
par le biais d’un script en JavaScript. Au lieu de charger une vidéo en bloc, Media Source charge un conteneur renfermant la représentation des « morceaux » composant la ressource audiovisuelle, qui peuvent ainsi être chargés dynamiquement. C’est la base du streaming adaptatif moderne, qui permet de charger un « morceau » de plus ou moins bonne qualité selon les conditions.
Media Source est pratiquement incontournable, mais n’offre qu’un contrôle limité sur la mémoire tampon et les accès au réseau, et il a fallu créer des couches supplémentaires pour parvenir au streaming adaptatif. Apple n’a jamais utilisé directement Media Source sur l’iPhone, en argüant qu’elle aurait grevé l’autonomie et les performances de l’appareil, lui préférant sa propre technologie de streaming HLS. Managed Media Source veut marier la flexibilité offerte par Media Source avec l’efficacité de HLS.
Managed Media Source donne un plus grand contrôle au navigateur, qui peut ainsi réagir rapidement aux changements des conditions du réseau ou des contraintes matérielles, pour optimiser les performances et la consommation. Il peut ainsi exiger la mise en mémoire tampon d’une partie d’une vidéo afin de pouvoir couper la puce 5G plus rapidement ou libérer plus promptement cette mémoire si le système le lui demande. Apple estime que sa solution règle les principaux défauts de Media Source, au point d’avoir proposé sa standardisation.
HLS reste la méthode préférée dans l’écosystème Apple, d’autant qu’il prend nativement en charge AirPlay. La firme de Cupertino prévoit toutefois un mécanisme pour utiliser Managed Media Source par défaut, prévoir Media Source en repli et pointer vers un flux HLS pour la diffusion AirPlay. À vrai dire, Safari n’utilisera pas Managed Media Source sans ressource HLS dans le conteneur. En contrepartie, il prendra en charge SharePlay, l’audio spatial et la reproduction HDR des ressources Managed Media Source.
Safari 17 veut bouter les applications Electron hors du Dock