在 Windows 8 中自定义自适应亮度

在 Windows 8 中自定义自适应亮度

我想在我的笔记本电脑上定制自适应亮度功能(最大亮度 = fn(传感器光))。

在非常黑暗的环境中,我的最大屏幕亮度太低,我必须禁用自动亮度,但这对于真正修复它很有用。

是否有配置文件可以调整它?一个通用的 .dll/.exe 来处理它还是特定于供应商的?(我猜输入数据来自 SensrSvc 服务)由于它可以在内置的自动设置中切换,我猜可能有一个通用的 Windows 组件,在最坏的情况下我可能会尝试破解它。

答案1

这可以在注册表中更改 - 这里一个文件微软对此进行了详细解释。

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AdaptiveDisplayBrightness包含与光传感器相关的配置值。

ALRPoints- 根据传感器返回的值控制要使用的亮度,格式如下:00+ 格式中的点列表[zero-padded hex value of the desired percentage of the baseline brightness] + [zero-padded hex value of the light detected by the sensor]- 我经过反复试验才得到这个结果,如下微软的文档关于这个值,这是我的自定义 ALRPoints 值这样可行。

IlluminanceChangeSensitivity- 控制传感器对光线变化的敏感度,例如,值为 20 表示环境光应变化 20 勒克斯,屏幕亮度才会发生变化。

DisplayResponseInterval- 控制服务在再次轮询传感器之前应等待的时间(以毫秒为单位,最小值为 100),例如,值 5000 表示亮度只能每 5 秒改变一次。

Base decimal注意:编辑这些值时,请确保在 Regedit 中选择。

截屏

我建议使用传感器诊断工具,它位于WDK 测试包(您可能需要先安装实际的 WDK),安装后它位于C:\Program Files (x86)\Windows Kits\8.1\Tools\x86\sensordiagnostictool.exe并且看起来像这样:

截屏

有趣的值是:

SB(最顶部,这里是 100%),它显示的是自适应亮度服务设置的亮度。

SENSOR_PROPERTY_LIGHT_RESPONSE_CURVE是默认的 ALR 曲线,格式为[lux, percentage of the baseline brightness](注册表的相反格式,即brightness, lux) - 如果您想创建自己的 ALR 曲线,则需要覆盖此默认曲线的每个点(这是我让它工作的唯一方法)。

SENSOR_DATA_TYPE_LIGHT_LUX是传感器检测到的光度,我希望在您的系统上它实际上是勒克斯的真实光值,不幸的是,在我的系统上它只是一个介于 0 到 255 之间的值,0 表示几乎完全黑暗,255 表示手电筒指向传感器。

设置所需的值后,您需要重新启动Adaptive brightness服务才能使更改生效。

这是一个线在 XDA-Developers 上,它为 Surface 平板电脑提供了调整后的亮度曲线,您可能需要查看注册表文件(顺便说一下,它们在 Windows 7 上运行良好)。

相关内容