ディスプレイ制御

提供: ArchWiki
2024年4月5日 (金) 20:55時点におけるKusanaginoturugi (トーク | 投稿記録)による版 (→‎eDP v1.2: 翻訳)
ナビゲーションに移動 検索に移動

ディスプレイ制御プロトコルは、ビデオリンクを介した補助信号または追加のバスによるディスプレイの制御を可能にします。最も基本的な機能は電源とバックライト管理であり、後者は主にノートパソコンや一部のテレビ画面でサポートされていますが、スタンドアロンのコンピュータモニターではまだ普及していません。

制御可能な機能は一般に実装に大きく依存します。また、重複する機能を持つ多数のディスプレイ制御プロトコルとその実装が使用されています。

この記事またはセクションの正確性には問題があります。
理由: video is a pre-systemd group, access to hardware is generally managed by udev. (議論: トーク:ディスプレイ制御#)

以下およびリンクされた記事に記載されているほとんどのツールについては、ユーザーを video ユーザーグループに追加することでユーザーアクセスを許可できます。

ハードウェアのみ

これらの限定的な実装は、主に古いノートパソコンで見られます。ハードウェアのみとは、バックライト制御のためのソフトウェアインターフェイスがなく、ユーザーはプリセットキー/組み合わせまたは専用の回転式/スライド式スイッチやノブを使用するしかないことを意味します。古い CRT コンピュータモニターにも、ハードウェアの明るさ制御がありました。

ベンダー固有

ベンダー固有の実装と、関連するいくつかのツールはバックライトでよく紹介されています。標準カーネルインターフェイスのないベンダー固有の ACPI 実装やGPU ハックも、この限定カテゴリに含まれます。同様に、UART/USB などを介したカスタムプロトコルを使用する外部ディスプレイも含まれます。これらは通常、デスクトップ環境ではサポートされていません。

ACPI

ACPIモジュール実装は、ノートパソコンや一体型ディスプレイを持つ PC(AIO など)でのみ見つかりますが、部分的に標準化され、ソフトウェアからアクセス可能です。/sys/class/backlight インターフェースを持つ ACPI 実装は通常、デスクトップ環境でよくサポートされていますが、他のディスプレイ制御機能は利用できません。

DPMS

コンピュータハードウェアに普遍的であり、長い間ソフトウェアでよくサポートされているにも関わらず、Display Power Management Signaling は 2-4 の状態にディスプレイ電源を管理することしか許可しませんが、より細かいバックライトや他の制御はできません。テレビセットアップでは、最高の場合にパネル状態を切り替えることができますが、テレビを起動または休止させることはできません。

(E-)DDC/CI

(拡張)ディスプレイデータチャンネル/コマンドインターフェース インターフェイスは Monitor Control Command Set (MCCS)を I2C 経由で運び、コンピュータハードウェアでDPMSを補完または置き換えることができます。DDC 1.0 が 1994 年に、E-DDC 1.0 が 1999 年に公開されたにも関わらず、この機能は 2010 年代になってからスタンドアロンのコンピュータモニターに現れ始めました。電源管理とバックライト管理の他に、そのコントローラでサポートされているすべてのディスプレイ設定を制御する広範なコマンドセットがあります。ddcutil (GUI: ddcuiAUR) および ddccontrolAUR (GUI: gddccontrolAUR) を確認してください。バックライト制御には、ddcci-driver-linux-dkmsAURを使用して/sys/class/backlight インターフェイスを作成することが可能で、デスクトップ統合を実現しますが、まだメインラインには必要です。

eDP v1.2

Embedded Display Port (eDP) はバージョン 1.2 で補助 DisplayPort チャンネルを介して動作するディスプレイ制御プロトコルを導入し、組み込み/ノートパソコンのディスプレイで DDC/CI を超越しました。[1]

HDMI-CEC

HDMI - Consumer Electronics Control is an additional I2C-like, but very slow bus for waking and controlling standalone enduser devices such as TVs. Available from HDMI 1.0, it uses pin 13 in a HDMI connector and it needs a tiny bit of additional hardware to drive the bus. Somehow it is typically not supported in PC GPUs so additional hardware is needed. Specialised USB-CEC adapters are not cheap and abundant, a better alternative is to use kernel driver which uses auxiliary channel of DisplayPort for HDMI-CEC signalling, but it works only with a select few DP-to-HDMI adapters. On the other hand native HDMI-CEC support is normal in ARM single-board computers and certain Android devices. Desktop HDMI-CEC integration in Arch Linux is currently manual, but manageable for simple setups such as waking TV from standby. Supported in userspace primarily through cec-ctl from v4l-utils or alternatively with cec-client from libcec.