AirPlay 2 : les nouveautés

Avec iOS 11 et macOS High Sierra, Apple introduit une nouvelle technologie : AirPlay 2. Vu de loin, ça ressemble très fort à AirPlay, mais derrière, c’est totalement différent.

AirPlay “1” date d’il y a plus de 10 ans et fonctionne en streaming pur : les données sont envoyées au récepteur qui les décode en temps réel. Avant l’envoi, la source converti généralement le flux en ALAC (un codec Apple sans pertes), ce qui a l’avantage d’éviter les pertes avec une source elle-aussi sans pertes. Le côté technique est globalement lié au premier récepteur AirPlay à l’époque : la première borne AirPort Express. C’était un appareil peu puissant et limité au Wi-Fi 11g (54 mégabits/s, moins de la moitié en pratique). Passer sur un codec simple à décompresser avait un certain sens.

Le principal souci d’AirPlay reste la latence : l’encodage, le décodage et le buffer implique un décalage assez grand au niveau de l’audio, de l’ordre de plusieurs secondes. techniquement, le multiroom existe avec iTunes, mais la synchronisation reste approximative. Et comme Apple le montre dans la session dédiée à AirPlay 2, le fait de déconnecter la source coupe immédiatement l’audio.

AirPlay 2

AirPlay 2 fonctionne d’une façon tout à fait différente. Au lieu de décoder sur la source et d’envoyer en streaming, le concept est d’envoyer les données brutes au récepteur et de lui demander de décoder et lire. Apple explique que le buffer passe de quelques secondes en temps réel (streaming) à plusieurs minutes. En simplifiant un peu (le découpage semble un peu plus compliqué), lire un titre en AirPlay 2 consiste essentiellement à envoyer le fichier directement au récepteur pour le lire.

Les appareils compatibles

Actuellement, Apple a confirmé deux appareils AirPlay 2 : l’enceinte HomePod et l’Apple TV. Dans les deux cas, il s’agit d’appareils avec un processeur assez puissant (Apple A8) doté d’une bonne connexion Wi-Fi (ou Ethernet) : le transfert d’un morceau, même sans pertes, s’effectue pratiquement instantanément. Visiblement, on peut envoyer à peu près n’importe quel format lisible par iOS/macOS au récepteur : AAC, MP3, PCM, etc. Vu que le FLAC arrive avec les prochains OS, je suppose que le codec sera aussi disponible.

Les avantages d’AirPlay 2

Cette approche a quelques avantages pratiques indéniables. Premièrement, la lecture est très rapide et il est possible de se promener dans un fichier rapidement. Deuxièmement, ça sature moins le réseau : au lieu d’un flux permanent, le système envoie morceaux par morceaux. Troisièmement, une coupure du réseau ne coupe pas l’audio vu que c’est décodé en local. Autre gros avantage, la synchronisation entre deux appareils, que ce soit pour du multiroom ou pour de la vidéo gagne en efficacité. On peut lire une vidéo sur l’Apple TV en utilisant un (une ?) HomePod sans décalage, a priori.

Un des points intéressants d’AirPlay 2 est de proposer un “chemin” différent pour l’audio. Les exemple d’Apple montrent de la musique qui part vers des enceintes AirPlay 2 et des sons liés au système (en général) qui restent sur la sortie classique. C’est déjà en partie possible sous macOS (une option permet d’envoyer les effets sonores sur une sortie précise) mais ici les applications peuvent se déclarer compatible et l’OS va ensuite envoyer les flux au bon endroit. L’intérêt, notamment sur iOS, est qu’un appel ne va plus bloquer de la musique lue sur un périphérique AirPlay par exemple.

Séparation des flux

La seule chose qui m’a étonné, c’est l’absence de référence à la musique en “haute définition”. Il n’y a pas d’indications explicites du support du 96 kHz ou du 24 bits, par exemple. Ca peut vouloir dire que ce n’est pas supporté (ça me semblerait étonnant) mais aussi qu’Apple prépare un truc dans ce domaine, ce qui me semblerait logique.

Différents codecs, mais pas de 96/24 bits explicitement

Conclusion

Si AirPlay 2 semble intéressant sur le papier, reste à voir ce que ça va donner en pratique. Le fonctionnement même du truc impose des récepteurs “puissants”, en tout cas plus que pour AirPlay “1” qui fonctionne sans soucis sur des plateformes ARM minimalistes. Pour le moment, on n’a aucune information sur les appareils prévus en dehors de chez Apple. Seule certitude : l’AirPort Express ne semble pas compatible.