建築・設備見積りソフト、見積システムの事なら 和田特機株式会社

建設業向け 業務支援タブレットアプリシリーズ 好評発売中

和田特機株式会社HP

標本点群をトレースするⅠ

二週間のご無沙汰でした。SALです。

前回迄で、困難ではありますが何とか標本点群を再現できたとします。
(16bit-44.1/48KHz であれば、可能性は高いと思います。)
そこで今回からは、それらをどの様に繋いで元の波形を再現するかを考えます。

衝撃波の様な特殊なものを除けば、音波は解析関数で表せるはずなのですが、
解析関数と言う前提だけでは、残念ながら総ての標本点を通る関数を一つに絞ることはできません。
そのためには、標本化定理で言うところの「標本化周波数の半分(fs/2)以上の成分を含まない」ことが必要です。
この条件を入れて初めて一つに絞ることが可能なのです。
この件に関しては、これまで「手を変え品を変え」て説明してきましたので、ここでは省略します。
結論だけを言えば、教科書(?)にあるような階段状のギザギザ波形で繋いだものは、論外なのです。

教科書(?)では、標本点間の落差を1~2程度に描くことで、誤差(分解能)の内としてごまかしています。
実際のCDに記録されているデータで、その落差が数千の場合など、珍しくもありません。
と言うより、最近のCDでは差分の最大値が10000以上のPCMデータもざらです。
即ち、ギザギザで繋いだのでは、「その間の誤差が 10bit(1024) 以上」という場合も充分ありえます。

しかしながら、実際には此処で言う程ひどい出力(音)にならないのは、何故でしょう。
それは、その後にある fs/2 以上をカットする為の、アナログのローパスフィルタのおかげです。
もとの波形に対して、ギザギザ波形を 1/(2fs) だけ進めて(左に移動して)重ねてみると解り易いのですが、

(上図は、fs/12の単振動の例で、元の波形は灰色です)
そうすると、ギザギザ波形の水平部分の真ん中が標本点になり、一定の勾配部分では、前半分と後半分が点対称の関係になります。
つまり、後付のローパスフィルタで、誤差が相殺されると言う訳です。

残念ながら、この考えは誤りです。(正しく言い訳に過ぎません)
そのような結論を得るには、「標本化周期に対して一定の勾配」と見なせなければなりません。
そういった周波数領域は、大甘に見積もっても fs/100 以下です。
中域から高域をまともに再生したいと思うのであれば、元の波形を標本点群から逆算して、DACにその波形をトレースさせることです。
標本化定理の「最高周波数の周期の半分で標本化すれば良い」と言う意味は、
「再生時は標本点を再現すればそれで良い」のではなく「その標本点群から元の波形を逆算できる」ということなのです。
SALは、この元の波形を逆算することを、トレースと呼んでいます。

次回では、高精度に標本点群を再現しても、きちんとトレースしなければ、
それこそ後の祭り(アナログフィルタでは戻せない)であることを述べたいと思います。

コメント