ニコニコ大百科モバイル

7/2(月)よりスマホまたはPCでアクセスした場合、各デバイス向けのサイトへ自動で転送致します


ADPCM


ヨミ: エーディーピーシーエム
掲示板をミル!
4カキコ!

ADPCM(adaptive differential pulse code modulation:適応的差分パルス符号変調)とは、音デジタルデータに変換するフォーマットの一つである。

PCMと付いているので「LPCMを可逆に圧縮したもの」だと誤解されることもあるが、「PCM」が表すのは変調方式であってADPCMは非可逆圧縮フォーマットである。

品質は、32kb/sで56kb/s μ-law[外部] PCMと同等であると言われている。


概要


DPCMでは、一つ前のサンプルと今のサンプルの差分をそのまま記録していた。しかし、これでは波形の変化が差分をあらわす為に用意したbit数よりも更に非常に小さい場合にまだデータサイズ駄が出てしまう。

ADPCMも「前のサンプルとの差分を記録する」という点は同じであるが、「予測値というものを導入して差分の表現方法を変える」という手法により差分を表現するためのbit数を更に削減している。

特徴としてはDPCMのものを引き継ぎ高速な圧縮展開が可で且つ処理遅延が小さい。そのためデータ量の削減と展開の高速性を両立しなければならない場合などに多く用いられている。

デコード処理が単純なわりに良好な音質を実現出来るため、携帯電話に搭載された音ICのなかにはADPCMをデコードできるものもあった。


仕組み


初期状態での波形は±0、予測値は実装によって異なる。

1つのサンプルがnbitで表される場合、内訳は次の様になる。

bit(n-1) bit(n-2)~0
増減方向 変化率

増減方向とはそのサンプルが一つ前のサンプルに対して増加か減少かを表す。0で増加、1で減少が一般的である。

変化率は一つ前のデータにより決定された予測値にかける係数を表し、その係数は次の式で決定される。

 (変化率×2+1)÷2^(n-1) ※ただし2^(n-1)は「2のn-1乗」を表す(最上位bitが符号のため)

言い換えれば、上の式の結果を一つ前のサンプルによって決定された予測値に乗ずることによりDPCMでいうところの「前のサンプルとの差分」の絶対値が決定されるのである。

そしてこの差分が前のサンプルと加算され、今のサンプルがデコードされることとなる。

また今のサンプルの変化率に応じ、次のサンプルにて使用する予測値が修正される。具体的な修正の方法は実装によって異なるが、一般的に変化率の最上位が0なら次の予測値は減少、1なら増加する。

波形変化が非常に小さい状態がずっと続くと予測値が小さくなりすぎて波形変化を表すことが出来なってしまうが、これを回避する方法も実装によって異なる。

より詳しい説明は参考サイトの1番を参照されたい。


関連動画



■sm12752892[ニコ動]

■sm2955096[ニコ動]
■sm5640359[ニコ動]
■sm10974105[ニコ動]


関連項目



参考サイト



最終更新日: 11/04/05 01:28
タグ検索 パソコン版を見る


[0]TOP
ニコニコ動画モバイル
運営元:ドワンゴ