ソフトウェアを介して外部モニターの輝度を制御


10

Ubuntuコミュニティの皆さん、こんにちは。

DisplayPortに接続されているDELL U2713HMの明るさを次のコマンドで制御できます。

ddccontrol -p -r 0x10 -w 53

この例では、数値53は輝度レベルを表します(範囲0〜100)。しかし、コマンドをキーボードの輝度キーにリンクする方法がわかりません。

すでに検索しましたが、統合されたノートパソコンの画面に対する答えを見つけました。In /sys/class/backlightは、acpi_video0いくつかのサブフォルダーとファイルを含むフォルダーです。ファイルactual_brightnessには、0から20までの数値が含まれています。これは、輝度キーを押すと変化します。

/ sys / class / backlightにデバイスとして表示されている外部モニターを取得するにはどうすればよいですか?

PS:統合グラフィックスIntel HD4000を使用したUbuntu 12.10の新規インストールを実行しています。


指定したコマンドが外部モニターで機能する場合、[システム設定]> [キーボード]> [ショートカット]でカスタムショートカットキーを設定できます。
tongpu 2012年

それは正しいですが、2つのコマンド(dark / bright)を送信するだけで、Ubuntuの内部輝度チェンジャーを無視して、素晴らしい輝度アニメーションを実現できます。
remi

の出力を含むリンクを投稿できますか?ddccontrol -p私は解決策を考えています...
Gerhard Burger

これはあなたのための任意のヘルプですホープ:pastebin.com/L7Y7pRZe
レミ

回答:


6

私はあなたの外付けモニターを入れるというあなたの望ましい解決策がうまくいくとは思いません/sys/class/backlightが、良いニュースはあなたが素晴らしい明るさのアニメーションを持つことができるということです!

やってみる

notify-send " " -i notification-display-brightness-low -h int:value:50 -h string:x-canonical-private-synchronous:brightness &

これで、Ubuntuの明るさチェンジャーをシミュレートするスクリプトを作成できます。

#!/bin/bash
#get current brightness
presbright=$(ddccontrol -p | grep -A1 0x10 | tr -d '\n\t' | sed 's/.*value=\([^a-zA-Z]*\),.*/\1/')
#stepsize for the brightness change
stepsize=10

case "$1" in
        up)
          newbright=$(( ${presbright}+${stepsize} ))
          newbright=$(echo $newbright | awk '{if($1 < 100){if($1 > 0) print $1; else print 0;} else print 100;}')

          notify-send " " -i notification-display-brightness-low -h int:value:$newbright -h string:x-canonical-private-synchronous:brightness &
          ddccontrol -p -r 0x10 -w $newbright
        ;;
        down)
          newbright=$(( ${presbright}-${stepsize} ))
          newbright=$(echo $newbright | awk '{if($1 < 100){if($1 > 0) print $1; else print 0;} else print 100;}')

          notify-send " " -i notification-display-brightness-low -h int:value:$newbright -h string:x-canonical-private-synchronous:brightness &
          ddccontrol -p -r 0x10 -w $newbright            
        ;;
        status)
          echo $presbright
        ;;
        *)
          echo "Accepted arguments are: up, down, status."
        ;;
esac

exit 0

あなたが見ることができるように、それは0〜100の値は、今、あなたが結合できるクランプupdownでお好みのいくつかのキーボードショートカットにスクリプトへの呼び出しをシステム設定>キーボード>ショートカット fotomonsterが提案のように、。


注:
時間ddccontrol -pがどれくらいかかるかわかりません。長すぎるsync場合は、モニターの輝度値をファイルに保存するオプションをスクリプトに追加することもできます。次に、現在の明るさを取得する代わりにddccontrol、ファイルから取得するだけで、はるかに高速になります。もちろん、あなたが更新する必要があるだろうupし、downファイルに新しい明るさを書くために呼び出して...


archlinuxに関するこの投稿に触発されたスクリプト。


とてもうまくいきます、ありがとうございました。それがまさに私が欲しかったものです。これで、システム全体がiMacのようにうまく統合されましたが、まだ構成可能です。
レミ

:まだ私の明るさのキーにスクリプトを結合、少しの助けが必要askubuntu.com/questions/239560/...
レミ
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.