2

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

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

4

2 に答える 2

3

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

ただし、依存関係があります。さまざまなサンプリングレートで再生してピッチを変更すると、ピッチだけでなく、サウンドの長さも変更されます。デュレーションとピッチを個別に変更することは可能ですが、それはそれほど簡単ではなく、高品質を達成するためにかなりの量の単一処理が必要です。これは通常、高速フーリエ変換を使用して周波数領域で行われます。

于 2009-07-07T09:45:51.873 に答える
1

C#用のデジタル信号処理ライブラリはわかりませんが、これは.netでのピッチシフトの完全なソースサンプルのようです。http:
//sites.google.com/site/mikescoderama/pitch-shifting

于 2009-07-07T09:40:40.700 に答える