LPC音声コーダー(古いLPC10標準から始まり、これはここで参照しているようです)は、音声生成のソースフィルターモデルに基づいています。音声は、次のプロパティによって特徴付けることができます。
- 喉頭から発せられる生の音(声帯の振動、または空気が流れるだけで声帯が開いている)。
- 調音システムによって達成されるフィルターの伝達関数は、この原音をさらにフィルタリングします。
初期のLPCコーダー(LPC10)は、次の2つのステップのモデルを採用しています。
- 喉頭は、振幅特徴とするホワイトノイズを放出します。または振幅と周波数によって特徴付けられる周期的な衝撃列σσf0
- 調音システムの伝達関数はの形式であり、係数によって完全に特徴付けられます11 −Σkakz− kak
したがって、初期のLPCコーダー(LPC10など)の原理は、着信オーディオ信号のチャンクからこれらのパラメーターを推定することです。これらをネットワーク経由で送信します。サウンドジェネレーターを使用して、レシーバーでこれらのパラメーターからサウンドを再生します。このプロセスでは、元のオーディオサンプルは実際には送信されません。音楽のアナロジーを作ることは、ピアノの演奏を聞いて、それを書き起こし、楽譜を送って、誰かに反対側でそれを演奏させるようなものです...反対側の結果は元のパフォーマンスに近くなりますが、表現のみが送信されました。
これは、エンコーダーとデコーダーの両方で最後のpサンプルの移動平均を維持することを意味しますか?
いいえ、これは機能しません。エンコーダー側では、AR(自己回帰)推定と呼ばれるプロセスを実行して、入力信号のスペクトルエンベロープに最も一致するARフィルターの係数のセットを推定します。これは、調音システムによって実行されたフィルタリングの係数を回復する試みです。
これらの係数は(ピッチ、音声/無声フラグ、およびラウドネスと共に)ネットワークを介して送信されます。デコーダーは、これらの係数を使用して合成励起信号をフィルター処理します。これは、ホワイトノイズ(無声フレーム)または周期的インパルスの櫛(有声フレーム)のいずれかです。これらの係数は、出力信号を復元するためにデコーダーで次のように使用されます。y(n )
y(n )= e x c i t a t i o n (n )−Σkaky(n − k )
これは全極IIRフィルターであるため、線形に結合されたサンプルは、フィルターによって生成された以前のサンプルであることに注意してください。
エンコーダでこの平均信号と実際の信号の差に対応するデータのみを送信するようにするには、
「平均化」は行われず、差信号は送信されません。デコーダーは、いくつかのパラメーターを持つサウンドシンセサイザーです。エンコーダーは、入力信号に最もよく一致するこのシンセサイザーのパラメーターのセットを検索します。
なぜこれらの以前のサンプルの線形結合なのですか?
他のオプションも確かに可能ですが、自動回帰モデルを使用する利点は次のとおりです。
- このモデルでは、全極IIRフィルターを使用して調音システムをシミュレーションします。これは、少数の係数で強いスペクトルディップとピークをキャプチャできるため、優れたモデルです。そして、調音システムは確かに周波数の狭い帯域を強調/減衰することができます(フォルマントを参照)。すべてゼロのFIRフィルターを使用した場合、調音システムが達成できる種類のフィルター応答を正確にキャプチャするには、さらに多くの係数が必要になります。
- エンコーダー側では、フィルター係数の推定の問題は計算上効率的です。これは、自己相関の最初のいくつかのサンプルでLevinson-Durbin再帰を使用して行うことができます。より複雑な線形モデル(ARMA)または非線形モデルは、計算コストが高くなるか扱いにくくなります。
- デコーダー側では、合成は非常に単純です。デコーダーが出力したn個の前のサンプルを追跡するのに十分なメモリが必要です。
確かに、これらの前のサンプルの平均が次のサンプルのより良い指標になるでしょうか?
本当じゃない。たとえば、入力信号が正弦波であるとします。予測誤差はゼロですが、はほとんどの場合間違っています(特に、正弦波が時間の半分を厳密に増加し、残りの部分を厳密に減少しているという事実をキャプチャしません)時間なので、は以前の値の「間にある」べきではありません)。もちろん、音声信号は正弦波ではありませんが、ゼロ(平均化)のモデルよりも、パラメーター(次数p AR)のモデルの方がはるかに多くのモデリング能力を引き出すことができます。y^(n )= (2 −ω2)y(n − 1 )− y(n − 2 )y^(n )=y(n − 1 )+ y(n − 2 )2y(n )p
また、係数の最適値を見つけるための手順が得られる「より良い」(エラーの2乗の期待値を最小化する)の数学的な定義があることにも注意してください。