显示切换后应保持不变的显示属性
显示切换不应更改以下任何显示属性:
- 桌面分辨率
- VidPn 路径(包括 VidPn 源模式、目标模式、缩放等)
- DPI
- 夜灯设置
- Gamma
- 显示拓扑
- HDR 开启/关闭
- SDR 白色等级
- 颜色配置文件
- 监视器的 OPM 目标类型
- 显示器亮度
匹配 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,那么可能会发生以下序列:
- 系统配置为 GPU0 控制显示器,并且模式为 120Hz。
- 用户手动切换为 GPU1。
- 显示拓扑数据库为显示器存储了 120Hz,但 GPU1 不支持,因此 OS 选择了 60Hz。
- 60Hz 已设定并存储在显示拓扑数据库中。
- 用户手动切换回 GPU0。
- 显示拓扑数据库从数据库中读取 60Hz。
为提供最佳体验,OEM 应选择同时支持内部面板最大刷新率的 iGPU 和 dGPU。 如果这是不可能的,而一个 GPU 无法支持面板的最大刷新速率,那么能够支持面板刷新率的 GPU 必须支持 Windows 动态刷新率(DRR)功能,并且需要包含以下范围:
- 其他 GPU 的最高刷新率。
- 内部面板的最高刷新率。
例如,如果面板可支持 300Hz,而 iGPU 只能支持 60Hz,那么 dGPU 必须支持 VRR,频率范围至少为 60Hz 至 300Hz。
总之,ADS 对刷新率的要求是:
- 内部面板的最大刷新率由 iGPU 和 dGPU 支持。
- 支持内部面板最大刷新率的 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 使用的内容自适应算法应该产生相同的效果。 然而,相同的效果可能不会出现,用户在切换内部面板时可能会注意到差异。