Зміна яскравості зовнішнього екрана


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 install яскравість-контролер

Після його встановлення первинним є перший екран, а вторинним - зовнішній монітор.

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


1
Ваше посилання мертве
NaturalBornCamper

ні, зараз це не так
Едоардо,

1

Яскравість - це штучна річ. Налаштувати його можна лише за допомогою кнопок зовнішнього монітора та інтегрованого інтерфейсу.

Це можна зробити на ноутбуці, оскільки це обладнання внутрішньо підключено до шини PCI або I²C.

Щоб "затемнити" зовнішній монітор, ви можете скористатися програмою на зразок f.lux, яка видалить деякі кольори (в основному синій) з виводу графічного процесора. Результат - зображення для ваших очей буде виглядати менш «агресивно».

Ви також можете спробувати зламати монітор, використовуючи мікросхем PIC або AVR, щоб імітувати правильні натискання клавіш (або більше, якщо трохи змінити інженер) для зміни яскравості.


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

Дякуємо, що змусили мене відкрити ddcontrol ! На жаль, я думаю, що не існує жодного протоколу, визначеного через HDMI для обробки таких команд .... EDIT: Моє погано, здається, є один: elinux.org/CEC_(Consumer_Electronics_Control)_over_HDMI
Taz8du29

Контроль побутової електроніки - дуже цікава тема :) Дякую, що ти змусив її виявити :) Я все ще шукаю підходящого рішення своєї "проблеми". Немає успіху, але я думаю, що десь є рішення.
Ad Infinitum

Я знайшов рішення. Прочитайте, будь ласка, мою відповідь :)
Ad Infinitum

1

Замість того, щоб підключати рівень яскравості, xrandrви можете використовувати цей скрипт bash для регулювання яскравості вгору або вниз по кроках.

Скопіюйте скрипт bash нижче у файл, який називається bright

Потім позначте його виконуваним chmod a+x bright

Баш сценарій

#!/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 легко можна знайти в Google для навчання, але якщо будь-які питання, не соромтеся задати :)


0

Якщо ви користуєтеся Chrome, спробуйте Firefox. Це найдивніше. На моєму розширеному дисплеї яскравість у порядку нормальна (у завантажених фільмах, Firefox), але на Chrome яскравість тьмяна ?!


Тут є і ті ж питання. Чи використовуєте ви nvidia / nouveau випадково? на Wayland? одна підказка: якщо ви користуєтеся хромом у Wayland на nouveau, не робіть знімки екрана (ctrl + ярлик для друку на екрані чи все, що ви змінили, якщо це зробили). Це погано зіпсує хром.
hkoosha

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

0

Рішення для апаратного контролю (без затемнення програмного забезпечення)

ddccontrol(Примітка 2 cc) - це інструмент для керування налаштуваннями багатьох моніторів точно так само, як їх екранні / апаратні кнопки керують ними.

Він доступний в Ubuntu ( man page ) через 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, то вам потрібно буде знайти сторінку, як її запустити, перш ніж використовувати ... завдання на інший день

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.