(轉)語音編碼演算法AMR NB , AMR WB 和AMR WB+的區別
原地址:http://www.cnblogs.com/c6000/archive/2011/03/29/1999289.html
網上有些分析AMR NB 和AMR WB區別的資料,為節省篇幅,就不一一轉過來了,可以參考如下
不過我感覺這些對比都是對比的表面現象,沒有對比AMR NB和AMR WB的本質不同,AMR NB和AMR WB語音編解碼都是使用的是多位元速率寬頻代數碼激勵線性預測ACELP(Algebraic Code Excitation Linear Prediction)。
AMR NB的語音頻寬範圍:300-3400Hz,8KHz取樣
AMR WB的語音頻寬範圍: 50-7000Hz,16KHz取樣
AMR-WB+的取樣速率是在16~48 kHz之間
AMR WB與AMR NB的不同之處在於AMR WB在16k取樣率的運作,兩個頻率帶50~6400Hz 和6400~7000Hz 進行編碼,用來降低複雜度,將位演算法集中到更重要的頻率區。低頻帶使用ACELP演算法進行編碼。 新增幾個特徵來達到一個高的主觀質量。 線性預測(LP)演算法是在每隔20ms 的幀要進行一次線性預測演算法,每5ms搜尋一次自適應碼本。這個過程是在12.8Kbs 速率下進行的.高頻帶是在解碼器端使用低帶和隨機激勵的引數重建的, 目的是調整與在聲音基礎上的低頻有關的高
頻帶. 高頻帶的聲頻通過使用由低帶LP 過濾器產生的LP 濾波器進行重建.
下面來看看AMR WB+,AMR WB+不像現有編碼器僅採用單一演算法,而是對處理語音和音效分別採用ACELP(Algebraic Code Excited Linear Prediction)編碼技術和變換碼激勵(TCX)編碼技術,這種混合模式能提供比AMR WB同更好的音訊質量。
對於單聲道編碼, AMR WB+採用混合的ACELP/TCX編碼模型。AMR WB+編解碼器能接受單聲道或立體聲的輸入訊號,取樣頻率在16~48 kHz之間。單聲道訊號可分解成2個頻帶:一個是低頻訊號,取樣率低至12.8 kHz,即AMR WB的內部頻率;另一個則是高頻訊號,含有6.4 kHz以上的所有頻率。混合的ACELP/ TCX編碼模型應用於低頻訊號,並利用一種頻寬延伸(BWE)法對高頻訊號進行編碼,擷取出能代表頻譜封包與增益的引數,訊號經過量化後再傳送至解碼器。解碼器會使用外推法求算出高頻訊號的結構。每個子幀都進行增益校正與運算,然後再進行傳輸,藉此確保低頻帶與高頻帶之間6.4
kHz銜接處的連續性。由於只傳輸少量的引數,因此BWE總位元率僅有0.8 Kb/s。
對於立體聲編碼,AMR WB+立體聲編碼和單聲道編碼一樣會分割頻帶。低頻帶立體聲訊號編碼採用一套新的半引數技術。兩個聲道經過壓縮混合後形成一個單聲道訊號,再用上述的AMR—WB+核心編解碼器進行編碼。高頻帶部分(6.4 kHz以上)則在兩個立體聲聲道上運用引數型BWE進行編碼,這與對單聲道訊號的高頻部分進行編碼是一樣的。編解碼器能在6~48 Kb/s的位元率下運作,並能在更高的頻率中支援所有可聽的頻譜。有別於在7 kHz頻帶下運作的AMR WB,AMR WB+能將編碼頻寬延伸至19 kHz。因此即使在語音訊號上亦能發揮超越AMR
WB的效能(AMR WB頻寬14 kHz)。