如何从命令行更改亮度,颜色和清晰度?


32

我正在使用SSH和脚本控制PC。如何从命令行更改亮度,颜色和清晰度?

尝试1:失败

$ 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.

尝试2:失败

$ 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 

还有其他替代方法吗?

后续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


@Lekensteyn:请参阅发布的评论。我没有使用uu 11.04并尝试回显0到20仍然保持不变。

注意,在实施伽马校正(-g参数红移)不是作为调整亮度(相同的效果-b
Dzamo诺顿

Answers:


43

如果您的图形卡驱动程序支持,则可以使用xrandr

以下命令列出了当前配置:

xrandr --current --verbose

如果要更改输出的配置,则需要输出的名称。此名称是的输出的一部分xrandr --current,例如LVDS1

亮度可以这样更改:

xrandr --output <outputname> --brightness 0.8

伽玛值:

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

1
仅供参考,仅供参考:新型笔记本电脑使用eDP
nwgat 2014年

我发现我不需要使用该verbose选项。
David Oliver

2
看到“ xrandr --output <输出名称>-亮度0.8”的输出示例将很有帮助
氢氧化钾

17

xrandr不会在硬件级别(由笔记本电脑的显示亮度键更改的亮度)上增加屏幕亮度。正如xrandr手册所述:

- 亮度亮度

将当前连接到输出的crtc的伽玛值乘以指定的浮点值。对于过亮或过暗的输出有用。但是,这是仅软件的修改,如果您的硬件支持实际更改亮度,则您可能会更喜欢使用xbacklight。

而是使用xbacklight更改亮度:

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

但是,由于这与使用笔记本电脑的亮度键相同,因此不能超出0-100%的限制。如果您希望使屏幕的亮度超出该限制,可以使用xrandr强制软件亮度级别:

xrandr --output LVDS1 --brightness 0.5

请注意,xrandr接受分数(0.0-1.0)而xbacklight接受百分比(0-100)


3
就我而言,这种xrandr --output eDP1 --brightness 0.2方法行之有效,但xbacklight -set 20失败了。
landroni 2014年

1
接受分数(0.0-1.0)具有误导性。对于我的外部TB3 DisplayPort到HDMI来说,它工作得很好:xrandr --output DP-1-1 --brightness 1.2
WinEunuuchs2Unix

@ WinEunuuchs2Unix是的,将其设置为> 1.0会裁剪显示色域,以换取整体亮度的增加。换句话说,您会丢失明亮区域中的细节。
威尔

这与显示器的温度有关吗?我的意思是,xrandr较暗的情况应该比使用其他工具更冷吗?恐怕我的显示器太热了。
Sigur

7

对于笔记本电脑,我只是从中学到的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.

所以我尝试了

xbacklight -get
xbacklight -set 70

而且有效!


5

如果您使用的是redshift,则需要为其指定纬度和经度,以便它知道一天中的何时更改。就像是

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

尽管可能会有点非常规地使用redshift :)

另外,它在没有sudo的情况下也可以正常工作。


+1确实起到了小技巧。但实际上我正在以相同的方式寻找更多的RAW亮度+颜色+伽玛调整。

3

我使用此脚本一次设置所有显示器的亮度:

#!/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

使用设备更改VGA-1

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)

注意0(您需要重新启动Xorg):

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

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

这适用于普通的LCD / LED显示器,因为它们不像笔记本电脑那样支持硬件亮度。


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.