AAC

Qu’est-ce qu’un fichier AAC ?

Le successeur du MP3. Meilleure qualité par mégaoctet, standard sur les appareils Apple et en streaming.

Ce qu’est AAC

AAC est un codec : l’encodage lui-même, et non la boîte dans laquelle il voyage. Il est utilisé pour la remise d’un fichier fini, la diffusion en continu et les téléphones.

L’extension est .aac et le nom complet Advanced Audio Coding. L’un et l’autre comptent moins que ce que le fichier peut contenir, et c’est le sujet du reste de cette page.

D’où vient AAC

MPEG l’a publié en 1997. La spécification est ISO/IEC 13818-7.

À un format resté lisible aussi longtemps, on peut confier quelque chose qu’on veut retrouver dans dix ans.

La spécification est publique

Elle est publiée intégralement : n’importe qui peut l’implémenter à partir du document plutôt qu’en l’observant, et c’est pourquoi ce format apparaît dans tant de programmes et pourquoi des fichiers écrits il y a vingt ans s’ouvrent encore. Une spécification publiée n’est pas pour autant libre de redevances : quand un format enveloppe un codec, les brevets sont une question à part, que la norme ne tranche pas.

Du détail est échangé contre de la taille

AAC jette du détail pour rester petit, et ce qu’il jette ne revient pas. C’est le bon compromis pour quelque chose qu’on regarde et le mauvais pour quelque chose qu’on modifie : chaque réenregistrement prend une nouvelle bouchée.

Ce qu’il peut porter d’autre

AAC peut contenir une disposition qui lui permet de commencer à jouer avant d’être arrivé en entier.

Cela compte surtout à la conversion : ce que la cible ne peut pas contenir est abandonné, en général sans avertissement.

Combien de canaux audio

Jusqu’à 48. Deux couvrent la stéréo et c’est ce qu’est presque tout ; au-delà de deux on est dans le son multicanal, et c’est la partie la plus susceptible d’être repliée en convertissant vers un format qui ne la définit pas.

Ce qui ouvre AAC

VLC, FFmpeg et iTunes le lisent, comme la plupart des programmes du même genre.

Quand un fichier ne s’ouvre pas, le format est rarement en cause : le plus souvent, c’est le programme qui est plus ancien que lui. Convertir vers quelque chose de plus ancien est le contournement fiable, et c’est à cela que sert le reste de ce site.

L’ouvrir dans un navigateur

Tous les navigateurs actuels le lisent.

Vous pouvez donc le poser sur une page ou l’attacher à un message sans vous demander ce que le destinataire a installé.

C’est un format de livraison

AAC est fait pour être transmis, pas pour travailler dedans. Modifier un tel fichier est possible et rarement agréable ; la voie raisonnable passe par la source et un nouvel export.

Ce qui se passe mal avec lui

Les reproches qui reviennent : il se dégrade un peu à chaque réenregistrement.

Rien de tout cela n’est une raison d’éviter le format. Ce sont les choses à connaître avant que l’une d’elles vous surprenne, ce qui est une affirmation différente et plus utile.

Un flux brut, sans rien autour

La plupart de l’audio AAC au monde vit dans un conteneur — un M4A, un MP4, un WebM. Un fichier se terminant par `.aac` est le cas inhabituel : l’audio encodé seul, sans aucun conteneur, enveloppé uniquement par un cadrage léger appelé ADTS qui répète un court en-tête avant chaque trame pour permettre à un récepteur de se synchroniser en cours de lecture.

Ce cadrage a été conçu pour la diffusion, où un récepteur doit pouvoir commencer à écouter en cours de route sans avoir à lire le début du fichier. Cela fonctionne, et cela signifie que le fichier ne porte rien de ce qu’un conteneur fournirait. Pratiquement toute plainte sur un `.aac` nu remonte à ce seul fait — l’absence de conteneur est l’explication, et la conversion vers M4A est en général le bon remède.

Pas de balises, pas d’illustration, pas de durée fiable

Il n’y a aucun endroit pour mettre un titre, un artiste, un album ou une pochette, parce que ces éléments vivent dans les métadonnées du conteneur et qu’il n’y a pas de conteneur. Une bibliothèque musicale affichera le nom du fichier et rien d’autre, et aucun éditeur de balises ne peut y remédier sans changer de format — l’information n’a nulle part où aller.

La durée est devinée plutôt que lue. Un conteneur enregistre la longueur ; l’ADTS ne le fait pas, si bien qu’un lecteur l’estime à partir de la taille du fichier et du débit. Sur un audio à débit variable, l’estimation est fausse, ce qui explique pourquoi un AAC nu affiche souvent une durée qui dérive au fil de la lecture, et pourquoi un seek tombe au mauvais endroit — l’index n’existe pas et la position est calculée, pas lue.

D’où vient un fichier de cette forme

La capture de diffusion et de streaming, qui est la source principale — enregistreurs de radio en ligne, extraction de flux de transport, et outils qui sortent la piste audio d’un flux en direct. Certains encodeurs matériels l’écrivent directement. Certains outils de conversion le produisent quand on demande de l’AAC sans préciser de conteneur, en supposant que c’est ce que veut l’utilisateur.

Le point commun est qu’une étape a extrait ou généré un flux plutôt que d’assembler un fichier. Personne ne choisit un AAC nu pour une bibliothèque musicale, et c’est pourquoi un fichier qui s’y trouve indique en général qu’une étape a été sautée ou qu’un outil a choisi un défaut inadapté, et le diagnostic est rapide.

Le codec lui-même est excellent

Rien de ce qui précède n’est une critique d’AAC en tant que compression. Il a été normalisé en 1997 avec les défauts du MP3 compris, et il sonne mieux à tous les débits — un AAC à 128 kbit/s est en général tenu pour équivalent à un MP3 à 192 kbit/s. Il gère jusqu’à 48 canaux, des fréquences d’échantillonnage plus élevées, et encode proprement à des débits où le MP3 s’effondre en artefacts audibles.

Il est le défaut pour YouTube, Apple Music, Spotify, la radiodiffusion télévisée et chaque enregistrement de téléphone. Le format a gagné de manière nette sur le mérite ; le MP3 a seulement gagné plus tôt sur la compatibilité, et c’est précisément ce que AAC a corrigé en combinant meilleure compression et adoption rapide par les plateformes de streaming.

Les profils, et celui qui divise le débit par deux

AAC-LC est le profil ordinaire et ce que presque tout le monde entend par AAC. HE-AAC ajoute la réplication de bande spectrale, qui reconstruit les hautes fréquences à partir des basses plutôt que de les transmettre, ce qui produit un audio utilisable à 32 kbit/s ou moins. HE-AAC v2 ajoute une astuce similaire pour la stéréo et descend encore plus bas, au prix d’une qualité de reconstruction visible sur les transitoires aigus.

C’est pourquoi la radio numérique et les flux à faible bande passante sonnent mieux que leurs débits ne le suggèrent. C’est aussi pourquoi ils peuvent sonner curieusement verriers sur les cymbales et la sibilance : les hautes fréquences sont reconstruites plutôt qu’enregistrées. Les décodeurs plus anciens qui ne connaissent qu’AAC-LC liront un fichier HE-AAC comme une version sourde et étouffée de lui-même plutôt que d’échouer franchement — d’où la confusion quand un même fichier passe pour acceptable sur un appareil et pour défectueux sur un autre.

Le mettre dans un conteneur règle presque tout

Les mêmes trames AAC tiennent dans un `.m4a` inchangées, donc en principe il n’est pas besoin de toucher à l’audio — `ffmpeg -c copy` le fait en une seconde et ne perd rien. La conversion proposée ici n’est pas celle-là : elle passe un débit à l’encodeur, ce qui disqualifie la copie de paquet, et donc l’audio est décodé puis ré-encodé. Ce que les deux routes gagnent, c’est un conteneur : un endroit pour le titre, l’artiste, l’album et la pochette, une durée enregistrée, et un index correct pour que la recherche fonctionne.

Pour un AAC nu destiné à une bibliothèque musicale ou à un flux de podcast, faites-le sur le bureau si le fichier est précieux et ici si la commodité compte plus qu’une génération. Convertir en MP3 à la place coûte cette génération de toute façon et abandonne l’efficacité de l’AAC avec elle, ce qui n’a de sens que si la destination ne lit vraiment pas l’AAC.

Quand MP3 reste la bonne réponse

Quand la destination est ancienne. Les autoradios d’avant 2012 environ, les lecteurs matériels bon marché, certains systèmes de sonorisation, et les formulaires de téléversement dont la liste d’extensions acceptées date d’il y a des années. Dans ces cas, un fichier légèrement dégradé qui se lit bat un meilleur qui ne se lit pas, et le MP3 reste l’universel.

Comprenez ce que cela coûte : AAC vers MP3 est une conversion de avec perte vers avec perte, et le second encodeur travaille à partir d’un audio auquel on a déjà retiré du matériau, guidé par un modèle qui ne sait pas ce que la première passe a pris. Utilisez 192 kbit/s ou plus pour que la deuxième génération reste inaudible, et conservez l’original — la chaîne de pertes n’est jamais gratuite.

Les brevets, et pourquoi Opus existe

AAC est couvert par des brevets. Le décodage est largement licencié et apparaît partout, mais fournir un encodeur a historiquement exigé une licence, ce qui explique pourquoi les logiciels libres ont souvent été incapables de produire de l’AAC nativement alors qu’ils le lisaient parfaitement.

Cette asymétrie est une grande partie de la raison pour laquelle Vorbis puis Opus ont été créés, et pourquoi Opus — libre de droits et meilleur encore à bas débit — s’est emparé de la messagerie vocale et des appels navigateur tandis que l’AAC conservait la musique et la vidéo. Deux bons codecs, divisés par les licences plutôt que par la qualité, et le résultat est que la conversation voix est massivement passée à Opus pendant que la distribution musicale reste AAC.

Les données, au même endroit

Identifiants et origine du format AAC.
Extension.aac
Type de médiaaudio/aac
Publié parMPEG
Première publication1997
SpécificationISO/IEC 13818-7