Aller au contenu
Se connecter

Voice AI / preuves

Codecs et bande passante : ce qu’AudioLab lit, et ce que cela coûte

Un codec vocal coûte-t-il quelque chose à un moteur de reconnaissance, et AudioLab sait-il lire la bande d’un enregistrement et repérer un codec ?

Les mesures concernées

5 mesures : 5 Validé

Afficher les mesures
01 · Le test

Ce que nous avons fait

Les mêmes 24 phrases anglaises lues, passées par sept codecs vocaux puis ramenées à 16 kHz, avec ffmpeg : A-law (300 à 3 400 Hz à 8 kHz), AMR bande étroite à 4,75 et 12,2 kbit/s, AMR large bande à 12,65 kbit/s, GSM 6.10, et Opus en mode voix à 8 et 16 kbit/s. Deux moteurs de reconnaissance ouverts, Whisper small et Whisper large-v3-turbo. Les conditions ont été enregistrées le 15 octobre 2026, avant la première transcription.

Les mesures d’AudioLab ont été lues ensuite sur les mêmes fichiers, sans connaître le résultat d’un moteur de reconnaissance. Cette lecture était exploratoire : elle n’avait pas de critères de réussite et ce n’est pas un test dont le protocole était enregistré à l’avance.

02 · Ce qui en est ressorti

Le résultat

Ce que cela coûte à un moteur de reconnaissance : aucune différence nette pour aucun codec, pour aucun des deux modèles. La plus forte variation était celle de l’AMR bande étroite à 4,75 kbit/s pour Whisper small : +1,8 points, avec un intervalle de +0,0 à +4,5.

Codec Bande passante lue par AudioLab, Hz (médiane, plage) Étiquette de source avec pertes Variation du WER, points : Whisper small Whisper large-v3-turbo
Non codé (référence) 7 992 (6 297 à 7 992) 24 lossless, 0 lossy référenceréférence
A-law, 8 kHz 4 227 (4 047 à 4 453) 14 lossless, 10 inconnu, 0 lossy +0,0 (+0,0 à +0,0), pas de variation nette−0,9 (−2,0 à +0,0), pas de variation nette
AMR bande étroite, 4,75 kbit/s 3 965 (3 773 à 4 469) 22 lossless, 2 inconnu, 0 lossy +1,8 (+0,0 à +4,5), pas de variation nette−0,7 (−1,8 à +0,0), pas de variation nette
AMR bande étroite, 12,2 kbit/s 4 133 (3 797 à 4 477) 19 lossless, 5 inconnu, 0 lossy +1,1 (+0,0 à +3,1), pas de variation nette−0,7 (−1,8 à +0,0), pas de variation nette
GSM 6.10 4 223 (4 016 à 4 492) 15 lossless, 9 inconnu, 0 lossy +0,5 (−1,3 à +2,8), pas de variation nette−0,9 (−2,0 à +0,0), pas de variation nette
Opus, 8 kbit/s 4 613 (4 328 à 4 914) 23 lossless, 1 inconnu, 0 lossy +0,2 (+0,0 à +0,8), pas de variation nette−0,9 (−2,0 à +0,0), pas de variation nette
AMR large bande, 12,65 kbit/s 7 273 (6 242 à 7 672) 24 lossless, 0 lossy −0,5 (−1,6 à +0,5), pas de variation nette−0,5 (−1,1 à +0,0), pas de variation nette
Opus, 16 kbit/s 7 633 (6 125 à 7 992) 24 lossless, 0 lossy −0,5 (−1,6 à +0,5), pas de variation nette+0,0 (+0,0 à +0,0), pas de variation nette

24 phrases par ligne. Les effectifs des étiquettes portent sur les 24 enregistrements. Une variation n’est nettement pire ou meilleure que si son intervalle à 95 % se trouve entièrement d’un seul côté de zéro et qu’elle atteint au moins 2 points ; aucune ne l’était.

Ce qu’AudioLab lit : la bande, pas le codec. La bande passante sépare complètement l’audio en bande étroite de l’audio en large bande. Les cinq conditions en bande étroite (A-law, les deux AMR bande étroite, GSM et Opus à 8 kbit/s) donnent 3,8 à 4,9 kHz, avec des médianes entre 4,0 et 4,6 kHz ; les deux codecs large bande et les phrases qui n’ont pas été codées donnent 6,1 à 8,0 kHz. Sur 120 enregistrements en bande étroite et 72 autres, l’aire sous la courbe est de 1,000. Opus à 8 kbit/s compte comme bande étroite : c’est ce que le moteur lit pour lui, et nous l’avons confirmé en mesurant l’énergie au-dessus de la bande, qui est presque nulle.

Ce qu’il ne lit pas : qu’un codec a été utilisé. L’étiquette de source avec pertes n’a jamais dit « lossy » sur ces 168 enregistrements : 141 ont été lus lossless et 27 inconnus. Lossless signifie ici qu’aucun mur d’un codec musical n’a été trouvé, pas qu’aucun codec n’a été utilisé. L’étiquette pour l’audio étiré depuis une fréquence d’échantillonnage plus basse a trouvé l’origine 8 kHz dans 4 enregistrements sur 96 passés par les quatre codecs 8 kHz, et la profondeur de bits effective a lu 16 partout, parce que la sortie est de l’audio 16 bits, quoi qu’il se soit passé avant.

Donc : AudioLab peut vous dire la bande que votre audio a réellement, ce qui est ce qu’une ligne en bande étroite fait à un enregistrement. Il ne peut pas vous dire qu’un codec est intervenu. Et pour ces deux modèles, aucun codec n’a coûté quoi que ce soit que nous ayons pu montrer ; pour savoir si cela compte pour votre moteur de reconnaissance, il faut le tester avec lui.

03 · La portée

Jusqu’où cela va

De vrais encodeurs passés par ffmpeg sur de la parole lue en anglais, 16 kHz, 24 phrases par codec, Whisper small et large-v3-turbo sur un CPU. Les intervalles sont larges : une variation inférieure à environ 2 points ne se distingue pas d’une absence de variation.

04 · Les limites

Ce que nous n’avons pas testé

  • De vrais appels téléphoniques : ce sont des fichiers passés par un encodeur, sans réseau, sans écho et sans second tronçon d’appel.
  • Les codecs qui dissimulent les paquets perdus, et la perte elle-même (voir la page sur la perte de paquets).
  • D’autres codecs et débits, et des chaînes de plusieurs codecs.
  • D’autres moteurs de reconnaissance, des moteurs en flux continu et d’autres langues.
  • Nous avions consigné à l’avance que l’AMR bande étroite à 4,75 kbit/s serait moins bon qu’à 12,2 kbit/s. Le sens était juste, mais dans le bruit.

Sources et étapes suivantes

Études dans notre registre : test de résistance v0.3, V03-ENG. Le statut de chaque mesure se trouve sur /lenses et notre façon de tester sur /methodology.

Autres preuves