IXAudio2VoiceCallback::OnBufferStart メソッド
ボイスが新しいオーディオ バッファーの処理を開始しようとするときに呼び出されます。
構文
virtual void OnBufferStart( void *pBufferContext) = 0
パラメーター
- pBufferContext
バッファーが送信されたときに XAUDIO2_BUFFER 構造体のpContext メンバーに割り当てられたコンテキスト ポインターです。
戻り値
なし。
解説
pBufferContext は、最初に XAUDIO2_BUFFER 構造体の pContext メンバーから提供されるコンテキスト ポインターで、NULL の場合もあります。
OnBufferStart は、現在のバッファーの先頭バイトが消費される直前に必ず呼び出されます。このコールバックは、ボイス状態に次のような変更を加えるのに適しています。
新しいバッファーをボイスに送信する
ボイスのボリューム、ピッチ、およびエフェクトのパラメーターを調整する
ボイスのエフェクト チェーン内のエフェクトを有効または無効にする
上記のすべての操作は、XAudio2 コールバックで実行されるときは同期式であるため、これらの変更内容は直ちに適用され、これから開始されるバッファーに反映されます。
このコールバックを使用してオーディオ データをバッファーに直接書き込んでも問題ないため、低遅延ストリーミングを行う場合に便利です。ただし、すべての XAudio2 コールバックと同様に、大量のプロセッサ時間を消費する作業や、実行をブロックする可能性のある作業を実行してはいけません。これらの例としては、ディスクまたはネットワークの同期読み取りが挙げられます。
IXAudio2VoiceCallback インターフェイス メソッドの詳細については、「XAudio2 のコールバック」を参照してください。
要件
ヘッダー: xaudio2.h で宣言されています。
関連項目
IXAudio2VoiceCallback
XAudio2 のコールバック
方法 : ソース ボイスのコールバックの使用