- 締切済み
ソフトウェアやアプリを利用して音の周波数を補正する方法はありますか?
音の周波数を補正するためのプログラミングやソフトウェアを作りたいのですが、そもそも左右のヘッドフォンやスピーカーが周波数をどう処理しているのかという仕組みがわからなくて困っています。 ヘッドフォンの場合、音の周波数をそれぞれ左耳用と右耳用に識別して処理しているのだと思いますが、その処理のメカニズムというか実行方法を教えてください。 また、直接ソフトウェアやアプリケーションをプログラムして、左右のヘッドフォンやスピーカに入ってくる音の周波数を補正する方法があれば、その方法かそれについて書かれている資料を教えてください。
- その他(プログラミング・開発)
- 回答数4
- ありがとう数1
- みんなの回答 (4)
- 専門家の回答
みんなの回答
デチューンは、全ての波形を自前で作り出すシンセサイザーなら標準的に持っている機能ですが、録音されたwavなどのファイルをパソコンでデチューンさせることは不可能ではないものの、やっかいな処理です。これと類似の処理として、音程を変えずに再生速度だけを変える「タイムストレッチ」というのがあるんですが、これも音質を落とさずに行うことは極めて難しいです。と言うより、きれいにできればそれだけで売り物になりうるでしょう。 フリーソフトでこの辺の処理がかなりまともに行えるものとして、Lilith Playerがあります(参考URL)。ここまで作るのはさぞ大変だったろうと思いますね。
- 参考URL:
- http://www.project9k.jp/
モノラルの音源をステレオっぽくすることは、実は難しくありません。実例として、シンセサイザーはデチューンという音程をわざとずらす機能を持っています。この際のずらす量は、たいてい1セント単位(1セント=1/100音階)です。これを使い、例えば右はそのまま、左はデチューンをかけた音という風にして再生すると、元の音がモノラルであっても、ステレオのように拡がって聞こえます。この効果は劇的で、初めて体験した人は大抵驚くでしょう。 デチューンをかけずに同じことをしても、拡がりは感じられず、左右の音量がつり合う位置からモノラルの音が鳴るだけですが、左右の音量に差を付けることで、真ん中から聞こえたり、ちょっと右側から聞こえる…という定位の変更はできます。 これと同じことをPCでやれば、同じ効果が得られます。ただ、マイクなどで録音したものを、再生速度を変えずに音程だけ変えることはかなり難しく、質にこだわる場合はさらに難易度が上がります。これこそ、音響学の領域でしょう。
- kirinoma
- ベストアンサー率53% (288/542)
シチュエーションがどのような物なのか分からないので,あいまいな回答になってしまいますがご容赦ください. (なお,「音声処理 プログラミング」「音声処理 アルゴリズム」などでWeb検索するとこの手の情報はたくさん得られます) まず,リアルタイムに処理する必要がないなら,WAVファイルとして保存した後,プログラムで読み込んで補正を行うのが簡単だと思います. ・WAVファイルフォーマット http://www.kk.iij4u.or.jp/~kondo/wave/ ・WAVファイルプログラミング例 http://hooktail.org/computer/index.php?%A5%D7%A5%ED%A5%B0%A5%E9%A5%DF%A5%F3%A5%B0#content_1_2 音声に関する処理全般は以下の本が参考になりそうです. http://www.cqpub.co.jp/hanbai/books/30/30901.htm マイクから直接音を持ってくる,また,スピーカーを鳴らす場合,WindowsならWin32APIまたはDirectSoundを使うのが良いでしょう. http://wisdom.sakura.ne.jp/system/winapi/media/index.html http://ja.wikipedia.org/wiki/DirectSound PureDataという,GUIっぽく音声処理プログラミングが出来る環境もあるようです. http://luvtechno.net/d/2006/01/pure_data.html http://nul.jp/puredata/ http://psyto.s26.xrea.com/pd/
補足
ありがとうございます。 リアルタイムでない場合の大体の方向性はわかりました。 「リアルタイム」で、といった場合、たとえば、 モノラル(あまりステレオっぽくない音)で出力されている音の 周波数を、ヘッドフォンやスピーカーで出力する前に、 右耳用と左耳用で微妙にズラして、 本来モノラルで出力されていたのを出力する直前にステレオっぽく なるように補正することはできないのでしょうか? 初めにシチュエーションを具体的に説明していなくて 恐縮なのですが、 できれば、 モノラル音(あるいはあまりステレオっぽく聴こえないステレオ音)の右耳用の周波数と左耳用の周波数を出力する直前にリアルタイムで補正できる方法があれば、教えてくれると幸いです。
実は、スピーカーやヘッドホンは、何も処理していません。アンプから右用と左用の信号が別々に出力されていて、それの言うがままに音を出しているだけです。じゃあアンプで処理しているのかと言うと、ただのステレオではやっぱり処理していません。 究極的には、右用と左用のマイクで別々に集音しているから、それに従って再生していればステレオになる、と言ってもほぼ過言ではないです。この左右のマイクは全く同じもので、設置した位置が違うだけですが、その位置の違いが微妙な時間差や音の位相差を生み出し、立体的な音像として聞こえる…というのが基本的な考え方ですね。二つの目で見ることで、ものが立体的に見えるのと全く同じ理屈です。 この辺をまじめに勉強するなら、音響学の参考書を読む必要があるでしょう。「音響学 参考書」で検索するといろいろヒットしますが、ばりばりの数学になるため、生半可な気持ちでとりかかると返り討ちにされるでしょう。
補足
ありがとうございます。 スピーカーやヘッドフォンが何も処理していないというのは驚きでした。 ご説明によると、はじめの集音の段階で既に右用と左用で別々に集音したものがステレオになるとのことですが、 では右用と左用を識別しておらず、ステレオとして作られていないモノラル的な音を出力する直前に補正することはできないのでしょうか?
関連するQ&A
- 異なった周波数のBEEP音を左右別々に鳴らす
ヘッドホンまたはスピーカーから異なった周波数のBEEP音を左右別々に鳴らしたり,左右の音量を変えたりするにはどのようにしたらよいでしょうか? あらかじめ用意した音声ファイルを利用する以外の方法はありますか? Visual C++.netを利用しています.
- ベストアンサー
- C・C++・C#
- 周波数変換の方法
大変恐縮ですが分かる方、お知恵を貸してください。 私は今大学での研究で、ある建築物の1/25の縮尺模型を使った音響実験を行っています。 具体的には (1)120Hz~4kHzの音を25倍の周波数3kHz~100kHzにした音源(wav)が必要で、 (2)模型内部の音響特性を測定し (3)さらに録音した音の周波数を1/25倍にしようとしています。 この方法として (1)原音のサンプリング周波数(fs)を25倍にして再生 (2)録音するサンプリング周波数は25*fs (3)再現する音源のサンプリング周波数をfsにして再生(分析) で実際に建築物内部の音響特性を再現しようとしています。 ですが(1)までは出来ているのですが(2)、(3)の方法が上手くいっていないためか再現した音では歪みが発生し、とても音響特性を付加した状態ではありませんでした。 周波数変換の方法が悪いのでしょうか? 何か気をつけることがありましたら教えてもらえないでしょうか。 機材についてはスピーカは再生周波数帯域を4kHz~40kHzと15kHz~100kHzのもの二つを使用し、 マイクやアンプも100kHzまで取扱可能な機材を使っています。 フィルターは3kHzまたは14kHzのハイパスをスピーカの前に通しているだけです。 分からなくて大変困っています。どなたかよろしくお願いいたします。
- ベストアンサー
- 物理学
- 音の大きさと周波数の計測
マイクやアナライザーを使用せずにアンプから出力を計測する方法はありますでしょうか。 アンプからスピーカーに接続するケーブルにクランプ型の電流センサを巻いて測ることできないか考えています。 その場合、音の大きさ(dB)や周波数特性は分かるものでしょうか。
- 締切済み
- 開発
- 高周波ノイズをとる方法
NECのVALUESTAR G を使用しております。 (型番 PC-VG34NYZGJ) スピーカーを外部出力でエレコムのスピーカーに 接続しているのですが、 ほぼ3分に一度ほど、高周波ノイズが30秒ほど発生します。 (ピーとかキーではなく、言葉で表現できない高い周波数音) 最初スピーカーが悪いと思っておりましたが、 ためしに端子に直接ヘッドフォンを接続したところ、 ヘッドフォンでも同じ現象がでました。 (この機種、ヘッドフォン端子がないため、外部出力端子で 試しています) 今のところ、音楽再生しておりますが、 非常に聞くに堪えない状態です。 こういった音声外部出力での高周波ノイズをなくす方法は ないものでしょうか? ※電源コードなどにクランプフィルタをつけるなどで 軽減できる現象でしょうか?
- 締切済み
- デスクトップPC
- エクセルを使った音の周波数計測方法について
PCのエクセルを使って、計測した音の周波数をグラフ化する方法を探しています。 詳しく言うと 何かしらの計測ソフトを使って音の周波数を計測してリアルタイムでグラフ化します。次に時間ごとの周波数のデータをエクセルにコピーして「時間に対しての音の周波数」の表とグラフを作りたいです。グラフは縦軸に周波数[Hz]、横軸に時間[t]です。 最悪エクセルを使わない方法でも上記のことができれば大丈夫です。 おそらくこれらはできることなのですが、機械に弱い自分としては難しくて仕方ありません。 どなたか教えてはもらえないでしょうか? よければ詳しく方法も教えていただけると嬉しいです。 よろしくお願いします。
- 締切済み
- その他MS Office製品
- スピーカー,マイクの周波数特性について
スピーカー、マイクのパラメータとして周波数特性がありますが、 この周波数特性を得る方法を調べています。 スピーカー、マイクどちらも、スピーカーから音を出して マイクで音を拾ってその音を解析(FFT)するみたいですが、 これだと、スピーカー、マイク合わせた特性となり、それぞれの 特性が得られません。それぞれの特性が得られる方法はあるのでしょうか? 片方がフラットな特性だと単体の特性が得られますが、そうするとフラットな スピーカー、マイクを作る時の評価はどうするんだ・・・と疑問が残ります。
- ベストアンサー
- 科学
- mp3プレイヤーの周波数特性
ヘッドフォンやスピーカーだけでなく、プレーヤー自体にも周波数特性があるということを最近知ったのですが、mp3プレイヤーの周波数特性はだいたいどれくらいなのでしょうか? 私は、gigabeat MET401Sをもっているのですが、これの周波数特性を知っている方是非教えて下さい。
- 締切済み
- iPod・ウォークマン・音楽プレーヤー
- 再生周波数・周波数特性が低い機器はいまいち?
オーディオの知識がないのでアレなんですがふと疑問に思ったことがあります。 例えばスピーカーやアンプなどで再生周波数・周波数特性が~20kHzと記載されている機器だと 20kHz以上の音は扱えないということでしょうか? 安価なものでも~150kHzであったり、高価なものでも~35kHZがあったりと周波数で値段が決まるわけではないと思いつつも不思議に思ってしまいます。 SACDやDVD-Audioなどが世に出てきても再生周波数範囲が狭い機器では無意味なのでしょうか?
- 締切済み
- オーディオ
補足
なるほど、デチューンというんですね。 ユーザーのパソコンで受信する音の周波数を出力する直前にあらかじめ規定しておいた周波数になるようにデチューンさせることはできますか?