У меня есть ThinkPad (x301) с внешним монитором, подключенным через кабель DisplayPort к HDMI. Я могу управлять яркостью монитора ноутбука, используя клавиши на ноутбуке, но не могу понять, как управлять яркостью внешнего монитора.
$ ls /sys/class/backlight/*/brightness
/sys/class/backlight/acpi_video0/brightness
/sys/class/backlight/intel_backlight/brightness
$ cat /sys/class/backlight/acpi_video0/brightness
11
$ cat /sys/class/backlight/acpi_video0/max_brightness
15
$ cat /sys/class/backlight/intel_backlight/brightness
501804
$ cat /sys/class/backlight/intel_backlight/max_brightness
2414340
Я могу записать значения в вышеприведенное , и как intel_backlight, так и acpi_video0 изменяют яркость монитора ноутбука.
Означает ли вышесказанное, что нет способа изменить яркость внешнего монитора (кроме экранного меню)?
Установите Контроллер яркости из Центра программного обеспечения Ubuntu. Если он недоступен, загрузите файл .deb .
Теперь вы можете регулировать яркость с помощью ползунка.
Вы можете сделать это из командной строки (и, следовательно, делать это автоматически каждый вечер через cron), используя xrandr, как описано в . Как изменить яркость ЖК-дисплея из командной строки (или через скрипт)?
Например,
xrandr --output HDMI1 --brightness 0.5
Это не меняет подсветку и не влияет на энергопотребление, оно просто регулирует значение гаммы в программном обеспечении . Я слышал, что Brightness Controller
использует xrandr
в своей оболочке GUI.
Используйте xrandr --listactivemonitors
, чтобы получить правильный монитор, если нет, вы, вероятно, получите xrandr: Need crtc to set gamma on.
.
ddccontrol
был в Lucid 10.04 и, кажется, работал хорошо, но Debian был осиротевшим из-за отсутствия интереса и с тех пор никем не был подхвачен.
Обновление ddccontrol
снова в ксениале. См.
Дополнительная информация: я использую ЭЛТ-монитор. - Нилверт Новал 11 марта 2011 года в 17: 06Похоже, что невозможно управлять внешними мониторами с помощью /sys/class/backlight
. Но существует приложение под названием ddccontrol , которое может контролировать яркость вашего внешнего монитора.
Инструкции по использованию интерфейса командной строки доступны здесь здесь .
Как правило, вам нужно проверить наличие доступных мониторов и элементов управления, используя ddccontrol -p
, найти адрес элемента управления, который вы хотите получить, и затем установить значение, используя ddccontrol -p -r 0x10 -w 70
.
Вот последняя информация для контроллера яркости. Существует 2 доступные версии. Версия 1 иначе простая версия позволяет поддержку максимум 4 мониторов и поддерживает классические ползунки. Версия 2 допускает более специализированное управление, а также несколько мониторов.
Можно проверить их обоих здесь Контроллер Яркости
Поскольку более быстрая установка использует PPA
sudo add-apt-repository ppa:apandada1/brightness-controller
sudo apt-get update
Затем для версии 1
sudo apt-get install brightness-controller-simple
Или для версии 2
sudo apt-get install brightness-controller
Приятного отдыха!
Я предлагаю использовать простой bash-скрипт для регулировки яркости вашего монитора вверх или вниз на один шаг
Скопируйте bash-скрипт ниже в файл (имя не важно, главное, чтобы так как название не похоже на другие терминалы). Я назову его brightness_ext
.Затем пометьте его как исполняемый с помощью chmod a+x яркость_ext
#!/bin/bash
MON="DP-1-1" # Discover monitor name with: xrandr | grep " connected"
STEP=5 # Step Up/Down brightnes by: 5 = ".05", 10 = ".10", etc.
CurrBright=$( xrandr --verbose --current | grep ^"$MON" -A5 | tail -n1 )
CurrBright="${CurrBright##* }" # Get brightness level with decimal place
Left=${CurrBright%%"."*} # Extract left of decimal point
Right=${CurrBright#*"."} # Extract right of decimal point
MathBright="0"
[[ "$Left" != 0 ]] && MathBright="$Left"00 # 1.0 becomes "100"
[[ "${#Right}" -eq 1 ]] && Right="$Right"0 # 0.5 becomes "50"
MathBright=$(( MathBright + Right ))
[[ "$Right" == 050 ]] && MathBright=5 # if we wanna decrease below 10%
[[ "$CurrBright" == 0.0 ]] && MathBright=5 # we can't go below 0, cause it is negative then
[[ "$1" == "Up" || "$1" == "+" ]] && MathBright=$(( MathBright + STEP ))
[[ "$1" == "Down" || "$1" == "-" ]] && MathBright=$(( MathBright - STEP ))
[[ "$MathBright" -gt 100 ]] && MathBright=100 # Can't go over 1.00
if [[ "${#MathBright}" -eq 3 ]] ; then
MathBright="$MathBright"000 # Pad with lots of zeros
CurrBright="${MathBright:0:1}.${MathBright:1:2}"
else
MathBright="$MathBright"000 # Pad with lots of zeros
CurrBright=".${MathBright:0:2}"
[[ "$MathBright" == 5000 ]] && CurrBright=.05
fi
xrandr --output "$MON" --brightness "$CurrBright" # Set new brightness
# Display current brightness
printf "Monitor $MON "
echo $( xrandr --verbose --current | grep ^"$MON" -A5 | tail -n1 )
измените MON="DP-1-1" на имя вашего монитора, т.е. MON=" eDP-1-1"
Измените STEP=5 на значение вашего шага, например, STEP=2 менее заметен
brightness_ext +
для увеличения яркости; brightness_ext -
уменьшить, довольно просто
Также предлагаю вам создать ярлыки для этих команд, так как ими гораздо удобнее пользоваться. Лично я сделал ярлыки яркости для обоих своих мониторов.