XApuDecodeConvertActivateCommand
デコードまたはデコード変換のアクティブ化パラメーターを定義します。構文
メンバー
id型: XApuCommandId 処理のためにハードウェアに送信される基本コマンド パラメーターを指定します。同じ XApuCommandId が XApuResult::id に設定されます。 channelCount
型: uint32_t ストリームのチャネル数を指定します。モノラルとステレオに対してそれぞれ 1 と 2 のみサポートされます。 initializeDataLength
型: uint32_t 使用されず、0 に設定する必要があります。 initializeData
型: void* 使用されず、NULL に設定する必要があります。 startPitch
型: float コンバーターがアクティブな場合の開始ピッチ。デコードのみの場合は、この値は無視されます。 processingBufferLength
型: uint32_t XApuDecodeConvertActivateCommand::processingBuffer の長さ (バイト単位)。長さは 16 の倍数である必要があります。 processingBuffer
型: void* XApuProcessType::DecodeConvertOpus と XApuProcessType::ConvertPCM 種別のために、非圧縮 PCM float (32 ビット) データを格納する中間バッファー。 処理バッファーは XApuConnectOutputParameters::baseData から切り出され、XApuDecodeConvertActivateCommand::processingBuffer と XApuDecodeConvertActivateCommand::processingBufferLength 引数を使用して XApuCommandType::Activate コマンド経由で XAPU に渡されます。 処理バッファーは、XApuProcessType::DecodeConvertOpus の場合、デコーダーからのまだ変換されていない中間 PCM float (32 ビット) データを格納するために必要です。XApuProcessType::ConvertPCM の場合は、呼び出し側からの、まだ変換されていない PCM float データを格納します。このバッファーは 16 バイト境界にアラインされている必要があります。 また、XApuProcessType::DecodeConvertOpus と XApuProcessType::ConvertPCM の両方の種別で、まだ出力する準備ができていない変換済みデータも格納します。 XAPU は内部的に処理バッファーを 2 つのセグメントに分割します。未変換の入力 PCM データ用の入力セグメントと、変換された出力 PCM データ用の出力セグメントです。 入力セグメントの長さは、常に Opus パケット持続時間の 2 倍である必要があります。すなわち (2 x 960 x ChannelCount x sizeof(float))。 出力セグメントは、変換されたデータが 512 XApuConnectInputParameters::maxFrameCountPerOutput 未満の場合に、そのデータを格納するために使用されます。 XAPU は XApuConnectInputParameters::maxFrameCountPerOutput フレーム未満であってもデータを出力するため、XApuCommandOptions::Flush が設定されている場合、出力セグメントは使用されません。 出力セグメントの長さは、XApuConnectInputParameters::maxFrameCountPerOutput x ChannelCount x sizeof(float) です。 XApuDecodeConvertActivateCommand::processingBufferLength はストリームごとに一定の数値で、1/8 から 8/1 までのすべてのピッチ値に対して機能し、次のように設定する必要があります。 ProcessingBufferLength = (2 x 960 x ChannelCount x sizeof(float)) + (XApuConnectInputParameters::maxFrameCountPerOutput x ChannelCount x sizeof(float))
ChannelCount = 1 または 2 XApuConnectInputParameters::maxFrameCountPerOutput = 256、480、512、960、または 1024。
解説
XApuDecodeConvertActivateCommand は、デコード変換のアクティブ化パラメーターに使用されます。XApuCommandId メンバーの詳細については、XApuCommandId を参照してください。XApuProcessType 定数の詳細については、XApuProcessType を参照してください。
要件
ヘッダー: xapu.h サポートされているプラットフォーム: XBOX Series X|S関連項目
XApuEnqueueCommandXAPU
