時間が経つにつれて、ソフトボタンを使用するのは面倒です。バックライトの実際の明るさを意味します(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