设置屏幕亮度:xbacklight 在 HDMI 上不起作用,xrandr --brightness 不粘

tux*_*bie 8 xorg xrandr brightness monitors hdmi

我正在尝试在 i3WM 中设置自定义屏幕绑定并寻找一种方法来降低/增加按下按钮时的亮度。我尝试使用以下方法:

xbacklight -dec10
xbacklight -set 70
Run Code Online (Sandbox Code Playgroud)

xbacklight 可以工作,但它不会影响我的 HDMI 连接显示器,显然没有背光:

xrandr --verbose
Run Code Online (Sandbox Code Playgroud)

与笔记本电脑屏幕不同,HDMI-0 没有“背光”属性,上面的代码在我的笔记本电脑屏幕上运行良好,但是我想降低所有显示器的亮度。

接下来我尝试:

xrandr --output DP-0 --brightness 0.5
xrandr --output HMDI-0 --brightness 0.5
Run Code Online (Sandbox Code Playgroud)

哪个有效!好吧,大约 1 秒钟,然后它默认返回。我的问题:有什么办法可以让这些更改坚持下去,至少在下次重新启动之前?

PS - 运行 Debian GNU/Linux 8.5 | 4.5.0-0.bpo.1-amd64 | i3 4.8-2

PPS - 我可以轻松设置 i3 配置和键绑定,该部分不需要任何帮助:)

GAD*_*D3R 0

您可以使用doc.ubuntu-fr.org上找到的以下脚本(基于xbacklight工具):

\n\n

在下面创建一个新的配置文件,brightness其中/usr/local/bin包含以下内容:

\n\n
#!/bin/bash\n\nerror="Usage: $0 up | $0 down"\nxbl=`xbacklight`\nlimite1=2\nlimite2=10\nlimite3=40\nlimite4=100\n\nif [ "$#" -eq 1 ]\n    then\n    if [ $1 = "up" ]\n        then\n        # Augmenter le r\xc3\xa9tro\xc3\xa9clairage\n        if [ $(echo "$xbl == $limite4"|bc) -eq 1 ]\n                then\n                echo "R\xc3\xa9tro\xc3\xa9clairage au maximum !"\n                xbacklight = 100\n            else\n            if [ $(echo "$xbl < $limite2"|bc) -eq 1 ]\n                    then\n                    xbacklight +1\n                 else\n                if [ $(echo "$xbl < $limite3"|bc) -eq 1 ]\n                        then\n                        xbacklight +10\n                    else\n                    xbacklight +20\n                fi\n            fi\n        fi\n    elif [ $1 = "down" ]\n        then\n        # Diminuer le r\xc3\xa9tro\xc3\xa9clairage\n        if [ $(echo "$xbl < $limite1"|bc) -eq 1 ]\n                then\n                echo "R\xc3\xa9tro\xc3\xa9clairage au minimum !"\n                xbacklight =1\n            else\n            if [ $(echo "$xbl < $limite2"|bc) -eq 1 ]\n                    then\n                    xbacklight -1\n                else  \n                if [ $(echo "$xbl < $limite3"|bc) -eq 1 ]\n                        then\n                        xbacklight -10\n                    else\n                    xbacklight -20\n                fi\n            fi\n        fi\n        else\n        echo $error\n    fi\n    else\n    echo $error\nfi\nexit\n
Run Code Online (Sandbox Code Playgroud)\n\n

使其可执行:

\n\n
sudo chmod +x /usr/local/bin/brightness\n
Run Code Online (Sandbox Code Playgroud)\n\n

要增加亮度,请打开终端并输入:

\n\n
brightness up\n
Run Code Online (Sandbox Code Playgroud)\n\n

要降低亮度,请键入:

\n\n
brightness down\n
Run Code Online (Sandbox Code Playgroud)\n