iddCxSwapChainReleaseAndAcquireBuffer2 函数 (iddcx.h)

间接显示驱动程序调用 IddCxSwapChainReleaseAndAcquireBuffer2 以释放交换链中的当前缓冲区并获取新的缓冲区。 支持 HDR 适配器的驱动程序必须使用 IddCxSwapChainReleaseAndAcquireBuffer2 而不是 IddCxSwapChainReleaseAndAcquireBufferIddCxSwapChainReleaseAndAcquireSystemBuffer

语法

HRESULT IddCxSwapChainReleaseAndAcquireBuffer2(
  IDDCX_SWAPCHAIN                    SwapChainObject,
  IDARG_IN_RELEASEANDACQUIREBUFFER2  *pInArgs,
  IDARG_OUT_RELEASEANDACQUIREBUFFER2 *pOutArgs
);

参数

SwapChainObject

[in]OS 以前在 EVT_IDD_CX_MONITOR_ASSIGN_SWAPCHAIN 调用中传递给驱动程序的交换链对象。

pInArgs

[in]指向包含函数输入参数 的IDARG_IN_RELEASEANDACQUIREBUFFER2 结构的指针。

pOutArgs

[out]指向 IDARG_OUT_RELEASEANDACQUIREBUFFER2 结构的指针,在该结构中返回函数的输出参数。

返回值

IddCxSwapChainReleaseAndAcquireBuffer2 在成功时返回S_OK;否则会返回相应的错误代码。

注解

IDDCX_METADATA2 结构中传递的图面的颜色空间也会传递给驱动程序。 这是因为它可能会按帧更改,并且与提交模式时指定的颜色空间不匹配。

同样,提供的图面的像素格式可以逐帧更改。 例如,如果在路径上提交 HDR 模式,则不能保证每个图面都是 FP16 图面。

SDR 内容的白色级别也包含在内,以应用于鼠标光标。

如果在 IDDCX_METADATA2::ValidFlags 中设置了IDDCX_METADATA2_VALID_FLAGS_HDR10METADATA,则 IDDCX_METADATA2::Hdr10FrameMetaData 包含有效数据。 此元数据可以是以下三种类型之一:

IddCxSwapChainReleaseAndAcquireBuffer2 还替换 了 IddCxSwapChainReleaseAndAcquireSystemBuffer。 调用 IddCxSwapChainReleaseAndAcquireSystemBuffer 的 驱动程序可以设置 IDARG_IN_RELEASEANDACQUIREBUFFER2::AcquireSystemMemoryBuffer 以指示它需要填充 IDDCX_METADATA2::SystemBufferInfo

未报告 FP16 支持的 1.10 版驱动程序仍然可以调用此函数(如果它在 OS 中可用)。

有关 HDR 支持的详细信息,请参阅 IddCx 版本 1.10 更新

远程 HDR 元数据

OS 不会将 HDR 元数据传递给远程驱动程序,因为应使用客户端系统上的 HDR 元数据,而不是服务器生成的任何元数据。 对于远程驱动程序 永远不会设置IDDCX_METADATA2_VALID_FLAGS_HDR10METADATA。

要求

要求
最低受支持的客户端 Windows 11,版本 22H2 9 月更新 (IddCx 版本 1.10)
标头 iddcx.h

另请参阅

IDARG_IN_RELEASEANDACQUIREBUFFER2

IDARG_OUT_RELEASEANDACQUIREBUFFER2

IDDCX_METADATA2