G. 729 FAMILIE AV LAV-BIT-RATE Kodeker (VoIP)

3.6
G. 729-familien av kodeker brukes populært i De Fleste VoIP-distribusjoner. G. 729 er EN ITU-T g. 729 anbefaling for en konjugat-struktur algebraisk-kode-spent lineær-prediksjon (CS-ACELP)
talekomprimeringsalgoritme. G. 729 gjør bruk av menneskelige vokal skrift modeller egnet for talesignaler i motsetning Til G. 711 og g. 726 kodeker, som bruker bølgeform – basert komprimering. Basic g. 729 komprimerer stemme til 8 kbps, som gir åtte ganger mer komprimering Enn G. 711 og gir god talekvalitet.
G. 729 Vedlegg A (G.729A) er den reduserte kompleksitetsversjonen Av g. 729-anbefalingen, og den komprimerer stemme til de samme 8 kbps med bytte av et lite tap av kvalitet i forhold Til G. 729. Denne versjonen er utviklet hovedsakelig for multimedia samtidige tale-og dataprogrammer, selv om bruken av kodeken ikke er begrenset til disse programmene. G. 729A er bit stream interoperable med fullversjonen Av G. 729. Denne kodeken har innebygd pakketapskjulthet. Kodeken Med suffiks b betegnet Som G. 729B Eller G. 729AB støtter VAD i koderen og CNG i dekoderen . G.729 har en bred familie av kodeker, og noen av de
populære kodeker er oppført I Tabell 3.3. I VoIP distribusjon, Er G. 729AB populært brukt. I wideband-oppgraderingen kan disse kodekene erstattes Med G. 729.1. Disse wideband kodeker er interoperable med narrowband versjoner. Derfor bør en wideband codec alene være tilstrekkelig for både wideband og 8-kbps narrowband-støtte. Bortsett Fra G. 722 komprimerer andre bredbåndskodeker stemme til bithastigheter lavere Enn G. 711. I det følgende avsnittet er det gitt en oversikt over G. 729AB på Høyt nivå. Codec G. 729AB gjør Bruk Av G. 729 som en baseline standard. For bedre forståelse Av G. 729AB, se G. 729, G. 729B og G. 729A anbefalinger.

Tabell 3.3. ITU-T G. 729 Familie Av Narrowbond Og Wideband Tale Kodeker

Kodeknavn Beskrivelse Søknad
G. 729 Grunnleggende 8-kbps CS – Støttes På VoIP-stemme
ACELP tale codec gateways
G. 729b G.729 med stillhet
komprimering
G. 729a Redusert kompleksitet Populært På VoIP-adaptere OG IP
8 – kbps CS-ACELP telefoner, kompatible Med G. 729,
talekodek og G. 729.1
G. 729ab G. 729A med stillhet kompatibel Med G. 729, G729B,
komprimering G729.1
G. 729E (G.729 11.8-kbps CS-ACELP ikke populær I VoIP, fungerer bedre
Vedlegg E) talekoding for musikk og bakgrunn og
algoritme brukes i videoprogrammer
G. 729. 1 bredbånd Innebygd variabel 8 – bredbånd stemme
og smalbånd 32 kbps, bits
interoperable med
G. 729, G.729A

G. 729 Codec

G. 729 codec består av en separat koder og dekoder. Kodeken komprimerer taleprøver som rammer ved HJELP AV EN CS-ACELP analyse-by-syntese prosedyre. Kodeken opererer med 10-ms rammer med et blikk foran 5 ms, noe som resulterer i total algoritmisk forsinkelse på 15 ms. en oversikt over koder og dekoder er gitt i forhold Til Fig. 3.4.
 G. 729 kodek. (a) encoder-komprimering. (b) dekoder-dekompresjon FRA ITU-T-G. 729-tegnes på nytt med noen forenkling.
Figur 3.4. G. 729 kodek. (a) encoder-komprimering. (b) dekoder-dekompresjon FRA ITU-T-G. 729-tegnes på nytt med noen forenkling.
G. 729 Encoder. G. 729-koderen er basert på KODEMODELLEN code-excited linear-prediction (CELP). For hver 10-ms ramme analyseres talesignalet for å trekke ut parametrene TIL CELP-modellen. Parametrene er lineære prediksjonsfilterkoeffisienter kodet som linjespektrale par, adaptive og faste kodetopiske indekser og gevinster. Disse parametrene er kodet og overføres som nyttelast Til VoIP-programmet. Som vist I Fig. 3.4, preprocessed tale analyseres FOR LP filter koeffisienter. Disse koeffisientene konverteres til linjespektrumpar (LSP) og kvantiseres ved hjelp av prediktiv totrinns vektorkvantisering (VQ). Den open-oop pitch estimering beregnes for hver 10-ms ramme basert på en perceptually vektet talesignal. Lukket-loop pitch analyse utføres ved hjelp av målet signal og impulsrespons ved å søke rundt verdien av open-l oop pitch forsinkelse. Det nye målsignalet beregnes og brukes i det faste kodetopiske søket for å komme frem til optimal eksitasjon. Gevinsten av adaptive og faste kodetopiske bidrag er vektorkvantisert. Til slutt oppdateres filterminner ved hjelp av det bestemte eksitasjonssignalet. For hver 80 prøver av inngang gir koderen 10 byte komprimert utgang, noe som gjør den totale bithastigheten 8 kbps. Disse 10 byte består av flere parametere som er oppført i Tabell 3.4. Fra bordet kan det observeres At g. 729 koding deler parametere i flere klasser med hver av dem som har noen få biter. Det er helt forskjellig Fra g. 711 og g. 726 komprimering. For mer informasjon om koding og parametere referert I Tabell 3.4 refererer til .
G. 729 Dekoder. G. 729 dekoderen er illustrert I Fig. 3.4 (b). Dekoderen genererer 80 prøver av 16-bits lineære PCM-verdier for hver 80 bits (10 byte) av data. Inngangsparametrene for dekoderen er LSP-koeffisienter, de to fraksjonelle tonehøydeforsinkelsene, to faste kodetopiske vektorer og de to settene med adaptive og faste kodetopiske gevinster. I utgangspunktet blir LSP-koeffisientene interpolert og konvertert TIL lp-filterkoeffisienter for hver underramme. For hver 5-ms underramme er eksitasjonen konstruert ved å legge til adaptive og faste kodetopiske vektorer.

Tabell 3.4. G.729 Encoder Parametere Og Komprimerte Biter Tildeling for 10-ms Ramme

Parameternavn Kodeord Underramme 1 Underramme 2 Totalt
Biter per
Ramme
Linjespektrumpar (Lsp) L0, L1, L2, L3 18
Adaptiv kodetopisk forsinkelse P1, P2 8 5 13
Pitch forsinkelse paritet P0 1 1
Fast kodetopisk indeks C1, C2 13 13 26
Fast kodetopisk tegn S1, S2 4 4 8
Codetopic gevinster på scenen-1 GA1, GA2 3 3 6
Codetopic gevinster på scenen-2 GB1, GB2 4 4 8
totalt biter i 10-ms ramme 80

Tale rekonstrueres ved å filtrere eksitasjon gjennom LP-syntesefilteret. Den rekonstruerte talen behandles gjennom postprosesseringsstadiet, som inkluderer et adaptivt postfilter basert på langsiktige og kortsiktige syntesefiltre etterfulgt av et høypassfilter og skaleringsoperasjon.
i tillegg til en algoritmisk forsinkelse på 15 ms, kan forsinkelser være mulig på grunn av utførelsestiden til koderen og dekoderalgoritmene i prosessoren. Avhengig av implementeringen, mens du behandler flere kanaler på en prosessor, øker forsinkelsen for den sist behandlede kanalen.

Leave a Reply