Accueil🇫🇷Chercher

Speex

Speex est un codec libre et sans brevets. Il compresse avec perte de données (comme MP3 et Vorbis) et est spécialisé et optimisé pour la voix humaine.

Speex
Caractéristiques
Extension
.spx
Type MIME
audio/x-speex, audio/speex
PUID
Développé par
Version initiale
Type de format
Contenu par
Ogg
Norme
Spécification
Site web

Speex, projet né indépendant, a été intégré au projet Ogg le . Pour rappel, Ogg est un format de fichier qui contient des flux audio et/ou vidéo. Un fichier Ogg peut donc contenir un flux Speex comme un flux Vorbis.

Il obtient pour tout ce qui est parole, des rapports qualitĂ© et de taille bien supĂ©rieurs aux formats de compression similaires conçus pour la compression musicale. Ă€ 12 kbit/s la qualitĂ© est correcte pour tout type de conversation[1].

Il est présent dans une large base de logiciels, notamment grâce à des plugins et des filtres. Il est supporté par des logiciels de téléconférence, de flux de données, de traitement du son, de lecture multimédia, de P2P, des jeux.

Speex est devenu obsolète avant 2014, car le format opus est plus performant[2].

Description

Ă€ la diffĂ©rence de la plupart des autres codecs dĂ©diĂ©s Ă  la parole, Speex n'est pas fait pour une utilisation sur tĂ©lĂ©phone portable mais plutĂ´t pour la VoIP et la compression dans des fichiers. Les principaux buts ont Ă©tĂ© de crĂ©er un codec optimisĂ© pour la parole, qui associe une bonne comprĂ©hension du dialogue transmis, ainsi qu'un fort taux de compression des donnĂ©es possibles. Speex peut utiliser de nombreux dĂ©bits et bande passante possibles. Conçu pour une utilisation en VoIP, Speex gère bien la perte de donnĂ©es dans le transport, mais il ne gère pas les paquets corrompus car le protocole de transfert UDP assure que les paquets transmis sont intacts (ils ne sont pas transmis s'ils sont altĂ©rĂ©s). La mĂ©thode retenue par le codec Speex, est le CELP (Code Excited Linear Prediction). La raison principale est que CELP s'est avĂ©rĂ© capable de s'adapter Ă  des dĂ©bits bas (comme mis en Ă©vidence par DoD CELP Ă  4,8 kbit/s), aussi bien qu'aux dĂ©bits plus hauts (comme pour le G.728 Ă  16 kbit/s). Les caractĂ©ristiques principales peuvent ĂŞtre rĂ©sumĂ©es comme suit :

  • Logiciel libre/open-source, Libre de tous brevets et royalties
  • IntĂ©gration d'une bande passante restreinte Ă  normale dans un mĂŞme flux de donnĂ©es
  • Grande variĂ©tĂ© de dĂ©bits disponibles (de kbit/s Ă  44 kbit/s)
  • Changement de dĂ©bit dynamique et codage Ă  dĂ©bit variable
  • VAD (Voice Activity Detection) (intĂ©grĂ© dans le codage Ă  dĂ©bit variable)
  • ComplexitĂ© variable
  • Mode Bande passante Ă©tendue (32 kHz Ă  plus de 48 kHz)
  • Option d'encodage stĂ©rĂ©o par rĂ©glage du volume de chaque canal (au lieu d'utiliser un dĂ©lai entre les deux canaux)

Fonctionnalités

Fréquence d'échantillonnage
Speex est conçu de manière Ă  ĂŞtre utilisĂ© dans trois frĂ©quences d'Ă©chantillonnage diffĂ©rentes : kHz (Comme pour la transmission des appels tĂ©lĂ©phoniques), 16 kHz, 32 kHz
Qualité
L'encodeur Speex est contrôlé par un paramètre de qualité compris entre 0 et 10. En mode CBR, le paramètre de qualité est un nombre entier, en mode VBR, c'est un nombre à virgule flottante
Complexité (variable)
Avec Speex, il est possible de gérer la complexité de l'encodeur par un paramètre réglable entre 1 et 10 et qui définit la zone de recherche de l'encodeur. Un peu comme les options -1 à -9 de l'utilitaire de compression de données gzip. Pour une utilisation normale, le niveau de bruit pour une complexité de 1 est comprise entre 1 et dB de plus qu'avec le réglage de complexité de 10. Mais les ressources CPU nécessaires pour une complexité de 10 sont 5 fois supérieure à celle nécessaire à une complexité de 1. En pratique le meilleur réglage est compris entre 2 et 4, des paramètres supérieurs sont utilisés plutôt pour des sons autres que la parole (comme pour le codage DTMF (Dual-Tone Multi-Frequency) ou pour un encodage qui n'a pas besoin d'être en temps réel.
DĂ©bit variable (Variable Bit-Rate (VBR))
Le mode de codage à débit variable (VBR) permet au codec de changer de débit dynamiquement pour s'adapter à une source audio plus difficile à encoder. Les sons complexes sont codés avec un plus grand débit, et les sons simples avec moins de débit. Le but est que la qualité reste constante en faisant varier le débit. Cependant comme le débit final n'est pas garanti, des problèmes peuvent se poser dans les applications temps réel tel que la VoIP.
Débit de données moyen (ABR) (Average Bit Rate)
Le principe du débit de données moyen, résout un des problèmes du codage à débit variable, en ajustant dynamiquement la qualité du codage VBR de manière à obtenir un débit de données cible spécifique. La qualité obtenue est en conséquence inférieure au codage à débit variable.
Voice Activity Detection (VAD)
Quand cette option est activé, le VAD détecte quand l'audio encodé est du dialogue ou du silence/bruit de fond. VAD est toujours implicitement activé en encodage VBR, donc cette option est utile uniquement en mode non VBR. Dans ce cas Speex détecte les périodes sans dialogue et les encode avec le strict minimum de bits pour reproduire le bruit de fond. Cette fonction est appelée Comfort Noise Generation (CNG).
Transmission Discontinues (Discontinuous Transmission (DTX))
La transmission discontinue est une fonctionnalitĂ© qui s'ajoute aux opĂ©rations de VAD et de VBR, qui permet de couper la transmission complètement quand le bruit de fond est stationnaire. Dans un fichier, 5 bits sont utilisĂ©s pour chaque frame manquante (correspondant Ă  250 bit/s)
Perfectionnement perceptible
Le perfectionnement perceptible est une partie du décodeur qui quand il est activé, tente de réduire la perception du bruit produit par le processus de codage/décodage. Dans la plupart des cas, le perfectionnement perceptible crée un son différent de l'original (avec un rapport signal sur bruit différent), mais le son semble finalement meilleur à l'écoute.
DĂ©lai Algorithmique
Chaque codec introduit un dĂ©lai dans la transmission, pour Speex, ce dĂ©lai est Ă©gal Ă  la taille d'une frame, plus un peu de temps nĂ©cessaire au traitement de chaque frame. Pour une bande passante de kHz, le dĂ©lai est d'environ 30 ms, et pour une bande passante de 16 kHz, ce dĂ©lai monte Ă  34 ms. Ces valeurs ne comprennent pas le temps de calcul processeur nĂ©cessaire Ă  l'encodage et au dĂ©codage de chaque frame.

Quelques logiciels supportant le format Speex (voir la page plugins & softwares du site officiel) :

Étymologie

Speex est un jeu de mots avec speaks qui signifie en anglais « (il) parle ».

Notes et références

  1. (en) Speex: A free codec for free speech
  2. speex.org consulté en juillet 2014
  3. « Next INpact - Actualités informatique et numérique au quotidien », sur Next INpact (consulté le ).

Voir aussi

Liens externes

Cet article est issu de wikipedia. Text licence: CC BY-SA 4.0, Des conditions supplémentaires peuvent s’appliquer aux fichiers multimédias.