DXGK_BRIGHTNESS_GET_BACKLIGHT_REDUCTION回调函数 (dispmprt.h)
检索应用于集成显示面板的当前反光缩减级别。
语法
DXGK_BRIGHTNESS_GET_BACKLIGHT_REDUCTION DxgkBrightnessGetBacklightReduction;
NTSTATUS DxgkBrightnessGetBacklightReduction(
[in] PVOID Context,
[out] DXGK_BACKLIGHT_INFO *BacklightInfo
)
{...}
参数
[in] Context
DxgkDdiAddDevice 与显示适配器关联的上下文块的句柄。 显示微型端口驱动程序的函数以前向 DirectX 图形内核子系统提供了此句柄。
[out] BacklightInfo
一个类型为 DXGK_BACKLIGHT_INFO 的值,它提供当前反光缩减的绝对级别。
返回值
如果成功,则返回 STATUS_SUCCESS。 否则,它将返回 Ntstatus.h 中定义的错误代码之一。
言论
此函数主要用于调试和测试,以确保使用显示面板提供高质量的用户体验。 调用此函数时,显示微型端口驱动程序必须始终提供有关集成显示面板的准确信息。
请注意,对于某些硬件,BacklightInfo的值为零 ->BacklightUsersetting 或 BacklightInfo->BacklightEffective 可能与 Windows 亮度级别不对应百分比。 因此,作系统需要 BacklightUsersetting 和 BacklightEffective提供的绝对亮度信息。 如果硬件使用亮度级别为 0 到 255,则必须将这些值乘以 256,以将其正确映射到 BacklightUsersetting 的 0 到 65535 范围,并 BacklightEffective。
此函数应可分页。
计算反光降低比率
反光降幅比(BRR)计算为(BacklightUsersetting - BacklightEffective) /BacklightUsersetting。作系统假定,在响应新的亮度级别请求时,驱动程序将按 BacklightUsersetting / BacklightEffective = 1.0 / (1.0 - BRR)来提升像素亮度。
例如,如果 BRR = 0.2,驱动程序通常会将亮度提升为 1.0 / (1.0 - BRR) = 1.25,因此任何亮度值高于 255 * (1.0 - BRR) = 204 的像素都会饱和。 使用驱动程序提供的 BacklightInfo->GammaRamp 的值,作系统可以更准确地估计特定图像的像素亮度失真。
要求
要求 | 价值 |
---|---|
最低支持的客户端 | Windows 8 |
支持的最低服务器 | Windows Server 2012 |
目标平台 | 桌面 |
标头 | dispmprt.h (包括 Dispmprt.h) |
IRQL | PASSIVE_LEVEL |