Como você altera o brilho, a cor e a nitidez da linha de comando?


32

Estou controlando meu PC com SSH e scripts. Como posso alterar o brilho, a cor e a nitidez da linha de comando?

Tentativa 1: falhou

$ sudo redshift -t 5000:5000 -g .5
Cannot list GNOME panel applets.
Initialization of gnome-clock failed.
Trying next provider...
Latitude and longitude must be set.

Tente 2: falhou

$ cat brightness 
20
$ cat max_brightness 
20
$ echo 1 | sudo tee /sys/class/backlight/acpi_video0/brightness 
1
$ echo 20 | sudo tee /sys/class/backlight/acpi_video0/brightness 

Alguma maneira alternativa de fazer?

Acompanhamento : http://jonls.dk/redshift/

[command]     [1000K to 10000K]       [effects 0.1 to 10.0]
|       |     /      /                /
^       ^     ^      ^                ^
redshift  -t  1000:1000   -l 0:0  -g .1; Dark
redshift  -t  1000:1000   -l 0.0  -g  5; Bright

Veja askubuntu.com/questions/57236/… para alterar o brilho
Lekensteyn

@Lekensteyn: veja o comentário publicado. Não funcionou, estou usando o 11.04 e tentei eco de 0 a 20 permanece o mesmo.

Observe que aplicar a correção gama ( -gargumento para desvio para o vermelho) não é o mesmo efeito que ajustar o brilho ( -b)
Dzamo Norton 04/07

Respostas:


43

Se o driver da sua placa gráfica suportar, você poderá usá-lo xrandr.

O comando a seguir lista a configuração atual:

xrandr --current --verbose

Se você deseja alterar a configuração de uma saída, precisa do nome da saída. Este nome faz parte da saída de xrandr --current, por exemplo LVDS1.

O brilho pode ser alterado assim:

xrandr --output <outputname> --brightness 0.8

Gama:

xrandr --output <outputname> --gamma 0.5:1.0:1.0

1
isso funciona, FYI: laptops mais recentes usam eDP
nwgat

Eu descobri que não precisava usar o verbose opção.
David Oliver

2
Seria útil ver um exemplo de saída para "xrandr --output <outputname> --brightness 0.8"
hidróxido

17

O xrandr não aumenta o brilho da tela no nível do hardware (aquele que é alterado pelas teclas de brilho da tela do laptop). Como o manual do xrandr diz:

- brilho brilho

Multiplique os valores de gama no crtc atualmente conectado à saída para o valor flutuante especificado. Útil para saídas muito brilhantes ou muito fracas. No entanto, esta é apenas uma modificação de software. Se o seu hardware tiver suporte para alterar realmente o brilho, você provavelmente preferirá usar o xbacklight.

Em vez disso, use xbacklightpara alterar o brilho:

xbacklight -get #get the current level
xbacklight -set *percent* #set brightness to a given percentage
xbacklight -inc *percent* #increase by a given percentage
xbacklight -dec *percent* #decrease by a given percentage

No entanto, como é o mesmo que usar as teclas de brilho do laptop, isso não pode ir além dos limites de 0 a 100%. Se desejar clarear / escurecer sua tela além desse limite, use o xrandr para forçar os níveis de brilho do software:

xrandr --output LVDS1 --brightness 0.5

Observe que xrandr aceita frações (0,0-1,0) enquanto xbacklightaceita porcentagens (0-100)


3
No meu caso, a xrandr --output eDP1 --brightness 0.2abordagem funciona bem enquanto xbacklight -set 20falha.
landroni

1
aceita frações (0,0-1,0) é enganoso. Para o meu externo TB3 DisplayPort para HDMI isso funcionou bem:xrandr --output DP-1-1 --brightness 1.2
WinEunuuchs2Unix 9/17/17

@ WinEunuuchs2Unix Sim, defini-lo> 1.0 corta a gama da tela em troca do aumento geral do brilho. Em outras palavras, você perde detalhes em áreas claras.
Wil

Isso está relacionado à temperatura do monitor? Quero dizer, com xrandrmais escuro deveria ser mais frio do que usar alguma outra ferramenta? Receio que meu monitor esteja muito quente.
Sigur

7

Para laptops, aprendi apenas com man xrandr:

   --brightness brightness
          Multiply  the gamma values on the crtc currently attached to the
          output to specified floating value. Useful for overly bright  or
          overly  dim outputs.  However, this is a software only modifica‐
          tion, if your  hardware  has  support  to  actually  change  the
          brightness, you will probably prefer to use xbacklight.

Então eu tentei

xbacklight -get
xbacklight -set 70

e funciona!


5

Se você estiver usando o desvio para o vermelho, precisará fornecer latitude e longitude para que ele saiba quando a hora do dia muda. Algo como

redshift -t 5000:5000 -l 55.7:12.6 -g .5 

Embora possa ser um pouco pouco convencional o uso do redshift :)

Além disso, funciona bem sem sudo.


+1 que realmente fez um pequeno truque. Mas realmente estou procurando da mesma maneira mais brilho RAW + cor + ajuste de gama.

3

Eu uso esse script para definir o brilho em todos os meus monitores de uma só vez:

#!/bin/bash
if [ -z $1 ]; then
    echo "Usage: brighntess BRIGHTNESS"
    echo "BRIGHTNESS is a float (0.0-1.0)"
else
    xrandr --listmonitors | grep "^ " | cut -f 6 -d' ' | \
    xargs --replace=MONITOR xrandr --output MONITOR --brightness $1
fi

2

Mude o VGA-1 com o seu dispositivo

xrandr --listmonitors
Monitors: 1

0: + * VGA-1 1366 / 410x768 / 230 + 0 + 0 VGA-1

xrandr --output VGA-1  --brightness 1   (for 100% brightness)
xrandr --output VGA-1  --brightness 1.5 (for 150% brightness)
xrandr --output VGA-1  --brightness 2   (for 200% or double brightness)
xrandr --output VGA-1  --brightness 4 (for 400% brightness)

Cuidado com 0 (você precisará reiniciar o Xorg):

xrandr --output VGA-1  --brightness 0 (for Blank Screen)

xrandr --output VGA-1  --brightness 0.8 (for 80% brightness)

Isso funciona em monitores lcd / led normais, pois eles não suportam o brilho do hardware, como os laptops.


0

Há também DDC / CI e cliente linux: ddccontrol (e gddccontrol para GUI).

Os Tt estão no repositório oficial do ubuntu:

sudo apt install ddccontrol ddccontrol-db gddccontrol
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.