Documentation technique
VOIP
G.729
G.729 est un algorithme de compression de données qui décompose la voix en paquets de 10 millisecondes.
Les codes DTMF peuvent uniquement être transportés en dehors de la bande audio selon les spécifications de la RFC 2833. De même, la transmission de fax groupe 3 ne peut être assurée sans renégociation du codec après détection d’une porteuse ou au moyen du T.38.
En raison de sa faible consommation en bande passante, le G.729 est particulièrement adapté à la VoIP. Dans sa version standard, le G.729 opère à un débit de 8 kbits/s mais il existe des variantes beaucoup moins utilisées fonctionnant à des débits de 6,4 kbits/s et 11,8 kbits/s.
L'utilisation du codec G.729 est protégée et soumise au versement d'une licence généralement incluse dans le prix des produits qui le proposent.
G.729 Annexe A
Le codec G.729a est une variante compatible du G.729 qui requiert une puissance de calcul moins élevée au prix d'une qualité légèrement moindre. Le G.729a a été développé par un consortium d'organisations où figurent France Telecom, Mitsubishi Electric Corporation, Nippon Telegraph and Telephone Corportation (NTT) et l'Université de Sherbrooke.
Les caractéristiques du codec G.729 a sont les suivantes :
- Fréquence d’achantillonnage de 8 khz sur 16 bits (soit 80 échantillons pour une trame de 10 ms)
- Débit fixe de 8 kbits/s sur trames de 10 ms
- Taille de trame fixe de 10 octets par trame de 10 ms
- Délai de compression de 15 ms (dont 5 ms de délai d’anticipation)
- G.729a est un codeur vocal hybride utilisant l’ACELP (Algebraic Code Excited Linear Prediction)
- La complexité de l’algorithme est évaluée à 15, comparée à 1 pour le G.711 et 25 pour le G.723.1
Mesure de qualité en conditions idéales : MOS 4,04 en G.729a contre 4,45 en G.711
Mesure de qualité en conditions dégradées : MOS 3,51 en G.729a contre 4,13 en G.711
G.729 Annexe B
Le codec G.729 a été étendu avec l'annexe B à la compression des silences et la détection d'activité vocale (VAD - Voice Activity detection). Le G.729b est utilisé pour détecter une activité vocale dans le signal et comprend un générateur de bruit de confort (CNG - Comfort Noise Generation) lors des périodes de silence. En effet, l'absence totale de signal audio lorsqu'aucun signal est détecté donne l'impression au correspondant distant que la transmission est rompue. L'ajout d'un bruit de confort permet d'assurer que la communication est toujours active.
G.729.1 ou G.729 Annexe J
Plus recemment, le G.729 a été étendu sous l'appellation G.729.1 pour des transmissions vocales à bande élargie sur une plage de fréquence allant de 50 Hz à 7 kHz. Le G.729.A est également appelé G.729EV (Embedded Variable [bit rate]). Le G.729.1 offre des débits variables de 8 à 32 kbits/s et reste interopérable avec le G.729, le G.729a et le G.729b. Ce codec a été conçu pour offir une meilleure qualité et une plus grande flexibilité que le G.729 grâce à des débits variables structurés en 12 couches hérachiques.
La première couche, à 8 kbits/s, reprend le format G.729. La seconde couche, à 12 kbits/s, est une amélioration en bande étroite. La troisème couche, à 14 kbits/s, étend la bande de fréquences. Les couches suivantes (par incréments de 2 kbits/s) sont des améliorations en bande élargie.