語音編譯碼G 711 G 729

2021-10-06 13:34:38 字數 2860 閱讀 6637

1. 語音編碼分類

(1)波形編碼: 以逼近聲音波形為目標,其代表演算法有g.711,其聲音清楚度好,語音的自然度高,但是壓縮效率比較差,常在32kbps以上。

(2)引數編碼: 將人的聲道抽象成乙個發聲模型,對這個模型的引數進行編碼,其特點是壓縮效率高,但是自然度比較差,能夠以極低速率進行編碼。

(3)波形引數混合編碼: 結合了波形編碼和引數編碼的優點,代表演算法有g.723, g.729等,能夠在4-16kbps速率進行高質量語音合成。

2. g.711

也稱為pcm(脈衝編碼調製),是國際電信聯盟訂定出來的一套語音壓縮標準,主要用於**。它主要用脈衝編碼調製對音訊取樣,取樣率為8k每秒。它利用乙個 64kbps 未壓縮通道傳輸語音頻號。 起壓縮率為1:2, 即把16位資料壓縮成8位。g.711是主流的波形聲音編解碼器。

g.711 標準下主要有兩種壓縮演算法。一種是µ-law algorithm (又稱often u-law, ulaw, mu-law),主要運用於北美和日本;另一種是a-law algorithm,主要運用於歐洲和世界其他地區。其中,後者是特別設計用來方便計算機處理的。這兩種演算法都使用乙個取樣率為8khz的輸入來建立64kbps的數字輸出。g.711採用一種稱為分組丟失隱藏(plc)的技術來減少丟包帶來的實際影響。有效的訊號頻寬在靜默期間通過語音活動檢測(vad)這一過程被減小。

8khz取樣率 x  16bit量化 = 128kbps , 2:1壓縮後為64kbps

3. g.729

g.729是itu-t定義的音訊編碼演算法,frame 只有10ms,g.729點到點的時延為25ms,g.729基於celp模式,用cs-acelp(conjugate-structure algebraic code excited linear prediction)方法以8kbps的波特率對語音進行編碼。

g.729 幾乎都使用於 voice over ip(voip),g.711編解碼器可將voip壓縮至 65kb/s,使之可以在區域網上傳輸。

g.729採用的是共軛結構的代數碼激勵線性**演算法(conjugate structure algebraic code excited linear prediction,cs-acelp),這是一種基於celp編碼模型的演算法。由於g.729編碼器能夠實現很高的語音質量(mos分4.1)和很低的演算法延時,被廣泛地應用於資料通訊的各個領域,如ip phone和h.323系統等。g.729是對8khz取樣16bit量化的線性pcm語音頻號進行編碼,壓縮後資料速率為8kbps,具備16:1的高壓縮率。

8khz取樣率 x  16bit量化 = 128kbps , 16:1壓縮後為8kbps

4. g.723

g.723是itu-t在2023年制訂成型的一種多**語音編譯碼標準。g.723編碼器採用lpc合成-分析法和感覺加權誤差最小化原理編碼。g.723標準可在6.3kbps和5.3kbps兩種位元速率下工作。對激勵訊號進行量化時,高速率(6.3kbps)編碼器的激勵訊號採用多脈衝最大似然量化(mp­-mlq),低速率(5.3kbps)編碼器的激勵訊號採用代數碼本激勵線性**(acelp)。其中,高位元速率演算法(6.3kbps)具有較高的重建語音質量,而低位元速率演算法(5.3kbps)的計算複雜度則較低[1]。與一般的低位元速率語音編碼演算法一樣,這裡的g.723標準採用的線性**的合成分析法也就是我們通常所說的analysis-by-synthesis。

5. g711 ,g729,g723 線路佔多少頻寬問題

頻寬=包長度×每秒包數

=包長度×(1/打包週期)

=(ethernet頭+ip頭+udp頭+rtp頭+有效載荷)×(1/打包週期)

=(208bit +160bit+64bit+96bit +有效載荷)×(1/打包週期)

=(528bit+(打包週期(秒)×每秒的位元數))×(1/打包週期)

=( 528 / 打包週期 ) + 每秒位元數

按照上面的計算公式:

g711:20ms打包,頻寬為 ( 528/20 + 64) kbit/s=90.4 kbit/s

g729:20ms打包,頻寬為 ( 528/20 + 8 ) kbit/s= 34.4 kbit/s

g723:5.3k,30ms打包,頻寬為 ( 528/30 + 5.3 ) kbit/s=22.9 kbit/s

業界一般按照下表提供的ip網頻寬係數和乙太網頻寬係數來設計網路頻寬:

編譯碼技術        壓縮速率(kbps)    打包週期(ms)    ip網頻寬係數   乙太網頻寬係數

g.711 a/u                      64                           20                         1.25                   1.41

g.729 a/b                       8                             20                         0.38                   0.54

g.723.1(5.3kbit/s)        5.3                          30                          0.27                   0.37

g.723.1(6.3kbit/s)        6.3                         30                           0.25                   0.36

h.263(384kbit/s)        ≈384                       10                            6                        6.2

注:採用某種編碼方式時,用64k乘以相應的頻寬係數就可以得出其實際占用的頻寬。當然如果是中繼介面,還需要考慮信令佔據一定的頻寬,一般按照2.5%來計算。

g729原始碼分析 9 g729 解碼

現在來分析g729的解碼.從g729的測試 看出來,解碼的過程被清晰地分成了兩個部分.第一部分,就解碼出lpc 係數與激勵,合成語音.第二部分,進行感加權,傾斜補償 這些與g723的處理是極其類似的,少了靜音壓縮,這樣就少了一大塊要分析的 了 先來看第一部分,也就是合成語音的部分 decod ld8...

G711 G723 G729線路佔多少頻寬問題

g.711 也稱為pcm 脈衝編碼調製 是國際電信聯盟訂定出來的一套語音壓縮標準,主要用於 它主要用脈衝編碼調製對音訊取樣,取樣率為8k每秒。它利用乙個 64kbps 未壓縮通道傳輸語音頻號。起壓縮率為1 2,即把16位資料壓縮成8位。g.711是主流的波形聲音編解碼器。g.711 標準下主要有兩種...

G711 G723 G729線路佔多少頻寬問題

頻寬 包長度 每秒包數 包長度 1 打包週期 ethernet頭 ip頭 udp頭 rtp頭 有效載荷 1 打包週期 208bit 160bit 64bit 96bit 有效載荷 1 打包週期 528bit 打包週期 秒 每秒的位元數 1 打包週期 528 打包週期 每秒位元數 按照上面的計算公式 ...