G. 729 FAMIGLIA DI codec A BASSO BIT RATE (VoIP)

3.6
La famiglia di codec G. 729 è comunemente utilizzata nella maggior parte delle implementazioni VoIP. G. 729 è una raccomandazione ITU-T G. 729 per un algoritmo di compressione vocale CS-ACELP
con struttura algebrica con codice eccitato. G. 729 fa uso di modelli del tratto vocale umano adatti per i segnali vocali a differenza dei codec G. 711 e G. 726, che utilizzano la compressione basata sulla forma d’onda. Basic G. 729 comprime la voce a 8 kbps, che fornisce otto volte più compressione rispetto a G. 711 e fornisce una buona qualità della voce.
G. 729 Allegato A (G.729A) è la versione a complessità ridotta della raccomandazione G. 729 e comprime la voce allo stesso 8 kbps con il compromesso di una leggera perdita di qualità rispetto a G. 729. Questa versione è sviluppata principalmente per applicazioni multimediali voce simultanea e dati, anche se l’uso del codec non è limitato a queste applicazioni. G. 729A è flusso di bit interoperabile con la versione completa di G. 729. Questo codec ha built-in perdita di pacchetti occultamento. Il codec con suffisso B indicato come G. 729B o G. 729AB supporta VAD nell’encoder e CNG nel decoder . G.729 ha una vasta famiglia di codec, e alcuni dei
codec popolari sono elencati nella Tabella 3.3. Nella distribuzione VoIP, G. 729AB è comunemente usato. Nell’aggiornamento a banda larga, questi codec possono essere sostituiti con G. 729.1. Questi codec a banda larga sono interoperabili con le versioni a banda stretta. Quindi, un codec a banda larga da solo dovrebbe essere sufficiente sia per il supporto a banda larga che a banda stretta a 8 kbps. Tranne G. 722, altri codec a banda larga comprimono la voce in bit rate inferiori a G. 711. Nella sezione seguente, viene fornita una panoramica di alto livello su G. 729AB. Codec G. 729AB fa uso di G. 729 come standard di base. Per una migliore comprensione di G. 729AB, fare riferimento alle raccomandazioni G. 729, G. 729B e G. 729A.

Tabella 3.3. ITU-T G. 729 Famiglia di Narrowbond e banda larga Codec vocali

il Nome del Codec Descrizione Applicazione
G. 729 Basic 8 kbps CS Supportato su VoIP voice
ACELP speech codec gateway
G. 729B G.729 con il silenzio
compressione
G. 729A Riduzione della complessità Popolare su adattatori VoIP e IP
8 – kbps CS – ACELP telefoni, compatibile con G. 729,
speech codec e G. 729.1
G. 729AB G. 729A con il silenzio compatibile con G. 729, G729B,
compressione G729.1
G. 729E (G.729 11.8 kbps CS – ACELP Non è popolare in VoIP, funziona meglio
Allegato E) codifica del segnale vocale per la musica e lo sfondo
algoritmo è utilizzato in applicazioni video
G. 729.1 a banda larga variabile Incorporata 8- banda larga voce
e a banda stretta 32 kbps bit
interoperabile con
G. 729, G.729 BIS

Codec G. 729

Il codec G. 729 è costituito da un encoder e un decodificatore separati. Il codec comprime i campioni vocali come frame utilizzando una procedura di analisi per sintesi CS-ACELP. Il codec funziona con 10-ms fotogrammi con uno sguardo avanti di 5 ms, che si traduce in ritardo algoritmico totale di 15 ms. Una panoramica sul codificatore e decoder è dato in relazione alla Fig. 3.4.
 codec G. 729. (a) encoder-compressione. (b) decodificatore-decompressione da ITU-T-G. 729 — ridisegnato con una certa semplificazione.
Figura 3.4. Codec G. 729. (a) encoder-compressione. (b) decodificatore-decompressione da ITU-T-G. 729 — ridisegnato con una certa semplificazione.
G. 729 Encoder. Il codificatore G. 729 è basato sul modello di codifica CELP (Code-Excited Linear-Prediction). Per ogni frame da 10 ms, il segnale vocale viene analizzato per estrarre i parametri del modello CELP. I parametri sono coefficienti di filtro di previsione lineare codificati come coppie spettrali di linea, indici adattivi e codetopici fissi e guadagni. Questi parametri sono codificati e trasmessi come payload all’applicazione VoIP. Come mostrato in Fig. 3.4, discorso preprocessed sono analizzati per i coefficienti del filtro di LP. Questi coefficienti vengono convertiti in coppie di spettro di linea (LSP) e vengono quantizzati utilizzando la quantizzazione vettoriale predittiva a due stadi (VQ). La stima del pitch open — oop viene calcolata per ogni frame da 10 ms in base a un segnale vocale percettivamente ponderato. L’analisi del pitch ad anello chiuso viene eseguita utilizzando il segnale target e la risposta all’impulso cercando attorno al valore del ritardo del pitch open-l oop. Il nuovo segnale target viene calcolato e utilizzato nella ricerca codetopic fissa per arrivare all’eccitazione ottimale. I guadagni di contributi codetopici adattivi e fissi sono quantizzati vettoriali. Infine, le memorie del filtro vengono aggiornate utilizzando il segnale di eccitazione determinato. Per ogni 80 campioni di input, l’encoder fornisce 10 byte di output compresso rendendo il bit rate totale 8 kbps. Questi 10 byte sono costituiti da diversi parametri elencati nella Tabella 3.4. Dalla tabella, si può osservare che la codifica G. 729 divide i parametri in diverse classi con ognuna di esse con alcuni bit. È completamente diverso dalla compressione G. 711 e G. 726. Per maggiori dettagli sulla codifica e parametri di cui alla Tabella 3.4 fare riferimento a .
G. 729 Decoder. Il decoder G. 729 è illustrato in Fig. 3.4, lettera b). Il decodificatore genera 80 campioni di valori PCM lineari a 16 bit per ogni 80 bit (10 byte) di dati. I parametri di input per il decodificatore sono i coefficienti LSP, i due ritardi di pitch frazionari, due vettori codetopici fissi e le due serie di guadagni codetopici adattivi e fissi. Inizialmente, i coefficienti LSP vengono interpolati e convertiti in coefficienti di filtro LP per ciascun telaio secondario. Per ogni controtelaio da 5 ms, l’eccitazione viene costruita aggiungendo i vettori codetopici adattivi e fissi.

Tabella 3.4. G.729 Parametri di Encoder e Bit Compresso di Allocazione per 10 ms Telaio

Nome del Parametro Codice Controtelaio 1 Controtelaio 2 Totale
Bit per
Telaio
spettro di linee di coppie (Lsp) L0, L1, L2, L3 18
Adaptive codetopic ritardo P1,P2 8 5 13
Passo ritardo di parità P0 1 1
Fisso codetopic indice C1,C2 13 13 26
Fisso codetopic segno S1,S2 4 4 8
Codetopic utili per questa fase – 1 GA1, GA2 3 3 6
Codetopic utili alla fase – 2 GB1, GB2 4 4 8
Bit totali in 10 ms telaio 80

il Discorso è ricostruito filtrando il eccitazione attraverso il filtro di sintesi LP. Il discorso ricostruito viene elaborato attraverso la fase di post-elaborazione, che include un post-filtro adattivo basato sui filtri di sintesi a lungo termine ea breve termine seguito da un filtro passa-alto e da un’operazione di ridimensionamento.
Oltre a un ritardo algoritmico di 15 ms, possono essere possibili ritardi a causa del tempo di esecuzione degli algoritmi di encoder e decoder nel processore. A seconda dell’implementazione, durante l’elaborazione di più canali su un processore, il ritardo aumenta per l’ultimo canale elaborato.

Leave a Reply