Skip to main content

XApuConnect

建立连接并为音频处理单元 (XAPU) 分配所需资源。

Syntax

Parameters

params   _In_
Type: XApuConnectInputParameters*
传递给 XApuConnect 用于分配资源的参数。 data   _Out_
Type: XApuConnectOutputParameters*
XApuConnect 返回的参数。 handle   _Outptr_
Type: XApuHandle*
指向返回的 XAPU 句柄的指针。在调用其他 XAPU API 时,此句柄用于指示要操作的 XAPU 实例。

Return value

Type: HRESULT 如果成功,则返回 S_OK;否则,返回错误代码。

Remarks

调用方必须为 XAPU 客户端指定要执行的 XApuProcessType。一个 XAPU 实例在其生存期内只能使用一种类型的处理。若要执行两种或多种不同的处理,必须实例化两个或多个 XAPU 实例。 XApuConnectInputParameters 内部,调用方必须指定以下内容:
  • XAPU 预期同时处理的流的最大数量。
  • 每个流的最大排队命令数。
  • 所有命令和流所需的总内存分配。这包括输入、输出和处理数据在流的最大数量乘以每个流的排队命令数上的总分配。
如果调用成功,XApuConnectOutputParameters::baseData 参数将指向一块内存,调用方应使用这块内存来传递输入数据并检索流的输出数据。是否分区和回收这块内存由调用方决定。当调用 XApuDisconnect 时,该分配将被释放。 当设置了 XApuConnectOptions::EnableResultReadyEvent 时,XApuConnectOutputParameters::resultReadyEvent 将包含一个 Win32 事件句柄。此句柄将在调用 XApuDisconnect 时关闭。 此句柄将在调用 XApuDisconnect 时关闭。 不建议频繁调用 XapuConnectXApuDisconnect 来启动和停止流,因为这些调用非常耗时,并且可能由于内存碎片而导致资源丢失。相反,应在流会话初始化时调用一次 XapuConnect,然后在流传输过程中使用 XApuCommandType::ActivateXApuCommandType::Deactivate 来启动和停止流。在流会话结束时,应调用 XApuDisconnect。所有 XAPU 客户端均适用。

Requirements

头文件: xapu.h 库: xapu.lib 支持的平台: XBOX Series X|S

Conceptual documentation

See also

XAPU
XApuDecodeConvertCommand
XApuDequeueResult
XApuEnqueueCommand
XApuGetResultCount
最后修改于 2026年8月24日