音声圧縮処理の基本 ―― 音楽CDやWAVファイルで使われている波形符号化方式
tag: 組み込み ディジタル・デザイン Interface
技術解説 2010年7月22日
3.DPCM
サンプリング周期が短い場合,音声の隣接サンプル間の変化は小さくなります.従って,隣接サンプルの差分をとれば,結果として得られる信号は,元の音声よりも信号の散らばりの程度を小さくできます.つまり,同じビット数ならば,振幅が大きく変化する元の信号よりも,差分信号を量子化する方が信号の劣化が少なくなります.このように差分信号を量子化する方法をDPCMと呼びます(図15).
音声が急激に変化する部分とゆるやかに変化する部分では,差分信号であっても両者の差が大きくなります.このような信号に対して固定の量子化幅を用いることは効率が悪くなります.そこで,信号の大きさに合わせて量子化幅を変更し,圧縮効率を改善する方法が提案されています.この方法を適応量子化と呼びます(図16).
4.ADPCM
音声信号は多くの場合,過去の信号と密接に関係しているため,過去の値から現在の値をある程度予測できます.予測値と現在の音声との差分は予測誤差と呼ばれ,DPCMのような単純な隣接サンプル間差分よりもさらに信号のばらつきを抑えることができます(図17).
従って,予測誤差を量子化の対象とし,さらに適応量子化を導入すれば非常に高い圧縮効率を得ることができます.このような予測と量子化の二つの適応制御を備えた方法をADPCM(4)と呼びます.ADPCMはパソコンのWAVファイルや,PHS電話,テレビ電話などに利用されています.
ADPCMはエンコーダとデコーダが複雑になりますが,少ないビット数でも高い音質を保持できるという特徴があります.
ここではITUで定められているG.726方式のADPCMについて詳細に説明します.
G.726では,ADPCM信号I(n)の値に基づき,量子化幅を適応的に変更します.また,デコーダも同じ手順で行われるので,デコーダ側とエンコーダ側でそれぞれ得られる信号は同じ値となります.
● ADPCMエンコーダの構成
ADPCMエンコーダの構成を図18に示します.信号の流れが複雑なので,得られる信号の順番を図中の番号で示します.
大まかな流れは,以下のようになります.
①入力信号sl(n)を得る.
②予測値se(n)を計算する.
③差分信号d(n)=sl(n)-se(n)を得る.
④適応量子化幅y(n)を更新する.
⑤ADPCM信号I(n)を計算する.適応量子化した信号がADPCM信号I(n)として送信される.
⑥量子化差分信号dq(n)を計算する.
⑦再合成信号sr(n)を計算する.
⑧予測係数を更新する.