G.729 es un códec híbrido de voz, con muestreo a 8 KHz (narrow band), muy usado en la actualidad en aplicaciones de VoIP. Ofrece una buena calidad, pero su complejidad es extremadamente elevada, necesitando en algunos casos un DSP para su uso en aplicaciones en tiempo real. Es un estándar de la ITU-T, aprobado en 1995.
Esquema de la síntesis en G.729. Fuente: [11]
Diagrama de bloques del codificador en G.729. Fuente: [11]
Diagrama de bloques del codificador en G.729. Fuente: [11]
G.729 usa un algoritmo bastante complejo que requiere de equipos muy potentes para su procesamiento. Para solucionar este hecho existe G.729 A, que reduce sustancialmente la complejidad de G.729 (sobre todo en el tema de búsqueda de secuencias de excitación en el codebook), sin tener una pérdida de calidad demasiado apreciable. En otro anexo, G.729B se especifica unas nuevas funciones:
G.729B no es compatible con ninguna de las versiones anteriores, aunque existe G.729AB que incluye las funcionalidades de G.729B y es compatible con G.729 A.
En los anexos D y E se especifican versiones de CD-ACELP, pero trabajando con tasas binarias de 6.4 y 11.8 Kbps respectivamente.
Posteriormente, ha sido definido un codec G.729 de banda ancha, conocido como G.729.1, compatible con G.729. Es usado por France Telecom para algunas de sus aplicaciones, sobre todo VoIP y videoconferencia a través de IP.
Se puede usar en dos modos:
Como se puede comprobar el codificador está organizado jerárquicamente. En el siguiente enlace se puede encontrar una demostración interactiva de G.729 AB, en la que podemos seguir el proceso de codificación con G.729 AB
y transmisión de un segmento de voz, en condiciones de pérdida y retardo de paquetes, y posteriormente escuchar la señal decodificada en el receptor