AudioQueueProcessingTapDelegate 代理人
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
AudioQueue の Tap コールバック ハンドラーの署名。
public delegate uint AudioQueueProcessingTapDelegate(AudioQueueProcessingTap audioQueueTap, uint numberOfFrames, ref AudioTimeStamp timeStamp, ref AudioQueueProcessingTapFlags flags, AudioBuffers data);
type AudioQueueProcessingTapDelegate = delegate of AudioQueueProcessingTap * uint32 * * * AudioBuffers -> uint32
パラメーター
- audioQueueTap
- AudioQueueProcessingTap
コールバックのコンテキストは、Tap で使用できるリソースと Tap 構成のパラメーターへのアクセスを提供します。
- numberOfFrames
- UInt32
メソッドがレンダリングするフレームの数。
- timeStamp
- AudioTimeStamp
入力キューの場合は、出力キューのタイムスタンプ (現在のタイムスタンプ) を返します。
エントリでは、実行されているタップの種類 (PreEffect、PostEffect、Siphon) がフラグによって記述されます。 また、StartOfStream という値を含めて、先頭へのリセットが要求されることを示す場合もあります。 出力時に、StartOfStream フラグと EndOfStream フラグが更新されている必要があります。
- data
- AudioBuffers
サイフォンタップは、個々の AudioBuffers の内容を検査できますが、変更を加えてはいけません。 他のタップでは、必要に応じてバッファーを割り当てて入力する必要があります。
戻り値
データで提供されるフレームの数。
注釈
タップで必要なオーディオ フレームの数が受信されるまで GetSourceAudio を呼び出します。
タップが要求されたフレーム数をフルフィルできない場合、AudioQueue はギャップを無音で埋めます。
エントリでは、フラグには StartOfStream 要求と、このタップの種類に関する情報が含まれる場合があります (効果の前、効果の後、またはサイフォンの後に実行されます)。 コールバックでは、Siphon 以外のケースのデータ バッファーを変更できます。 サイフォンの場合は、単に内容を調べる必要がありますが、内容は変更しないでください。
サイフォン以外のケースの場合、フラグは、 の GetSourceAudio メソッドからの AudioQueueProcessingTap戻り値に応じて、StartOfStream フラグと EndOfStream フラグで更新する必要があります。
サイフォン以外の場合、タップは AudioBuffer コンテンツの内容を割り当て、次に Tap コールバックが呼び出されるまで有効な状態を維持する必要があります。