assi
assi
理論?派・自作ローコストオーディオをやってますが、実はハイエンドやオカルトも好きだったりします。よろしくお願いします。

マイルーム

リビングオーディオ
リビングオーディオ
持ち家(戸建) / リビング兼用 / オーディオ・シアター兼用ルーム / 16畳~ / 防音なし / スクリーン~120型 / ~5.1ch
メイン:自作3wayマルチアンプ サブ:LinuxによるPCオーディオ 3wayマルチアンプだったり、フルレンジの時もあり。気分で変わります。
所有製品

レビュー/コメント

レビュー/コメントはありません

カレンダー

    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31    

最新のレス

日記
製品レビュー/コメント

製品レビュー/コメントへのレスはありません

お気に入り製品

お気に入り製品はありません

日記

現実のアップサンプリング4

このエントリーをはてなブックマークに追加
2018年05月03日

急峻なフィルタには副作用もあります。時間軸で見るとインパルスレスポンスが長く広がってしまうのです。
直線位相の場合には前後に、最小位相の場合には後ろだけにリンギングが続きます。

前回作ったフィルタ(21.5kHz以上を急激にカットする直線位相フィルタ)のインパルスレスポンスです。

このように前後にリンギングが長くでます。

とくに前に出るリンギングをプリリンギングといって実際の音にマスクされないので嫌われます。

同じ特性の最小位相フィルタです。


前にはリンギングがありませんが、後ろのリンギングは長くなってます。


プリリンギングのある直線位相フィルタは「良くない」のでしょうか?
そんなことはありません。
フィルタの特性は単体で見てあれこれいっても始まりません。
トータルで判断する必要があります。

前にも述べましたが、サンプリング周波数44.1kHzの音声データは「既にローパスフィルタを通ってます」。
実際の特性はデジタル化の時のローパスフィルタとアップサンプリング時のローパスフィルタが畳み込まれた特性となります。

どうなるか見ていきます。

赤が最小位相、青が直線位相のフィルタだとします。
録音時に赤のフィルタ、再生時に青のフィルタを使ったとします。
このフィルタを畳み込むとマゼンダの特性になります。
見ての通り、フィルタの特性は赤とほぼ一緒ですね。

フィルタのインパルスレスポンスを表示します。

赤の最小位相フィルタと青の直線位相フィルタを畳み込むとマゼンダの波形になります。

両方とも最小位相の場合は青の波形になります。
最小位相フィルタを2回通すことによって位相のズレが大きくなって立ち上がりが鈍くなってます。

このことから考えると
デジタル化するときのローパスフィルタに最小位相特性のものを使ったデーターをアップサンプリングする場合には
「高い周波数で急峻な直線位相フィルタ」を使えば問題なく本来のデータを再現できることになります。

最小位相特性が気に入らない人はアップサンプリング時に録音時に使ったのと同じ特性の「最大位相フィルタ」を使えば直線位相に
変換することが出来ます。理論上は。
ただし録音時のフィルタ特性は普通わからないので、soxの説明でも最大位相フィルタはほとんど使わないと書いてあります。

さて、今度は録音時にfs/2ギリギリまでデータを残すために高い周波数で急峻な直線位相フィルタを使ったデータの場合を考えてみます。
このデータにはすでにプリリンギングが派手に含まれています。
これにさっきと同じ(直線位相で急峻な)フィルタでアップサンプリングを行うと「さらにプリリンギングが増える」可能性があります。

この場合にプリリンギングを減らすには「最小位相フィルタ」を使えば良いことになります。
またなるべくなだらかな特性を使えば20kHz以上のデータが減衰するのと引き換えにリンギングの長さ自体を減らすことが出来ます。

このように「録音時にどんな位相特性のローパスフィルタを使ったか?」でアップサンプリング時の最適なフィルタが変わる可能性があります。
ああ、ややこしい。

これで私のアップサンプリングの話は終わりです。.....と言いたいところですがさらにもう一回続きます。

次回の日記→

←前回の日記

レス一覧

  1. こんにちは。デジタル記録の場合は、帯域を制限された信号を前提としますから、それをインパルスで表すとリンギングとなります。方形波の立ち上がりで表すと、なまった波形になります。リンギングとなまりは同じ現象ですから、方形波のなまりは良いけれどリンギングがダメというのは、技術論としては変な話です。

    楽器の場合、無限に速い方形波の立ち上がりがないように、無限に速いインパルスの立ち上がりもありません。弦楽器の振動は、初めの静止状態から段々とつまりはリンギングする様に立ち上がって最大振幅になり、段々と元の静止状態に戻ります。楽器はその重さで帯域制限されているので、いきなりインパルスのように最大振幅になり、いきなりゼロにはなりません。

    なので、電子楽器のように意図的に作るのでない限り、録音する音は帯域制限されていて、リンギングしながらしか大きくなりません。CD用のインパルスは、帯域制限されたものを使う必要があり、それはリンギングしています。その約束事の範囲で直線位相は完璧で、他のものは全て何がしかの歪を持ちます。CDで無限の立ち上がりの方形波がないように、その範囲でのシステムですからその帯域で制限された信号を入れる必要があります。

    そのジレンマから逃れる方法は、思いっきりのオーバーサンプリングです。sincフィルターのような移動平均型は、フィルターの係数がプラスとマイナスを行き来しませんので、リンギングはしません。少しなまった方形波のような波形です。但し、肩特性はなだらかなので、高いサンプリング周波数が必要です。自分で録音するのであれば可能です。そこまで拘る必要はないと思いますけれど。

    by如月 at2018-05-04 13:34

  2. 如月さん、こんばんは。
    つまらない日記にお付き合い頂きありがとうございます。

    >>そこまで拘る必要はないと思いますけれど。
    いやー、実は私も全くこだわってません。

    前に書いた自分の日記
    >>アップサンプリングするときにはゼロを内挿して、その後にローパスフィルタをかければOKです。ややこしい計算式で中間点を計算しなくても大丈夫なのです。

    に対する自己レスとして
    「単にローパスフィルタをかければOKとは言っても真面目に考えると結構面倒だよ」
    ということを言いたくてこんな回りくどいことになってしまいました。Hi

    あと、帯域制限を急峻にすればデジタルだろうとアナログたろうとリンギングが出るのは必然です。
    それをなんとかしようとすればハイサンプリングにして帯域制限を緩やかにするしかないです。
    この辺を突き詰めるとMQAの思想になりますね。

    byassi at2018-05-04 21:00

  3. こんにちは。リンギングを嫌う人は多いので、効果のほどは抜きにしてもそういうフィルターが出来れば、意味はあるかも知れません。
    長さの違うsincフィルターを数珠つなぎにすると、線形位相でリンギングしないものが出来ます。256倍ぐらいのOSRにすると、そこそこの減衰量も確保できると思います。

    例えば、長さが2と3と4のsincフィルターだとこうなります。
    入力 1,0,0,0,0,0,0,0,0,0,1,0,0,0,0,
    出力 0,1,3,5,6,5,3,1,0,0,0,1,3,5,6,

    入力のインパルスは当然ながら平均化されて太くなりますが、リンギングはしません。最大値は入出力のゲインを1に合わせると、6/24まで小さくなります。これを長さが2から256までやると、そこそこの減衰量にはなるでしょう。近々、これを試せるような基板が出来るので、やってみる価値はあると思います。

    by如月 at2018-05-05 15:05

  4. 如月さん、こんばんは。
    リンギングしないフィルタは特性がなだらかになるので
    必要な性能が満たせないと思います。
    フィルタに限らず、オーディオはどこか妥協しなければならないことが多いです。

    byassi at2018-05-05 19:40

レスを書く

レスを書くにはログインする必要があります
ログインする