시간이 지남에 따라 소프트 버튼을 사용하는 것이 짜증날 수 있습니다. 백라이트의 실제 밝기를 의미합니다(X11 감마가 아님). 이를 가능하게 하는 프로토콜은 무엇입니까? (DVI, HDMI, DP, VGA는 아닌 것 같아요)
답변1
그래픽 카드와 모니터가 모두 백라이트 제어를 지원하는 한 사실상 이러한 모든 인터페이스는 백라이트 제어(및 그 이상)가 가능합니다.데이터 채널 표시.
DDC는 I²C를 기반으로 하므로 작동하려면 적절한 커널 모듈을 설치하고 로드해야 합니다.
# Debian
sudo apt-get install i2c-tools
sudo modprobe i2c-dev
# RHEL
sudo dnf install i2c-tools
그런 다음 를 사용하여 어떤 I²C 버스가 디스플레이에 연결되어 있는지 확인해야 합니다 sudo i2cdetect -l
.
# Example output for Intel graphics card
i2c-0 i2c i915 gmbus dpc I2C adapter
i2c-1 i2c i915 gmbus dpb I2C adapter
i2c-2 i2c i915 gmbus dpd I2C adapter
i2c-3 i2c DPDDC-B I2C adapter
i2c-4 i2c DPDDC-C I2C adapter
# Example output for AMD graphics card
i2c-0 i2c Radeon i2c bit bus 0x90 I2C adapter
i2c-1 i2c Radeon i2c bit bus 0x91 I2C adapter
i2c-2 i2c Radeon i2c bit bus 0x92 I2C adapter
i2c-3 i2c Radeon i2c bit bus 0x93 I2C adapter
i2c-4 i2c Radeon i2c bit bus 0x94 I2C adapter
i2c-5 i2c Radeon i2c bit bus 0x95 I2C adapter
i2c-6 i2c card0-eDP-1 I2C adapter
i2c-7 i2c card0-VGA-1 I2C adapter
존재하다인텔이 경우 올바른 버스는 DPDDC 버스입니다(디스플레이 포트 DDC), 사용하는 포트에 따라 다릅니다. 제 경우에는 HDMI와 DP가 모두 DP로 표시됩니다.
존재하다AMD이 경우 버스는 카드0-이라고 불립니다.상호 작용-N.
인터페이스가 나열되지 않으면 카드/드라이버가 표준 방식으로 DDC를 지원하지 않는 것입니다.
이제 모니터가 DDC를 지원하는지, 밝기를 이렇게 설정할 수 있는지 알아보겠습니다. 먼저 다음을 설치하십시오 ddccontrol
.
# Debian
sudo apt-get install ddccontrol
# RHEL
sudo dnf install ddccontrol
그런 다음 이를 사용하여 지원되는 DDC 매개변수를 나열합니다. 이 예에서는 DDC 인터페이스가 i2c-3 버스에 바인딩되어 있다고 가정합니다.
# sudo ddccontrol dev:/dev/i2c-3
ddccontrol version 0.4.2
Copyright 2004-2005 Oleg I. Vdovikin ([email protected])
Copyright 2004-2006 Nicolas Boichat ([email protected])
This program comes with ABSOLUTELY NO WARRANTY.
You may redistribute copies of this program under the terms of the GNU General Public License.
Reading EDID and initializing DDC/CI at bus dev:/dev/i2c-3...
I/O warning : failed to load external entity "/usr/share/ddccontrol-db/monitor/DELA0A2.xml"
Document not parsed successfully.
I/O warning : failed to load external entity "/usr/share/ddccontrol-db/monitor/DELlcd.xml"
Document not parsed successfully.
EDID readings:
Plug and Play ID: DELA0A2 [VESA standard monitor]
Input type: Digital
= VESA standard monitor
> Color settings
> Brightness and Contrast
> id=brightness, name=Brightness, address=0x10, delay=-1ms, type=0
supported, value=45, maximum=100
> id=contrast, name=Contrast, address=0x12, delay=-1ms, type=0
supported, value=75, maximum=100
--- [snip] ---
모든 것이 순조롭게 진행된다면 밝기 값은 모니터에 설정된 밝기와 정확히 동일한 밝기를 보고해야 합니다. 이제 이 명령을 사용하여 50% 밝기를 설정할 수 있습니다(0x10을 위에서 찾은 밝기 값의 주소로 대체).
sudo ddccontrol dev:/dev/i2c-3 -r 0x10 -w 50
답변2
@M132의 답변에 따르면 ddccontrol
2006년 이후 유지 관리가 없고 새 모니터에 대한 구성이 추가되지 않은 것으로 보입니다.
다행히도 새로운 도구가 있습니다.ddutil, 더욱 강력하고 적극적으로 개발되었습니다. 이 중 하나를 설치한 후사전 구축된 패키지또는 소스에서 구축하여 밝기(및 수많은 기타 설정)를 쿼리하고 설정하는 데 사용할 수 있습니다.
# ddcutil capabilities | grep Brightness
Feature: 10 (Brightness)
# ddcutil getvcp 10
VCP code 0x10 (Brightness ): current value = 60, max value = 100
# ddcutil setvcp 10 70
답변3
이것DDC/CI 커널 모듈ddcci-backlight
대부분의 DDC/CI 지원 모니터를 코어의 백라이트 시스템에 통합할 수 있는 모듈이 포함되어 있습니다 ( /sys/class/backlight
). 이를 통해 후자를 사용하여 DDC/CI 모니터에서 백라이트를 구동할 수 있는 모든 도구를 사용할 수 있습니다. 예를 들어 GNOME 데스크탑에 내장된 컨트롤을 사용할 수 있습니다.
커널 모듈은 Debian(Debian 9 이후) 및 파생 배포판에서 사용할 수 있습니다.
sudo apt install ddcci-dkms
답변4
예 xbacklight
– “RandR 확장을 사용하여 백라이트 밝기 조정”.
그러나 HDMI 모니터에 오류가 발생하여 소프트웨어 수정으로 전환했습니다.
xrandr --output HDMI2 --brightness 0.7