PFND3DWDDM2_6DDI_QUERY_SCANOUT_CAPS回调函数 (d3d10umddi.h)
查询是否应在准备翻转操作时进行转换。
语法
PFND3DWDDM2_6DDI_QUERY_SCANOUT_CAPS Pfnd3dwddm26DdiQueryScanoutCaps;
void Pfnd3dwddm26DdiQueryScanoutCaps(
D3D10DDI_HDEVICE unnamedParam1,
D3D10DDI_HRESOURCE unnamedParam2,
UINT Subresource,
D3DDDI_VIDEO_PRESENT_SOURCE_ID VidPnSourceId,
UINT PlaneIdx,
D3DWDDM2_6DDI_SCANOUT_FLAGS *pFlags
)
{...}
参数
unnamedParam1
hDevice [in]
设备的句柄。
unnamedParam2
hResource [in]
与分配关联的资源的句柄。
Subresource
子资源索引。
VidPnSourceId
视频呈现网络拓扑路径中视频呈现源的从零开始的 ID。
PlaneIdx
平面的索引。
pFlags
指示转换类型的 D3DWDDM2_6DDI_SCANOUT_FLAGS 值。
返回值
无
备注
在 WDDM 2.6 中,D3D11 运行时将更新为在发出全屏或多平面覆盖翻转之前调用此 DDI。 如果结果是需要转换,或者需要转换,并且没有 API 请求禁用转换,则运行时将调用 PFND3DWDDM2_6DDI_PREPARE_SCANOUT_TRANSFORMATION。
请注意,在Windows 10版本 1903 中存在的窗口翻转模型期间,运行时不会调用PFND3DWDDM2_6DDI_QUERY_SCANOUT_CAPS和PFND3DWDDM2_6DDI_PREPARE_SCANOUT_TRANSFORMATION,因为运行时不知道这是否会发生,如果是这样,它将使用哪个 VidPnSource 和平面。
驱动程序不能在 D3DWDDM2_6DDI_SCANOUT_FLAGS 中同时设置 D3DWDDM2_6DDI_SCANOUT_FLAG_TRANSFORMATION_REQUIRED 和 D3DWDDM2_6DDI_SCANOUT_FLAG_TRANSFORMATION_DESIRED 标志。
无论是否发生转换,驱动程序都应使用 D3DWDDM2_6DDI_SCANOUT_FLAG_UNPREDICTABLE_TIMING 标志向运行时指示生成的分配是否遵循可预测的扫描输出计时。 此信息将用于调整前端缓冲区呈现安全边距。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 10 版本 1903 |
标头 | d3d10umddi.h |