Windows 图形显示驱动开发-WDDM 3.2-自动显示切换(六)

显示切换后应保持不变的显示属性

显示切换不应更改以下任何显示属性:

  1. 桌面分辨率
  2. VidPn 路径(包括 VidPn 源模式、目标模式、缩放等)
  3. DPI
  4. 夜灯设置
  5. Gamma
  6. 显示拓扑
  7. HDR 开启/关闭
  8. SDR 白色等级
  9. 颜色配置文件
  10. 监视器的 OPM 目标类型
  11. 显示器亮度

匹配 GPU 上限,以实现无缝切换体验

为了给用户提供无缝的切换体验,显示器在切换后的配置应与切换前保持一致。 要实现这种行为,两个 GPU 都需要相同的 GPU 功能支持。 例如,如果一个 GPU 支持 HDR,而另一个 GPU 不支持,那么在一个 GPU 上启用 HDR 时进行切换就不会是无缝的。

下表列出了 GPU 显示功能和特性,并说明了两个 GPU 之间的对齐要求。

功能 需要无缝支持的 GPU
HDR 如果面板支持 HDR,那么两个 GPU 要么支持 fp16 HDR,要么不支持 HDR。
Hw 游标 否。 OS 能适应不同的游标功能,而不会对用户造成明显的干扰。
MPO 否。 OS 能适应不同的 MPO 功能,而不会对用户造成明显的干扰。
PSR 两个 GPU 都需要支持这一功能。
EDID/DisplayID 两个 GPU 必须公开相同的 EDID/DisplayId。
亮度上限 两个 GPU 都必须支持相同的亮度接口和亮度上限。
亮度级别 两个 GPU 需要公开相同的亮度级别和时间间隔。
解决方法 两个 GPU 需要支持相同的源模式和目标分辨率。
刷新率 参阅如果 GPU1 不支持 GPU0 运行面板时的刷新率
动态刷新率 否。 OS 可适应不同的虚拟刷新率支持。
可变刷新率 参阅如果 GPU1 不支持 GPU0 运行面板时的刷新率
如果 GPU1 不支持 GPU0 运行面板时的刷新率,则会出现问题

如果 GPU1 不支持与 GPU0 相同的模式,那么缩减模式很可能会存储在显示拓扑数据库中。 然后,当系统切换回 GPU0 时,将设置缩减模式。 例如,如果 GPU0 支持 120Hz,但 GPU1 只支持 60Hz,那么可能会发生以下序列:

  1. 系统配置为 GPU0 控制显示器,并且模式为 120Hz。
  2. 用户手动切换为 GPU1。
  3. 显示拓扑数据库为显示器存储了 120Hz,但 GPU1 不支持,因此 OS 选择了 60Hz。
  4. 60Hz 已设定并存储在显示拓扑数据库中。
  5. 用户手动切换回 GPU0。
  6. 显示拓扑数据库从数据库中读取 60Hz。

为提供最佳体验,OEM 应选择同时支持内部面板最大刷新率的 iGPU 和 dGPU。 如果这是不可能的,而一个 GPU 无法支持面板的最大刷新速率,那么能够支持面板刷新率的 GPU 必须支持 Windows 动态刷新率(DRR)功能,并且需要包含以下范围:

  • 其他 GPU 的最高刷新率。
  • 内部面板的最高刷新率。

例如,如果面板可支持 300Hz,而 iGPU 只能支持 60Hz,那么 dGPU 必须支持 VRR,频率范围至少为 60Hz 至 300Hz。

总之,ADS 对刷新率的要求是:

  1. 内部面板的最大刷新率由 iGPU 和 dGPU 支持。
  2. 支持内部面板最大刷新率的 GPU 必须支持从其他 GPU 所能支持的最高刷新率到内部面板最大刷新率范围的 DRR。

HDR 和 Dolby Vision

OS 在切换后,GPU1 的内部面板上会设置与切换前 GPU0 内部面板上相同的 HDR/Dolby 视觉状态。 用户应该不会注意到任何变化。

夜灯

夜灯是通过 WDDM gamma 或色彩矩阵接口(DDI)实现的。 在这两种情况下,OS 切换到 GPU1 后,设置的夜灯级别与切换前的 GPU0 相同。

颜色配置文件

OS 会在面板切换后应用与切换前相同的颜色配置文件。

显示故障检查屏幕

目前,OS 支持在非 POST 设备上显示 bug 检查屏幕。 当发生 bug 检查时,OS:

  • 不会切换多路复用器。
  • 使用当前操作系统的支持来显示故障检查屏幕。

在评估要显示 bug 检查的潜在目标时,OS 会跳过与切换到不同目标的多路复用器相连的任何目标。

在从 GPU0 分离的 HPD 被处理的那一小段时间里,来自 GPU1 的 HPD 尚未完全处理。 如果在此时间段内发生故障检测,用户将不会看到故障检测。 如果在 PSR 仍处于启用状态的一小段时间内发生 bug 检查,控制显示器的驱动程序应确保在 OS 调用DxgkDdiSystemDisplayEnable 时面板未处于 PSR 模式。

内容自适应亮度算法

在理想情况下,两个 GPU 使用的内容自适应算法应该产生相同的效果。 然而,相同的效果可能不会出现,用户在切换内部面板时可能会注意到差异。

相关推荐
zhangfeng11339 小时前
Windows 的 Git Bash 中使用 md5sum 命令非常简单 md5做文件完整性检测 WinRAR 可以计算文件的 MD5 值
人工智能·windows·git·bash
彭波39610 小时前
.NET Framework 3.5问题修复教程!可以离线修复
windows·安全·电脑·.net·开源软件
17(无规则自律)11 小时前
【Linux驱动实战】:字符设备之ioctl与mutex全解析
linux·c语言·驱动开发·嵌入式硬件
love530love11 小时前
OpenClaw 手机直连配置全流程
人工智能·windows·python·智能手机·c#·agent·openclaw
AnalogElectronic15 小时前
windows递归遍历当前目录下文件并重命名程序
windows
web3.088899915 小时前
taoxi商品详情|商品属性|包装规格信息 API接口
windows
新手886017 小时前
Oracle VirtualBox虚拟机安装 和 安装 window11版本虚拟机 及 启用EFI和硬盘无法使用 问题
服务器·windows·计算机网络·安全·虚拟机
门豪杰17 小时前
Windows下配置针对WSL的cc-switch
windows·claude·claude code·cc-switch·cc switch
姓王名礼17 小时前
一份 Windows/macOS/Linux 完整安装 + 运行 + 对接 WebUI 的步骤
linux·windows·macos
开开心心就好17 小时前
绿色版PDF多功能工具,支持编辑转换
人工智能·windows·pdf·ocr·excel·语音识别·harmonyos