各種語音編碼總結

2022-07-19 11:39:21 字數 4599 閱讀 8455

g.726有四種位元速率:, 32, 24, 16 kbit/s adaptive differential pulse code modulation(adpcm),最為常用的方式是 32 kbit/s,但由於其只是 g.711速率的一半,所以可將網路的可利用空間增加了一倍。g.726具體規定了乙個 64 kbpsa-law 或 µ-law pcm 訊號是如何被轉化為40, 32, 24或16 kbps 的adpcm 通道的。在這些通道中,24和16 kbps 的通道被用於數位電路倍增裝置(dcme)中的語音傳輸,而40 kbps 通道則被用於 dcme 中的資料解調訊號(尤其是4800 kbps 或更高的數據機)。

g.726 encoder 輸入一般都是g.711 encoder的輸出:64kbps a-law or u-law.其演算法實質就是乙個adpcm, 自適應量化演算法。

g.729:

語音編碼的頻寬計算

編碼方法

編碼所需頻寬

實際所需要的網路頻寬

g.711

64 kbps

87.2 kbps

g.729

8 kbps

31.2 kbps

g.723.1

6.4 kbps

21.9 kbps

g.723.1

5.3 kbps

20.8 kbps

g.726

32 kbps

55.2 kbps

g.726

24 kbps

47.2 kbps

g.728

16 kbps

31.5 kbps

internet話音分組傳輸技術

在ip網中傳輸層有兩個並列的協議:tcp和udp。

tcp是面向連線的,它提供高可靠性服務;ucp是無連線的,它提供高效率的服務。

高可靠性的tcp用於一次傳輸要交換大量報文的情況,高效率的udp用於一次交換少量的報文或實時性要求較高的資訊。

實時傳輸協議rtp提供具有實時特徵的、端到端的資料傳輸業務,可以用來傳送聲音和活**像資料,在這項資料傳輸業務中包含了裝載資料的識別符號、序列號、時戳以及傳送監視。通常rtp的協議資料單元是用udp分組來承載的。而且為了儘量減少時延,話音淨荷通常都很短。圖3表示乙個ip話音分組的結構,圖中 ip,udp和rtp的控制頭都按最小長度計算。 這種ip話音分組的開銷很大,約為66%~80%。於是有人提出了組合rtp分組的概念

採用這種組合復用方法的確可以大大提高傳輸效率,但是目前尚無標準。

如果支援rtp的網路能提供組播功能,則它也可用組播方式將資料送給多個目的使用者。

rtp 本身沒有提供任何確保及時傳送的機制,也沒有提供任何傳輸質量保證的機制,因而業務質量完全由下層網路的質量來決定。同時,rtp不保證資料報按序號傳送,即使下層網路提供可靠性傳送,也不能保證資料報的順序到達。包含在rtp中的序列號就是供接收方重新對資料報排序之用。

與rtp相配套的另乙個協議是rtcp協議。rtcp是rtp的控制協議,它用於監視業務質量並與正在進行的會話者傳送資訊。

因此,我們可以根據這個圖3計算出每路g.729編碼的頻寬佔用量:

頻寬占用=傳輸的總位元組數 / 傳輸的總時間

頻寬=(20byte(ip頭)+8byte(udp頭)+12byte(rtp頭)+20byte(資料))/20ms

=60byte/20ms

以上計算公式含義為:每20ms,需要傳輸的位元組數包括20個位元組的ip包頭,8個位元組的udp包頭,12各位元組的rtp包頭,20位元組的語音資料共60位元組,結果為:3 byte/ms=3000 byte/s=24000bit/s=24kbit/s。

因此,理論上g.729中每個資料報包含兩幀語音的編碼方式,占用頻寬24kbit/s,而又有封裝效率的估算公式為:

封裝效率=[(壓縮後的語音包× n × 幀長/ 8)] / [(壓縮後的語音包×n× 幀長/ 8 )+40] 。

n表示打進n個語音包。

以g.729信源編碼為例,如乙個rtp包打進乙個語音包,則實際傳送碼流為40kbit/s,時延約為 10 ms;

如打兩個語音包,則實際傳送碼流為24kbit/s,時延約為 20ms;

如打四個語音包,實際傳送碼流為16kbit/s,時延為40ms。

為保證編碼打包的時延,若將預設語音包的數量定為兩個,實際傳送碼流即為24kbit/s,而不是8kbit/s。

因此對於語音業務這類實時性要求非常高的業務,要保證語音的質量,根據itu-t標準語音的全程往返時延應當控制在450ms為宜,編碼打包後形成的單位碼流通常是在20kbit/s。

由以上論述我們知道,每路g.729編碼的ip語音占用約20kbit/s的頻寬,實際占用的總頻寬數=語音總路數*20kbit/s。

語音編譯碼方式及其所占用的頻寬的關係 

語音編碼的頻寬和實際所占用的頻寬是不同的,語音編碼的頻寬是實際語音包的頻寬,而語音包在ip網路上傳輸時,還需要增加各種包頭,如rtp包頭、udp包頭、ip包頭。由於語音包本身很小,所以相對而言這些額外的頻寬是很可觀的。在下表中列出了各種編碼方式下的打包時長以及所對應的實際頻寬。

實際頻寬與語音編碼和打包時長的關係:

語音編譯碼        打包時長     語音資料頻寬     實際所佔頻寬

g.723.1(5.3k)       30ms        5.3k            5.3*(20+40)/20 =   16.2k 

g.723.1(5.3k)       60ms        5.3k            5.3*(40+40)/40 =   10.6k

g.723.1(6.3k)       30ms        6.3k            6.3*(24+40)/24 =   16.8k

g.723.1(6.3k)       60ms        6.3k            6.3*(48+40)/48 =   11.6k

g.729               20ms        8k              8*(20+40)/20 =   24k  

g.729               60ms        8k              8*(60+40)/60 =   13.3k

由上表可以很明顯的看出,打包時間越長,所占用的實際頻寬越小,但時延越大。

說明1、rtp包頭:12bytes   udp包頭:8bytes    ip包頭:20bytes。

2、表中的頻寬計算中沒有包含物理幀頭,需根據具體網路而定。

3、表中的頻寬計算中,沒有考慮靜音檢測。靜音檢測的效率按60%計算。

音訊:

名稱                取樣率           取樣精度                占用頻寬(kbps)

g.723.1

8k16bit

5.3 ~ 6.3kbps

ilbc

8k16bit

13.33 ~ 15.2kbps

ccitt a-law

8k16bit

64 ~ 128kbps

影象解析度 —— 幀數

占用頻寬(kbps)

160 × 120 —— 5 ~ 30fps

20 ~ 100kbps

176 × 144 —— 5 ~ 25fps

20 ~ 110kbps

320 × 240 —— 5 ~ 30fps

40 ~ 200kbps

352 × 288 —— 5 ~ 25fps

40 ~ 220kbps

640 × 480 —— 5 ~ 30fps

120 ~ 1000kbps

720 × 576 —— 5 ~ 25fps

120 ~ 1500kbps

國際電信聯盟 g 系列典型語音壓縮標準的引數比較

演算法型別

位元速率 (kbit/s)

演算法延時 (ms)

g.711

a-law / μ -law640

g.722

sb-adpcm

64/56/48

0g.723.1

mp-mlq/acelp

6.3/5.3

37.5

g.726

adpcm

16/24/32/40

0g.727

embedded adpcm

16/24/32/40

0g.728

ld-celp

16< 2

g.729

cs-acelp815

各種語音編碼總結

g.726有四種位元速率 32,24,16 kbit s adaptive differential pulse code modulation adpcm 最為常用的方式是 32 kbit s,但由於其只是 g.711速率的一半,所以可將網路的可利用空間增加了一倍。g.726具體規定了乙個 64 ...

各種語音編碼總結

g.726有四種位元速率 32,24,16 kbit s adaptive differential pulse code modulation adpcm 最為常用的方式是 32 kbit s,但由於其只是 g.711速率的一半,所以可將網路的可利用空間增加了一倍。g.726具體規定了乙個 64 ...

語音編碼標準

1.波形編碼 波形編碼是最簡單也是應用最早的語音編碼方法。最基本的一種就是pcm編碼,如g.711 建議中的a 律或 律。apcm dpcm和adpcm也屬於波形編碼的範疇,使用這些技術的標準有g.721 g.726 g.727 等。波形編碼具有實施簡單 效能優良的特點,不足是編碼頻寬往往很難再進一...