Zmiana jasności ekranu zewnętrznego

16

Zainstalowałem Ubuntu 16.04 TS na swoim laptopie i podłączyłem laptopa do zewnętrznego monitora kablem HDMI. Mogę łatwo zmienić jasność ekranu laptopa, ale to nie wpływa na jasność zewnętrznego monitora. Czy jest jakiś sposób na zmianę jasności zewnętrznego monitora?

Ad Infinitum
źródło

Odpowiedzi:

28

Bardzo łatwo to zrobić za pomocą wiersza poleceń. Wpisz następujące polecenie w terminalu.

xrandr -q | grep " connected"

Dostaniesz coś takiego

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

Używam zewnętrznego monitora. Jeśli chcesz zmniejszyć jasność ekranu zewnętrznego, po prostu wpisz

xrandr --output VGA1 --brightness 0.5
Tensor_Product
źródło
8

Wspomniany wcześniej kontroler jasności jest teraz wersją 2. Oryginalna prosta wersja jest dostępna przy użyciu następujących kroków z obsługą do 4 monitorów. Przetestowano działanie bez problemu na Ubuntu 14.04

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

Cieszyć się!

Szukać prawdy
źródło
1
Działa świetnie na Ubuntu 18.04. Pozwoliło mi przyciemnić zewnętrzne bardziej niż jest to możliwe za pomocą przycisków na monitorze.
Garrett,
5

W końcu znalazłem pakiet, który reguluje jasność dodatkowego monitora zewnętrznego, który jest połączony z HDMI.

Pakiet nazywa się jako kontroler jasności

Aby go zainstalować,

sudo apt-get install kontroler jasności

Po zainstalowaniu podstawowym jest pierwszy ekran, a dodatkowym jest monitor zewnętrzny.

wprowadź opis zdjęcia tutaj

Ad Infinitum
źródło
1
Twój link jest martwy
NaturalBornCamper
nie, teraz nie jest
Edoardo
1

Jasność jest kwestią sprzętową. Można to wyregulować tylko za pomocą przycisków i zintegrowanego interfejsu monitora zewnętrznego.

Możesz to zrobić na laptopie, ponieważ ten sprzęt jest wewnętrznie podłączony do magistrali PCI lub I²C.

Aby „przyciemnić” zewnętrzny monitor, możesz użyć programu takiego jak f.lux, który usunie niektóre kolory (głównie niebieski) z wyjścia GPU. W rezultacie obraz będzie wyglądał mniej „agresywnie” dla twoich oczu.

Możesz także spróbować zhakować monitor za pomocą układu PIC lub AVR, aby emulować odpowiednie naciśnięcia klawiszy (lub więcej, jeśli nieco cofniesz inżynierię) w celu zmiany jasności.

Taz8du29
źródło
1
Dziękuję za Twoją odpowiedź. Po moich badaniach odkryłem, że istnieje pakiet oprogramowania ddcontrol , który czyni to, co chcę osiągnąć. Jednak dzięki ddcontrol można zmienić jasność monitora tylko wtedy, gdy jest on podłączony do I2C (VGA lub DVI). W moim przypadku szukam czegoś podobnego do monitora, który jest podłączony przewodem HDMI.
Ad Infinitum
Dzięki za odkrycie mnie ddcontrol ! Niestety myślę, że nie ma zdefiniowanego protokołu HDMI do obsługi tego rodzaju poleceń .... EDYCJA: Wydaje mi się, że jest jeden: elinux.org/CEC_(Consumer_Electronics_Control )_over_HDMI
Taz8du29
Kontrola elektroniki użytkowej to bardzo interesujący temat :) Dziękuję, że odkryłem to :) Wciąż szukam odpowiedniego rozwiązania mojego „problemu”. Bez powodzenia, ale myślę, że gdzieś istnieje rozwiązanie.
Ad Infinitum
Znalazłem rozwiązanie. Proszę przeczytać moją odpowiedź :)
Ad Infinitum
1

Zamiast podłączać poziom jasności xrandr, możesz użyć tego skryptu bash do stopniowego zwiększania lub zmniejszania jasności.

Skopiuj poniższy skrypt bash do pliku o nazwie bright

Następnie zaznacz go jako wykonywalny za pomocą chmod a+x bright

Skrypt Bash

#!/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 )
  • Zmień MON="DP-1-1"nazwę swojego monitora, tjMON="eDP-1-1"
  • Zmień STEP=5wartość kroku, np. STEP=2Jest mniej zauważalna

Wywołaj skrypt za pomocą:

  • bright Uplub w bright +celu zwiększenia jasności o wartość krokową
  • bright Downlub w bright -celu zmniejszenia jasności o wartość krokową
  • bright (bez parametrów), aby uzyskać bieżący poziom jasności

Mam nadzieję, że polecenia bash / shell można łatwo znaleźć w Google dla edukacji, ale jeśli jakieś pytania nie wahaj się zadać :)

WinEunuuchs2Unix
źródło
0

Jeśli używasz Chrome, wypróbuj Firefox. To najdziwniejsza rzecz. Moja jasność jest w porządku wszędzie indziej na moim rozszerzonym wyświetlaczu (pobrane filmy, Firefox), ale w Chrome jasność jest nudna?

Raymond Wachaga
źródło
Te same problemy tutaj. Czy przypadkiem używasz nvidii / nouveau? w drodze powrotnej? jedna wskazówka: jeśli uruchamiasz chrome na wayland na nouveau, nie rób zrzutów ekranu (ctrl + skrót do ekranu drukowania lub cokolwiek innego, na co się zmieniłeś, jeśli tak zrobiłeś). Zepsuje to chrom.
hkoosha
Nie, używam podstawowego procesora graficznego Intel. Dzięki za informację.
Raymond Wachaga
0

Rozwiązanie kontroli sprzętu (bez przyciemniania oprogramowania)

ddccontrol(uwaga 2 cc) jest narzędziem do kontrolowania ustawień wielu monitorów dokładnie w taki sam sposób, jak kontrolują je przyciski ekranowe / sprzętowe.

Jest dostępny w Ubuntu ( strona podręcznika ) za pośrednictwem apt-get ddccontrol.

gddccontrol to graficzny interfejs użytkownika: apt-get gddccontrol

Oba muszą być uruchamiane jako root:

  • sudo ddccontrol dla narzędzia wiersza poleceń
  • gksudo gddccontrollub pkexec gddccontroldla narzędzia GUI.

Na podstawie komentarza @Ad Infinitum w komentarzu @ Taz8du29 (ale uwaga i dodatkowe cw nazwie

nh2
źródło
0

Mój problem polega na tym, że monitor wydaje się „zmniejszać” jasność po uruchomieniu podwójnego wyświetlacza w Ubuntu 18.04 na laptopie HP15 AMD ...

Z poziomu jasności „TV” ... i zmieniania „jasności” z xrandrtylko zmianami kontrastu.

Nie mogę tego łatwo zmienić, zmieniając gamma. Może to być tylko problem sprzętowy. Nie miałem tego problemu z poprzednimi konfiguracjami monitorów HDMI na tym laptopie.

Tak więc ostrzeżenie: nawet jeśli użyjesz xrandr lub xbrightness, przekonasz się, że wyniki zależą od dostawcy.

Również gksudo / gksu zostało usunięte z Ubuntu od 18.04 https://itsfoss.com/gksu-replacement-ubuntu/

A jeśli masz zamiar uruchomić ddccontrol, musisz znaleźć stronę o tym, jak go uruchomić przed użyciem ... zadanie na kolejny dzień

StrangerThings
źródło