5

CoreAudioを使用してMIDIシンセを構築しています。現在、次のオーディオグラフがあります。

    Sampler -> Reverb -> IO

リバーブだけでなく、グラフにもコーラスエフェクトを追加する必要があります。問題は、iPhoneにコーラス効果がないことです。これを回避するために、私は自分のコーラスエフェクトを実装することを計画しています。これを行うには、オーディオストリームにアクセスする必要があります。

問題は、オーディオグラフの中央にあるオーディオストリームにアクセスするための最良の方法は何であるかということです。

    Sampler -> Reverb -> [Custom processing] -> IOUnit

AudioUnitAddRenderNotifyコールバックのようなものを使用してオーディオストリームを変更する方法はありますか?または、次のようにオーディオグラフを壊す必要がありますか?

    Sampler -> Reverb -> [AudioUnitAddRenderNotify callback] -> buffer -> [RenderCallback] -> IOUnit

何かアドバイスをいただければ幸いです。

4

1 に答える 1

2

最も簡単な方法は、レンダリング通知コールバック()をリバーブノードのAUに追加し、呼び出しAudioUnitAddRenderNotifyで音声を処理することです。kAudioUnitRenderAction_PostRender私は実験を行い、AUGraphが開いた後にコールバックが追加され、prerender呼び出しで処理が行われなかった限り、これを機能させました。

于 2012-10-20T16:49:14.193 に答える