三土会で報告済ですが、簡単に。 前々回の三土会で指摘を受けました、88.2kHzから44.1kHzへダウンサンプリングした時に音が変わり過ぎ、という件で、デジタルフィルタに挑戦しました。 理論的には説明し尽くされているのでしょうけれど、目で見える形で納得したい、ということもありまして。 Javaでプログラを組んでn次フィルタを通して88.2kHzから44.1kHzへ変換します。 図は、88.2kHzサンプリングの22.1kHz以上のノイズを、以下の処理をしたものです。(0) 元データ。(1) データを1個おきに間引いたもの。(2) 2個のデータの平均をとったもの。(3) 10次デジタルフィルタ(カットオフ:22.05kHz)。(4) 30次デジタルフィルタ(カットオフ:22.05kHz)。(5) 300次デジタルフィルタ(カットオフ:22.05kHz)。 実用的には、カットオフを適正に決めて30次以上であれば良いのでしょうが、抜作三太郎としては、20kHzの100次か、21kHzの300次にしようと思っています。
301タップですか。凄いですね。フィルタタイプはFIRでしょうか。1タップあたり、どのくらいの処理時間になるのでしょうね。
ご指摘のとおり、FIRです。301ステップですと、私の遅いPCでは実時間以上かかります。5分のWavファイルを通すと5分以上かかります。 Low cutの15,001ステップの計算時間は推して知るべしです。終夜運転くらいでは終わりません.......。