2011-06-28 4 views
0

AudioUnitの助けを借りて、オンザフライで生成された2つの正弦波を再生しています。私は、ユーザーにUISliderを与えて、トーンの音程を即座に変更するのに役立てる必要があります。私はAudioUnitsで音色のピッチを設定することに固執しています。AudioUnitsの助けを借りてピッチを変更するためのコードスニペットをいくつか用意してください。AudioUnitではリアルタイムのピッチシフトが可能ですか?

答えて

1

正弦波などの生成された波形のピッチを変更することは、確かにAudioUnitコールバックバッファにコピーされます。正確にそれを変更する方法は、正弦波をどのように生成するかによって異なります。テーブルをルックアップすると、テーブルのステップサイズを変更して補間することができます。 sinf()関数を呼び出すと、関数呼び出しのサンプルごとのデルタ位相変化を変更して、スライダーの位置との関係を一致させることができます。しかし、「リアルタイムピッチシフト」という用語は、時間 - ピッチ合成の組み合わせに使用される位相ボコーダのような別のより複雑なDSPプロセスを指すことが多い。それはどういう意味ですか?

+0

私はちょうど単純なsinf()関数を使って音を生成していますので、ピッチシフトが可能であると言いました。今、私はこれをやってくれるよう助けてください。私はこれを達成する手掛かりがありません。 F2#、G2、G2#などのピッチ値を与えるとピッチをシフトすることは可能ですか?私の音源はこれに似ていますhttp://cocoawithlove.com/2010/10/ios-tone-generator-introduction-to.html – user505593

+0

あなたはいくつかのdspの本を調べる必要があります。これは誰かがあなたのためにできることだけではありません。 – Mark

関連する問題