ドップラーシフト | toshiのブログ

toshiのブログ

日頃、科学技術について調査していることや趣味でやっていることなどを紹介していきます。

リスナーと音源の位置関係は通常は、固定されてます。
もし音源がリスナーの周りを行ったり来たり移動していたらどのように聞こえるでしょうか。
そんなシミュレーションができる音源加工プログラムを作ってみました。

●オリジナル音1
 加工前の音です。

●加工音1
 加工後の音です。音源が時速200kmで目の前を行ったり来たり
 ヘッドホンで聴くとリアルですよ。

●加工音2
 こんどは、別の音源(ミュージック)を使って同様に加工してみました。

●加工の理屈
1.オリジナル音源のデータをディスクから読み、メモリ上に展開する。
2.メモリの先頭から通常の速度で再生する。再生位置を示すポインタを仮にPとする。
3.音源の運動パターンを決める。
4.音源から出た音波がリスナーの左右の耳に届くまでの時間ΔtL, ΔtRを計算し、
  ポインタPから引き算する。
  pL=p-ΔtL ・・・左耳
  pR=p-ΔtR ・・・右耳

5.pL,pRの位置にあるデータを読み出す。
6.データの点と点の間が飛びすぎてノイズが出ることがあるので、間が滑らかにつながるよう補間する。
7.左右の耳の指向性を考慮し、音源が左にあるときは左側を強調、右にあるときは右側を強調する。
8.距離に応じて音量を変える。遠くにあるときは小さく、近くにあるときは大きくする。
9.結果をステレオでディスクに保存する。

以下は、プログラムです。(Window 2000, XPで動作確認済み)お試しになるときはダウンロードしてからお使いください。
加工プログラム

入力・出力ファイルの形式は、WAV形式です。入力ファイルはプログラムと同じフォルダに入れてください。いろいろパラメータの入力があるので適当に入れてみてください。

以下、パラメータの例です。(Excelファイル)
パラメータ例