2009-07-07 29 views
2

WebサーバーからPCMデータをダウンロードするプログラムがあります。このプログラムは後で標準のPCMプレーヤーで再生するために使用します。 PCMデータの再生中にPCMデータのピッチを変更できるようにしたい。C#のPCMデータピッチの変更

誰でもこれを行う方法を知っていますか?

答えて

1

私はC#のための任意のデジタル信号処理ライブラリを知らないが、これは.NETのピッチシフトのための完全なソースサンプルのようです。:
http://sites.google.com/site/mikescoderama/pitch-shifting

+0

誰でもこのアルゴリズムを成功に使用しましたか?私はそれを働かせることができません – John

2

最も簡単な解決策は、サウンドを再生することです録音されたサンプリングレートよりも高いサンプリングレートで再生します.44 kHzで22 kHzのファイルを再生すると、ピッチが倍になります。サウンドからいくつかのサンプルを捨てるだけで(不良品)、サウンドをリサンプリングすることができます(sinc補間のような良いアルゴリズムが使用されている場合は良質です)。

しかし、依存性があります。異なるサンプリングレートで再生することでピッチを変更すると、ピッチだけでなくサウンドの長さも変わります。時間とピッチを独立して変更することは可能ですが、それは容易ではなく、良い品質を達成するためにはかなりの量の処理が必要です。通常、高速フーリエ変換を使用して周波数領域で行われます。

関連する問題