Petit retour sur la problématique de l’AC3 (plus connu sous le nom de Dolby Digital).
Le Dolby Digital original date de 1992 (au cinéma, avec Batman Returns) et de 1995 dans le grand public (sur LaserDisc, avec Danger Immédiat). Il a surtout été popularisé avec les DVD, étant donné que les lecteurs doivent supporter le codec et que la majorité des films l’utilise. Depuis quelques années, l’AC3 a surtout trouvé sa place dans le monde du piratage : il est souvent utilisé pour l’audio en multicanal.
L’AC3 (Dolby Digital, A/52) reste pourtant un codec assez moyen dans l’absolu, avec notamment un débit un peu faible pour du 5.1 dans les DVD. En théorie, il est possible d’atteindre 448 kb/s, en pratique beaucoup de DVD se limitent à 384 kb/s (souvent pour le français, alors que l’anglais est au maximum). Son succès vient du fait que c’est le seul codec multicanal largement supporté matériellement : la grande majorité des kits supporte bien l’AC3, alors que le DTS reste plus rare (et demande plus de bande passante).
Le principal problème de l’AC3, c’est sa licence. Il n’est évidemment pas open source et Dolby vend un package qui n’est pas open source pour le décodage (et assez cher, Archos facturait par exemple le codec 6 €).
Le point intéressant vient de la gestion de la licence. Techniquement, proposer une implémentation open source n’est pas un problème, VLC (sous OS X) le fait sans aucun soucis, parce que VLC est hébergé en Europe. Dans les faits, Dolby n’a pas de recours dans ce cas-là : l’Europe ne reconnaît pas les brevets logiciels et un décodeur open source est légal. Pour VLC (sous iOS), le problème est différent : quand vous téléchargez une application, elle est hébergée à la base chez Apple (aux Etats-Unis) et donc Dolby peut forcer les développeurs à payer la licence (ou supprimer le support).
Vu que Dolby ne propose pas de solutions simples et open source, VLC ne décodait plus l’AC3 depuis un moment.
Récemment, Apple a donc payé une licence à Dolby pour le décodage de l’AC3 (et de l’eAC3, utilisé notamment pour la TNT HD en France) dans les appareils iOS. Bonne nouvelle pour VLC (et d’autres) qui peuvent décoder l’AC3 en passant par les API d’Apple, mais mauvaises nouvelles pour ceux qui ont de « vieux » appareils : comme Dolby l’indique, le support est limité aux appareils 64 bits (Apple A7 minimum). Les iPhone 5(c) et autres iPad 3 ne peuvent donc pas décoder l’AC3.
Après, le comportement varie un peu selon les appareils. En pratique, le « pass-trough » à travers un adaptateur HDMI fonctionne bien sur tous les appareils iOS (il suppose que l’appareil en face va décoder l’audio). Même chose sur Apple TV : l’Apple TV 4 décode en direct, les anciens modèles peuvent uniquement envoyer le son sur un décodeur. A noter quand même qu’iTunes n’accepte pas de synchroniser une vidéo qui ne contient que de l’AC3 pour l’audio.
Avec les Mac, c’est encore pire. Officiellement, ça ne fonctionne que depuis El Capitan, en pratique ça passe depuis Mountain Lion. Pour envoyer le son en pass-trough, il faut par contre généralement passer par iTunes (ou VLC…), QuickTime Player ne prend pas en charge la fonction. Le décodage multi-canal fonctionne d’ailleurs assez bien avec les cartes audio qui proposent plusieurs sorties analogiques.
En attendant que les brevets de Dolby sur l’AC3 passent dans le domaine public (c’est pour bientôt), il est peut-être aussi temps de passer à un codec plus moderne…
Merci pour ces explications limpides !