G. 729 rodina kodeků s nízkou bitovou rychlostí (VoIP)

3.6
rodina kodeků G. 729 se běžně používá ve většině nasazení VoIP. G. 729 je ITU-T G. 729 doporučení pro algoritmus komprese řeči algebraické-kódově excitované lineární predikce (CS-ACELP)
. G. 729 využívá modely lidského hlasového traktu vhodné pro hlasové signály na rozdíl od kodeků G. 711 A G. 726, které používají kompresi založenou na tvaru vlny. Základní G. 729 komprimuje hlas na 8 kbps, což poskytuje osmkrát větší kompresi než g. 711 a poskytuje dobrou kvalitu hlasu.
G. 729 Příloha A (G.729A) je verze s omezenou složitostí doporučení G. 729 a komprimuje hlas na stejných 8 kbps s kompromisem mírné ztráty kvality ve srovnání s G. 729. Tato verze je vyvinuta hlavně pro multimediální simultánní hlasové a datové aplikace, i když použití kodeku není omezeno na tyto aplikace. G. 729A je bit stream interoperabilní s plnou verzí G. 729. Tento kodek má vestavěné utajení ztráty paketů. Kodek s příponou B označenou jako G. 729B nebo G. 729AB podporuje vad v kodéru a CNG v dekodéru . G.729 má širokou rodinu kodeků a některé z
populárních kodeků jsou uvedeny v tabulce 3.3. Při nasazení VoIP se běžně používá G. 729AB. Při širokopásmovém upgradu mohou být tyto kodeky nahrazeny kódem G. 729. 1. Tyto širokopásmové kodeky jsou interoperabilní s úzkopásmovými verzemi. Proto by samotný širokopásmový kodek měl stačit jak pro širokopásmovou, tak pro úzkopásmovou podporu 8 kbps. Kromě G. 722 komprimují ostatní širokopásmové kodeky hlas na přenosové rychlosti nižší než g. 711. V následující části je uveden přehled na vysoké úrovni O G. 729AB. Kodek G. 729AB používá G. 729 jako základní standard. Pro lepší pochopení g. 729AB, viz doporučení G. 729, G. 729B a G. 729A.

tabulka 3.3 ITU-T G. 729 Rodina Narrowbond a širokopásmových řečových kodeků

název kodeku popis aplikace
G. 729 základní 8-kbps CS – podporováno na VoIP hlasu
kodek řeči acelp brány
G. 729B G.729 s tichem
komprese
G. 729A snížená složitost populární na VoIP adaptéry a IP
8 – kbps CS-acelp telefony, kompatibilní s G. 729,
řečový kodek a G. 729.1
G. 729AB G. 729A s mlčením kompatibilní s G. 729, G729B,
komprese G729.1
G. 729E (G.729 11.8-kbps CS-ACELP není populární ve VoIP, funguje lépe
Příloha E) kódování řeči pro hudbu a pozadí a
algoritmus se používá ve video aplikacích
G. 729. 1 wideband Vložené proměnné 8- Wideband voice
a úzkopásmové 32 kbps, bity
interoperabilní s
G. 729, G.729 a

kodek G. 729

kodek G. 729 se skládá ze samostatného kodéru a dekodéru. Kodek komprimuje vzorky řeči jako rámce pomocí postupu analýzy podle syntézy CS-ACELP. Kodek pracuje s 10-ms snímky s pohledem před 5 ms, což má za následek celkové algoritmické zpoždění 15 ms. přehled o kodéru a dekodéru je uveden ve vztahu k obr. 3.4.
 g.729 kodek. (a) encoder-komprese. b) dekodér-dekomprese z ITU-T-G. 729-překreslena s určitým zjednodušením.
obrázek 3.4. G. 729 kodek. (a) encoder-komprese. b) dekodér-dekomprese z ITU-T-G. 729-překreslena s určitým zjednodušením.
Kodér G.729. Kodér G. 729 je založen na kódovacím modelu celp (code-excited linear-prediction). Pro každý 10-ms snímek je analyzován řečový signál, aby se extrahovaly parametry modelu CELP. Parametry jsou koeficienty filtru lineární predikce kódované jako spektrální páry čar, adaptivní a pevné kodetopické indexy, a zisky. Tyto parametry jsou kódovány a přenášeny jako užitečné zatížení do VoIP aplikace. Jak je znázorněno na obr. 3.4, předzpracovaná řeč je analyzována na LP filtrační koeficienty. Tyto koeficienty jsou převedeny na páry čárového spektra (LSP) a jsou kvantovány pomocí prediktivní dvoustupňové vektorové kvantizace (VQ). Odhad rozteče open-oop je vypočítán pro každý 10-ms snímek na základě percepčně váženého řečového signálu. Analýza rozteče v uzavřené smyčce se provádí pomocí cílového signálu a impulsní odezvy hledáním kolem hodnoty zpoždění rozteče open-l oop. Nový cílový signál je vypočítán a použit v pevném kodetopickém vyhledávání, aby se dosáhlo optimálního buzení. Zisky adaptivních a pevných kodetopických příspěvků jsou kvantovány vektory. Nakonec jsou paměti filtru aktualizovány pomocí stanoveného budicího signálu. Pro každých 80 vzorků vstupu dává kodér 10 bajtů komprimovaného výstupu, což činí celkovou přenosovou rychlost 8 kbps. Těchto 10 bajtů se skládá z několika parametrů uvedených v tabulce 3.4. Z tabulky lze pozorovat, že kódování G. 729 rozděluje parametry do několika tříd, přičemž každá z nich má několik bitů. Je zcela odlišný od komprese G.711 A G. 726. Další podrobnosti o kódování a parametrech uvedených v tabulce 3.4 viz .
Dekodér G.729. Dekodér G. 729 je znázorněn na obr. 3.4 písm. b). Dekodér generuje 80 vzorků 16bitových lineárních hodnot PCM na každých 80 bitů (10 bajtů) dat. Vstupní parametry dekodéru jsou LSP koeficienty, dvě frakční zpoždění rozteče, dva pevné kodetopické vektory a dvě sady adaptivních a pevných kodetopických zisků. Zpočátku jsou koeficienty LSP interpolovány a převedeny na koeficienty filtru LP pro každý pomocný rám. Pro každý 5-ms pomocný rám je excitace konstruována přidáním adaptivních a pevných kodetopických vektorů.

tabulka 3.4. G.729 parametry kodéru a přidělení komprimovaných bitů pro 10-ms Snímek

název parametru kódové slovo pomocný rám 1 pomocný rám 2 celkem
bitů na
Snímek
páry Line spektra (LSP) L0, L1, L2, L3 18
adaptivní kodetopické zpoždění P1, P2 8 5 13
Parita zpoždění hřiště P0 1 1
Opraveno kodetopický index C1, C2 13 13 26
pevná kódová značka S1, S2 4 4 8
Kodetopické zisky ve stadiu-1 GA1, GA2 3 3 6
Kodetopické zisky ve stadiu-2 GB1, GB2 4 4 8
celkem bitů v 10-ms rámu 80

řeč je rekonstruována filtrováním excitace přes LP syntézní filtr. Rekonstruovaná řeč je zpracována v postprocesní fázi, která zahrnuje adaptivní postfiltr založený na dlouhodobých a krátkodobých syntézních filtrech následovaných high-pass filtrem a škálováním.
kromě algoritmického zpoždění 15 ms může být zpoždění možné kvůli době provádění algoritmů kodéru a dekodéru v procesoru. V závislosti na implementaci se při zpracování několika kanálů na jednom procesoru zvyšuje zpoždění posledního zpracovaného kanálu.

Leave a Reply