如何在不丢失伽马设置的情况下改变 xrandr 亮度?

如何在不丢失伽马设置的情况下改变 xrandr 亮度?

我猜 KDE 的夜间色彩功能使用了xrandr的伽玛功能,但我希望使用它来调整显示器的亮度。不幸的是,这样做会丢失“夜间色彩”,因为它会重置伽玛:

xrandr --output DP-0 --brightness .8

是否有某种方法可以查询当前应用的值,xrandr以便我可以重新应用它们?

答案1

要独立改变亮度xrandr

从我在 Ubuntu 20.04 系统上的测试来看,该工具的输入和输出似乎xgamma完全独立于xrandr。因此,如果您使用 更改亮度xgamma -gamma 0.8,则不会影响xrandr夜灯设置 :)


查询当前应用的伽马值xrandr

xrandr --verbose | grep "Gamma"

我查看了man xrandr文档,似乎--verbose标志给出了伽马的详细信息。

它确实说

请注意,伽马和亮度信息只是存储在服务器中的完整颜色配置文件的近似值。

我的测试似乎表明,由此输出的值与输入时传递的值不一样。

例如,如果我输入xrandr --output eDP-1 --gamma 2:0.5:0.2然后xrandr --verbose | grep "Gamma",它会输出:

    Gamma:      0.50:2.0:5.0

我在运行这些测试之前关闭了 Redshift,所以希望这不会造成干扰。

可能有某种方法可以找出一种变换来解释这个值,但我不确定。

答案2

交叉发布我的答案那里

为了获得最佳的亮度调整效果xrandr并仍然使用 KDE 的夜间色彩功能,我建议安装redshift( apt install redshift) 并将其用作:

redshift -oP -O 4500 -b 0.5

温度为 4500 且亮度为 0.5,或与之结合xrandr(以及可选地xrandr-invert-colors反转颜色):

xrandr --output eDP-1 --brightness 0.5
xrandr-invert-colors
redshift -o -O 4500

xrandr请注意,单独调用将取消任何红移效果。-P选项redshift还会重置屏幕亮度和颜色,而不是逐步叠加调整。如果与第二种用例-P结合使用,则需要进行增量调整(无选项) 。xrandr

最后,不使用xrandr-invert-colors,也可以使用 中的负亮度值xrandr(但不是在 中redshift),但结果不太好。

答案3

这只是对我的完整问题的部分回答,但事实证明通过调整伽玛来应用亮度

请注意,它不会改变硬件级别的亮度,它只是一个具有调整伽马值的软件级别过滤器。

因此大概我可以在某处找到这些值。

相关内容