Skip to main content

SetShapePcmReadPointer

読み取りポインターを設定します。

構文

パラメーター

context   _Inout_
型: SHAPE_PCM_CONTEXT*
SHAPE_PCM_CONTEXT 構造体へのポインター。 readPointerInSamples   
型: UINT32
読み取りポインター (サンプル単位)。このポインターは 2 つの 16 ビットステレオサンプルを単一の 32 ビットサンプルとして扱います。

戻り値

型: HRESULT HRESULT の成功またはエラーコード。

解説

オーディオバッファーを十分に大きく確保し、バッファーサイズに応じた一定の間隔でデータをストリーミングすることで、Direct Memory Access (DMA) コマンドがブロックされるのを防ぐことができます。たとえば、1 度に 4 つのハードウェアフレームをストリーミングする場合、ハードウェアがタイトルの読み取りポインターより先に書き込めるよう、その倍数のフレーム (少なくとも 2 倍のダブルバッファリングで 8 フレーム) をバッファーに保持してください。あるいは、次のフローグラフを送信する前にバッファーを空にすることを強制する方法もあります (消費し、DMA 読み取りポインターを更新した後にフローグラフを送信します)。 SRC 用の SHAPE_SRC_COMMAND_TYPE_START 定数を使用してボイスを開始します。停止させたいときまで、PCM コンテキストの書き込みポインターを更新しながらデータをストリーミングし続けます。SHAPE_SRC_COMMAND_TYPE_STOP_END 定数を使用して SRC を現在の PCM 書き込みポインター loopStartWritePointer まで再生させるか、SHAPE_SRC_COMMAND_TYPE_STOP_IMMEDIATE を使用して即座に停止します。詳細については、SHAPE_SRC_COMMAND_TYPE 列挙型を参照してください。

要件

ヘッダー: shapepcmcontext.h サポート対象プラットフォーム: XBOX One ファミリー本体および XBOX Series 本体

関連項目

ACP の概要
Shape の概要
shapepcmcontext
最終更新日 2026年8月24日