Изменение яркости экрана внешнего экрана


16

Я установил Ubuntu 16.04 TS на свой ноутбук и подключил свой ноутбук к внешнему монитору через кабель HDMI. Я могу легко изменить яркость экрана ноутбука, но это не влияет на яркость внешнего монитора. Есть ли способ изменить яркость внешнего монитора?

Ответы:


28

Это очень легко сделать через командную строку. Введите следующую команду в терминале.

xrandr -q | grep " connected"

Вы получите что-то вроде этого

LVDS1 connected 1366x768+0+0 (normal left inverted right x axis y axis) 344mm x 194mm

VGA1 connected primary 1366x768+1366+48 (normal left inverted right x axis y axis) 413mm x 234mm

Я использую внешний монитор. Если вы хотите уменьшить яркость внешнего экрана, просто введите

xrandr --output VGA1 --brightness 0.5

8

Упомянутый ранее контроллер яркости теперь является версией 2. Исходная простая версия доступна с использованием следующих шагов с поддержкой до 4 мониторов. Проверено работает без проблем на Ubuntu 14.04

sudo add-apt-repository ppa:apandada1/brightness-controller
sudo apt-get update
sudo apt-get install brightness-controller-simple

Наслаждайтесь!


1
Отлично работает на Ubuntu 18.04. Позволил мне уменьшить яркость внешнего больше, чем это возможно с помощью кнопок на мониторе.
Гаррет

5

Я наконец-то нашел пакет, который регулирует яркость вторичного внешнего монитора, который подключен через HDMI.

Пакет называется контроллером яркости

Для того, чтобы установить его,

sudo apt-get установить яркость-контроллер

После его установки первичным является первый экран, а вторичным является внешний монитор.

введите описание изображения здесь


1
Ваша ссылка мертва
NaturalBornCamper

нет, теперь это не так
Эдоардо

1

Яркость - вещь аппаратная. Вы можете настроить его только с помощью кнопок внешнего монитора и встроенного интерфейса.

Вы можете сделать это на ноутбуке, потому что это оборудование внутренне подключено к шине PCI или I²C.

Чтобы «затемнить» внешний монитор, вы можете использовать программу типа f.lux, которая удалит некоторые цвета (в основном синие) с выхода графического процессора. В результате изображение будет выглядеть менее «агрессивным» для ваших глаз.

Вы также можете попытаться взломать монитор, используя микросхему PIC или AVR для эмуляции правильных нажатий клавиш (или более, если вы немного перепроектируете) для изменения яркости.


1
Спасибо за ваш ответ. После моих исследований я обнаружил, что есть программный пакет ddcontrol , который делает то, чего я хочу достичь. Однако с помощью ddcontrol можно изменять яркость монитора только в том случае, если он подключен к I2C (VGA или DVI). В моем случае я ищу что-то подобное для монитора, который подключен через HDMI.
Объявление Infinitum

Спасибо, что заставили меня открыть для себя ddcontrol ! К сожалению, я думаю, что не существует протокола, определенного через HDMI для обработки команд такого типа .... РЕДАКТИРОВАТЬ: мой плохой, кажется, что есть один: elinux.org/CEC_(Consumer_Electronics_Control)_over_HDMI
Taz8du29

Consumer Electronics Control - очень интересная тема :) Спасибо, что помогли мне узнать об этом :) Я все еще ищу подходящее решение для моей "проблемы". Безуспешно, но я думаю, что где-то есть решение.
Объявление Infinitum

Я нашел решение. Пожалуйста, прочитайте мой ответ :)
Ad Infinitum

1

Вместо того, чтобы подключить уровень яркости для xrandr вы можете использовать этот bash-скрипт для пошаговой настройки яркости вверх или вниз.

Скопируйте приведенный ниже скрипт bash в файл с именем bright

Затем отметьте его как исполняемый chmod a+x bright

Bash Script

#!/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 && "$STEP" -lt 10 ]] && STEP=10     # > 1.0, only .1 works
[[ "$Left" != 0 ]] && MathBright="$Left"00          # 1.0 becomes "100"
[[ "${#Right}" -eq 1 ]] && Right="$Right"0          # 0.5 becomes "50"
MathBright=$(( MathBright + Right ))

[[ "$1" == "Up" || "$1" == "+" ]] && MathBright=$(( MathBright + STEP ))
[[ "$1" == "Down" || "$1" == "-" ]] && MathBright=$(( MathBright - STEP ))
[[ "${MathBright:0:1}" == "-" ]] && MathBright=0    # Negative not allowed
[[ "$MathBright" -gt 999  ]] && MathBright=999      # Can't go over 9.99

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}"
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, менее заметно

Вызовите скрипт с помощью:

  • bright Upили bright +увеличить яркость по значению шага
  • bright Downили bright -уменьшить яркость на шаг
  • bright (без параметров), чтобы получить текущий уровень яркости

Надеемся, что команды bash / shell можно легко найти для обучения, но если есть вопросы, не стесняйтесь их задавать :)


0

Если вы используете Chrome, попробуйте Firefox. Это самая странная вещь. Моя яркость везде на моем расширенном дисплее (загруженные фильмы, Firefox), но на Chrome яркость тусклая ?!


Те же проблемы здесь. Вы случайно используете nvidia / nouveau? на Wayland? Один совет: если вы запускаете Chrome на Wayland в Nouveau, не делайте скриншоты (сочетание клавиш Ctrl + Print Screen или что-то еще, на что вы изменили, если вы это сделали). Это плохо испортит хром.
hkoosha

Нет, я использую базовый графический процессор Intel. Спасибо за информацию.
Рэймонд Вачага

0

Аппаратное решение управления (без программного димминга)

ddccontrol(примечание 2 cc) - это инструмент для управления настройками многих мониторов точно так же, как их экранные / аппаратные кнопки управляют ими.

Он доступен в Ubuntu ( man-страница ) через apt-get ddccontrol.

gddccontrol это графический интерфейс пользователя для него: apt-get gddccontrol

Оба должны быть запущены от имени пользователя root:

  • sudo ddccontrol для инструмента командной строки
  • gksudo gddccontrolили pkexec gddccontrolдля инструмента GUI.

На основании комментария @Ad Infinitum в комментарии @ Taz8du29 (но примечание и лишнее cв названии


0

Моя проблема в том, что монитор, кажется, «понижается» по яркости после того, как двойной дисплей становится активным с Ubuntu 18.04 на ноутбуке HP15 AMD ...

От уровня яркости «ТВ» ... и изменения «яркости» xrandrтолько с изменением контраста.

Я не могу легко это исправить, изменив гамму. Это может быть просто аппаратно-зависимая проблема. У меня не было этой проблемы с предыдущими конфигурациями монитора HDMI на этом ноутбуке.

Итак, предупреждение: даже если вы используете xrandr или xbrightness, вы обнаружите, что результаты зависят от поставщика.

Также gksudo / gksu был удален из Ubuntu по состоянию на 18.04 https://itsfoss.com/gksu-replacement-ubuntu/

И если вы собираетесь запустить ddccontrol, то вам нужно найти страницу о том, как запустить его, прежде чем использовать его ... задание на другой день


Это на самом деле не отвечает на вопрос. Если у вас есть другой вопрос, вы можете задать его, нажав Задать вопрос . Вы также можете добавить вознаграждение, чтобы привлечь больше внимания к этому вопросу, когда у вас будет достаточно репутации . - Из обзора
0xF2
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.