Defina o brilho da tela: xbacklight não funciona em HDMI, xrandr --brightness não fica

8

Estou tentando definir ligações de tela personalizadas no i3WM e procurando uma maneira de diminuir / aumentar o brilho ao pressionar o botão. Eu tentei usar o seguinte:

xbacklight -dec10
xbacklight -set 70

O xbacklight funcionaria, no entanto, não afeta meu monitor conectado a HDMI, aparentemente nenhuma luz de fundo:

xrandr --verbose

O HDMI-0 não possui a propriedade "Luz de fundo", diferente da tela do laptop, o código acima funciona bem na tela do laptop, no entanto, quero reduzir o brilho em todos os monitores.

Em seguida, tentei:

xrandr --output DP-0 --brightness 0.5
xrandr --output HMDI-0 --brightness 0.5

O que funciona! Bem, por cerca de 1 segundo, o padrão é voltar. Minha pergunta: existe alguma maneira de obter essas alterações, pelo menos até a próxima reinicialização?

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

PPS - Posso definir facilmente a configuração do i3 e as combinações de teclas, sem necessidade de assistência com essa parte :)

tuxedozombie
fonte

Respostas:

1

Você está usando o redshift?

Eu tive exatamente o mesmo problema e foi resolvido matando o redshift.

killall redshift

xrandr --output HDMI-0 --brightness .5
Sean Wright
fonte
0

Você pode usar o seguinte script, encontrado em doc.ubuntu-fr.org (com base na xbacklightferramenta):

Criar um novo arquivo de configuração brightnesssob /usr/local/bincom o seguinte conteúdo:

#!/bin/bash

error="Usage: $0 up | $0 down"
xbl=`xbacklight`
limite1=2
limite2=10
limite3=40
limite4=100

if [ "$#" -eq 1 ]
    then
    if [ $1 = "up" ]
        then
        # Augmenter le rétroéclairage
        if [ $(echo "$xbl == $limite4"|bc) -eq 1 ]
                then
                echo "Rétroéclairage au maximum !"
                xbacklight = 100
            else
            if [ $(echo "$xbl < $limite2"|bc) -eq 1 ]
                    then
                    xbacklight +1
                 else
                if [ $(echo "$xbl < $limite3"|bc) -eq 1 ]
                        then
                        xbacklight +10
                    else
                    xbacklight +20
                fi
            fi
        fi
    elif [ $1 = "down" ]
        then
        # Diminuer le rétroéclairage
        if [ $(echo "$xbl < $limite1"|bc) -eq 1 ]
                then
                echo "Rétroéclairage au minimum !"
                xbacklight =1
            else
            if [ $(echo "$xbl < $limite2"|bc) -eq 1 ]
                    then
                    xbacklight -1
                else  
                if [ $(echo "$xbl < $limite3"|bc) -eq 1 ]
                        then
                        xbacklight -10
                    else
                    xbacklight -20
                fi
            fi
        fi
        else
        echo $error
    fi
    else
    echo $error
fi
exit

Torne executável:

sudo chmod +x /usr/local/bin/brightness

Para aumentar o brilho, abra o terminal e digite:

brightness up

Para diminuir o brilho, digite:

brightness down
GAD3R
fonte
1
Algumas coisas, em primeiro lugar, recebo uma permissão negada ao tentar executar o comando de aumentar / diminuir o brilho. Eu o tornei executável, tentei mudar o proprietário para o meu usuário e mover o script para outro local. Sem sorte Em segundo lugar, eu não estou certo de que este irá corrigir o problema que estou tendo, a minha segunda tela não tem nenhuma propriedade backlight para que a ferramenta xbacklight não trabalho, eu não acho
tuxedozombie
Você deve instalar o driver gráfico primeiro. qual é a saída de lspci | grep 'vga'e glxinfo | grep "OpenGL vendor string"?
GAD3R