Thay đổi độ sáng màn hình của màn hình ngoài


16

Tôi đã cài đặt Ubuntu 16.04 TS trên máy tính xách tay của mình và tôi đã kết nối máy tính xách tay của mình với màn hình ngoài thông qua cáp HDMI. Tôi có thể dễ dàng thay đổi độ sáng của màn hình của máy tính xách tay nhưng điều đó không ảnh hưởng đến độ sáng của màn hình ngoài. Có cách nào để thay đổi độ sáng của màn hình ngoài không?

Câu trả lời:


28

Nó rất dễ dàng để làm thông qua dòng lệnh. Gõ lệnh sau trong terminal.

xrandr -q | grep " connected"

Bạn sẽ nhận được một cái gì đó như thế này

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

Tôi đang sử dụng một màn hình bên ngoài. Nếu bạn muốn giảm độ sáng của màn hình ngoài, chỉ cần gõ

xrandr --output VGA1 --brightness 0.5

8

Bộ điều khiển độ sáng được đề cập trước đây là phiên bản 2. Phiên bản đơn giản ban đầu có sẵn bằng các bước sau với sự hỗ trợ cho tối đa 4 màn hình. Đã thử nghiệm hoạt động mà không gặp sự cố trên Ubuntu 14.04

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

Thưởng thức!


1
Hoạt động tốt trên Ubuntu 18.04. Cho phép tôi làm mờ bên ngoài nhiều hơn có thể thông qua các nút trên màn hình.
Garrett

5

Cuối cùng tôi đã tìm thấy một gói, điều chỉnh độ sáng của màn hình ngoài thứ cấp, được kết nối với HDMI.

Gói được gọi là Bộ điều khiển độ sáng

Để cài đặt nó,

sudo apt-get cài đặt bộ điều khiển độ sáng

Sau khi được cài đặt, màn hình chính là màn hình đầu tiên và màn hình phụ là màn hình ngoài.

nhập mô tả hình ảnh ở đây


1
Liên kết của bạn đã chết
NaturalBornCamper

không, bây giờ thì không
Edoardo

2

Độ sáng là một thứ phần cứng. Bạn chỉ có thể điều chỉnh nó bằng cách sử dụng các nút và giao diện tích hợp của màn hình ngoài.

Bạn có thể làm như vậy trên máy tính xách tay vì phần cứng này được nối bên trong với bus PCI hoặc I²C.

Để "làm mờ" màn hình ngoài của bạn, bạn có thể sử dụng một chương trình như f.lux, người sẽ loại bỏ một số màu (chủ yếu là màu xanh) khỏi đầu ra GPU. Kết quả là hình ảnh sẽ trông bớt "hung dữ" hơn đối với mắt bạn.

Bạn cũng có thể thử hack màn hình, sử dụng chip PIC hoặc AVR để mô phỏng các phím nhấn bên phải (hoặc hơn, nếu bạn đảo ngược kỹ sư một chút) để thay đổi độ sáng.


1
Cảm ơn về câu trả lời của bạn. Sau khi nghiên cứu, tôi đã phát hiện ra rằng có một phần mềm packaga ddcontrol , làm cho những gì tôi muốn đạt được. Tuy nhiên, với ddcontrol, người ta chỉ có thể thay đổi độ sáng của màn hình khi được nối dây với I2C (VGA hoặc DVI). Trong trường hợp của tôi, tôi đang tìm kiếm một cái gì đó tương tự cho màn hình, có dây với HDMI.
Quảng cáo Infinitum

Cảm ơn đã khiến tôi khám phá ddcontrol ! Đáng buồn là tôi nghĩ rằng không có giao thức nào được xác định qua HDMI để xử lý loại lệnh này .... EDIT: Thật tệ, dường như có một: elinux.org/CEC_(Consumer_Electronics_Control)_over_HDMI
Taz8du29

Kiểm soát điện tử tiêu dùng là một chủ đề rất thú vị :) Cảm ơn bạn đã khiến tôi khám phá nó :) Tôi vẫn đang tìm kiếm một giải pháp phù hợp cho "vấn đề" của mình. Không thành công nhưng tôi nghĩ có một giải pháp ở đâu đó.
Quảng cáo Infinitum

Tôi đã tìm được giải pháp. Xin vui lòng đọc câu trả lời của tôi :)
Quảng cáo Infinitum

1

Thay vì cắm mức độ sáng, xrandrbạn có thể sử dụng tập lệnh bash này để điều chỉnh độ sáng lên hoặc xuống theo các bước.

Sao chép tập lệnh bash bên dưới vào một tập tin gọi là bright

Sau đó đánh dấu nó thực thi với chmod a+x bright

Tập lệnh 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 )
  • Thay đổi MON="DP-1-1"tên màn hình của bạn, tức làMON="eDP-1-1"
  • Thay đổi STEP=5giá trị bước của bạn, ví dụ như STEP=2ít chú ý hơn

Gọi kịch bản với:

  • bright Uphoặc bright +để tăng độ sáng theo giá trị bước
  • bright Downhoặc bright -để giảm độ sáng theo giá trị bước
  • bright (không có tham số) để có được mức độ sáng hiện tại

Hy vọng rằng các lệnh bash / shell có thể dễ dàng được googled cho giáo dục nhưng nếu có bất kỳ câu hỏi nào đừng ngần ngại hỏi :)


0

Nếu bạn đang sử dụng Chrome, hãy thử Firefox. Đó là điều kỳ lạ nhất. Độ sáng của tôi ổn ở mọi nơi khác trên màn hình mở rộng của tôi (phim đã tải xuống, Firefox) nhưng trên Chrome thì độ sáng bị mờ?!


Vấn đề tương tự ở đây. Bạn có đang sử dụng nvidia / nouveau không? trên đường đất? một gợi ý: nếu chạy chrome trên wayland trên nouveau, không chụp ảnh màn hình (ctrl + Phím tắt màn hình in hoặc bất cứ điều gì khác mà bạn đã thay đổi, nếu bạn đã làm). Nó sẽ làm hỏng chrome rất tệ.
hkoosha

Không, tôi sử dụng GPU Intel cơ bản. Cảm ơn bạn về thông tin.
Raymond Wachaga

0

Giải pháp kiểm soát phần cứng (không làm mờ phần mềm)

ddccontrol(lưu ý 2 cc) là một công cụ để điều khiển cài đặt của nhiều màn hình theo cách chính xác giống như cách các nút hiển thị / phần cứng trên màn hình của chúng điều khiển chúng.

Nó có sẵn trong Ubuntu ( trang con người ) thông qua apt-get ddccontrol.

gddccontrol là một giao diện người dùng đồ họa cho nó: apt-get gddccontrol

Cả hai cần phải được chạy như root:

  • sudo ddccontrol cho công cụ dòng lệnh
  • gksudo gddccontrolhoặc pkexec gddccontrolcho công cụ GUI.

Dựa trên nhận xét của @Ad Infinitum trong nhận xét của @ Taz8du29 (nhưng ghi chú và thêm cvào tên

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.