g723原始碼詳細分析 17 舒適雜訊解碼

2021-06-03 05:08:59 字數 535 閱讀 6811

dec_cng舒適雜訊解碼

知道舒適雜訊如何生成,解碼就簡單了.

sid會傳遞濾波引數(在濾波器相似度不高時,sid報文會被傳送)

解出報文裡的lpc引數與增益估值

**片段:

/** sid frame decoding

*/deccng.sidgain = dec_sidgain(line->sfs[0].mamp);

/* inverse quantization of the lsp */

lsp_inq( deccng.lspsid, decstat.prevlsp, line->lspid, 0) ;

calc_exc_rand:生成隨機激勵,這個在編碼舒適雜訊時分析過了,編譯碼多方只要同步deccng.randseed

即可lpc插值:

/* interpolate the lsp vectors */

lsp_int( qntlpc, deccng.lspsid, decstat.prevlsp ) ;

之後就是合成語音,同正常的語音包一樣的處理

g723原始碼詳細分析 三 lsp量化

4 lsp系數量化 現在來分析這個 10 lsp係數已經計算出來了,由於lsp的性質,可以將它們分成若干段,分別量化 它們將會被分成 3,3,4這三個分向量 每個向量都會有乙個256的碼本表 大概是這麼多的,可以直接計算一下那個陣列的大小 lsp qnt 這個函式,執行lsp量化的過程,會形成乙個l...

g723原始碼詳細分析 18 丟包補償

g723對網路丟包行為了一些處理 涉及的函式為comp info regen comp info 負責計算插值依據 它的四個引數 word16 buff 激勵陣列,包含之前的145個激勵 word16 olp 當前幀的基音週期 word16 gain 輸入增益 歸一化的 word16 shgain ...

g723原始碼詳細分析 19 基音後置濾波器

現在來分析g723基音後置濾波器 根據基音周期間,激勵訊號的相關性,來對激勵訊號做乙個增強處理 相應的函式分別是 comp lpf filt lpf comp lpf 負責計算最佳的基音延後,具體地說,是在基音週期延遲附近,找出最匹配當前子幀激勵的60個連繼激勵e i 使用的方法自然找自相關最大的....