ノートPCによってはディスプレイの照度の幅が大きく、もっと暗い画面が欲しいのに...ということがあります。
私の使っている VersaPro"VY12M/C-3"は問題ないのですが、"VK27M/B-G"は室内だと画面が明るすぎます。
まぁ、好みもあるとは思いますが。
そこで、ディスプレイの色温度の変更ができるソフトウェア Redshift を導入してみました。
目次
色温度とは
色温度とは、光の色の尺度です。
電球売り場では、暖色系や寒色系・昼光色・昼白色などと表記されていたりします。
base on 色温度(イロオンド)とは - コトバンク
光の色を数値で表現するもので、単位はK(ケルビン)を使う。
物質を燃やしたとき、高温になるほど炎の色が青くなるように、暖色系は色温度が低く、寒色系の色は色温度が高い。
自然光は、5000K~6000Kで、パソコンのディスプレーは9300Kが標準。
base on 色温度とは - 広告用語 Weblio辞書
タングステン電球(白熱灯)は3200K、蛍光灯は4200K前後、太陽の平均直射光は5400K前後となっている。
また、NTSCでは、色の基準となる白色は6774K(CIE標準光源C)と定めているが、欧米においてはモニターの基準の白色を6500K、日本では9300Kにしている。HDTVは国際的に6500Kである。
色温度調節ソフトウェア
Ubuntu では Redshift が注名なようです。
公式サイトを確認すると、2016年にバージョン1.11がリリースされています。
また、設定ファイルは各自で用意する必要があるようです。
base on Redshift
Download
Latest release is Redshift 1.11 published on 2016-01-02.Configuration file
You’ll have to create it manually and put it in ~/.config/redshift.conf. The following is an example of a configuration file:
設定ファイル
手動で作成して ~/.config/redshift.conf に入れなければなりません。次に、構成ファイルの例を示します。
構成ファイルの例は下記「設定ファイル作成」に表示します。
Redshift 導入
標準リポジトリから導入可能です。
$ sudo apt-get install redshift-gtk
以下の追加パッケージがインストールされます:
at-spi2-core avahi-daemon geoclue-2.0 iio-sensor-proxy libavahi-core7
libdaemon0 libgeoclue-2-0 libnss-mdns python-cairo python-gobject-2
python-gtk2 python3-xdg redshift
提案パッケージ:
avahi-autoipd avahi-autoipd | zeroconf python-gobject-2-dbg python-gtk2-doc
以下のパッケージが新たにインストールされます:
at-spi2-core avahi-daemon geoclue-2.0 iio-sensor-proxy libavahi-core7
libdaemon0 libgeoclue-2-0 libnss-mdns python-cairo python-gobject-2
python-gtk2 python3-xdg redshift redshift-gtk
アップグレード: 0 個、新規インストール: 14 個、削除: 0 個、保留: 0 個。
Lubuntu 16.04.4 だと、バージョン1.10になるんですね。
2015.1.4 リリース版です。
$ redshift -V
redshift 1.10
最新版のリリースページを見る限り、セキュリティ絡みの問題はなさそうなのでOKでしょう。
base on Redshift 1.11 released
- Add option preserve for gamma adjustment methods (randr, vidmode, quartz, w32gdi) to apply redness on top of current gamma correction.
- Fix #158: Add redshift.desktop file to resolve an issue where Geoclue2 would not allow redshift to obtain the current location (Laurent Bigonville)
- Fix #263: Make sure that the child process is terminated when redshift-gtk exits.
- Fix #284: A sample configuration file has been added to the distribution tarball.
- Fix warning message in redshift-gtk that is some cases caused redshift-gtk to fail (#271) (Christian Stadelmann, Javier Cantero)
- Fix #174: Use nanosleep() for sleeping to avoid high CPU load on platforms (NetBSD, …) with limitations in usleep() (Piotr Meyer)
- Various updates to man page and translations.
使い方
ヘルプ
ヘルプを表示すると、引数を確認できます。
$ redshift -help
Usage: redshift -l LAT:LON -t DAY:NIGHT [OPTIONS...]
Set color temperature of display according to time of day.
-h Display this help message
-v Verbose output
-V Show program version
-b DAY:NIGHT Screen brightness to apply (between 0.1 and 1.0)
-c FILE Load settings from specified configuration file
-g R:G:B Additional gamma correction to apply
-l LAT:LON Your current location
-l PROVIDER Select provider for automatic location updates
(Type `list' to see available providers)
-m METHOD Method to use to set color temperature
(Type `list' to see available methods)
-o One shot mode (do not continuously adjust color temperature)
-O TEMP One shot manual mode (set color temperature)
-p Print mode (only print parameters and exit)
-x Reset mode (remove adjustment from screen)
-r Disable temperature transitions
-t DAY:NIGHT Color temperature to set at daytime/night
The neutral temperature is 6500K. Using this value will not
change the color temperature of the display. Setting the
color temperature to a value higher than this results in
more blue light, and setting a lower value will result in
more red light.
Default values:
Daytime temperature: 5500K
Night temperature: 3500K
オプション
よく使う(そして、よく忘れる)オプションを列記します。
-
Redshift オフ(元に戻る)
$ redshift -x
-
現在の状態の表示
$ redshift -p
試してみる
適当(適切)な引数を割り当てて起動してみます。
なお、Redshift 実行時に設定の反映・解除が繰り返されることがあります。
その場合は、前回起動した Redshift が終了していないので「killall redshift」で終わらせてください。
$ redshift -b 0.5:0.3 -r -t 1500:1500 -l 35:139 -m randr -v
Location: 35.00 N, 139.00 E
Temperatures: 1500K at day, 1500K at night
Solar elevations: day above 3.0, night below -6.0
Brightness: 0.50:0.30
Gamma (Daytime): 1.000, 1.000, 1.000
Gamma (Night): 1.000, 1.000, 1.000
Status: Enabled
Period: Daytime
Color temperature: 1500K
Brightness: 0.50
$ killall redshift
redshift: no process found
※Redshift のプロセスが正常終了していると「redshift: no process found」と表示されます
設定ファイル
前述のようにコマンドに引数を与えて使うこともできますが、設定ファイルを作成して使うこともできます。
設定ファイルの作成
設定ファイルは、Redshift 公式ページのConfiguration fileに記載があるとおり、「~/.config/redshift.conf」に作成します。
※無いので、新規作成します
~/.config/redshift.conf
公式ページのリファレンスを転載します。
特徴や変更可能な項目としては、
- 昼・夜ごとに設定ができる
- ブライトネス(輝度 / きど)の調節
- ガンマ補正値の設定
- 昼・夜に関連した緯度経度の設定
- 適用するディスプレイ番
などがあります。
ちなみに、ガンマとは中間調(グレー)の明るさを調節するためのもので、補正値として1未満を指定すると暗くなるようです。
base on 第7回 "曲線美"が色再現性の決め手になる?――液晶ディスプレイの「ガンマ」を知ろう | EIZO株式会社
ディスプレイの「ガンマ」とは一体何なのか?
普段の生活で見かけることも少なくないガンマだが、コンピュータの画像処理においては「中間調(グレー)の明るさ」を示す用語として使われるのが一般的だ。
base on ガンマについて - コンポジゴク
色調補正のガンマ
中間調だけを変えるので、白飛びや黒潰れが増えない(クリッピングが発生しない)というメリットがあります。
[レベル補正]のガンマ値は標準で1ですが、2にすると明るくなり、0.5にすると暗くなります。
リファレンス
公式サイトそのままの転載ですが参考までに。
次に、私の設定ファイルを掲載します。
; Global settings for redshift
[redshift]
; Set the day and night screen temperatures
temp-day=5700
temp-night=3500
; Enable/Disable a smooth transition between day and night
; 0 will cause a direct change from day to night screen temperature.
; 1 will gradually increase or decrease the screen temperature.
transition=1
; Set the screen brightness. Default is 1.0.
;brightness=0.9
; It is also possible to use different settings for day and night
; since version 1.8.
;brightness-day=0.7
;brightness-night=0.4
; Set the screen gamma (for all colors, or each color channel
; individually)
gamma=0.8
;gamma=0.8:0.7:0.8
; This can also be set individually for day and night since
; version 1.10.
;gamma-day=0.8:0.7:0.8
;gamma-night=0.6
; Set the location-provider: 'geoclue', 'geoclue2', 'manual'
; type 'redshift -l list' to see possible values.
; The location provider settings are in a different section.
location-provider=manual
; Set the adjustment-method: 'randr', 'vidmode'
; type 'redshift -m list' to see all possible values.
; 'randr' is the preferred method, 'vidmode' is an older API.
; but works in some cases when 'randr' does not.
; The adjustment method settings are in a different section.
adjustment-method=randr
; Configuration of the location-provider:
; type 'redshift -l PROVIDER:help' to see the settings.
; ex: 'redshift -l manual:help'
; Keep in mind that longitudes west of Greenwich (e.g. the Americas)
; are negative numbers.
[manual]
lat=48.1
lon=11.6
; Configuration of the adjustment-method
; type 'redshift -m METHOD:help' to see the settings.
; ex: 'redshift -m randr:help'
; In this example, randr is configured to adjust screen 1.
; Note that the numbering starts from 0, so this is actually the
; second screen. If this option is not specified, Redshift will try
; to adjust _all_ screens.
[randr]
screen=1
個人的サンプルファイル
白熱灯は3200K、蛍光灯は4200K前後ということなので、昼・夜で 4000:3000 にしました。
また、ブライトネス(輝度)も低めに設定し、ガンマ補正値はブルーのみ 0.7 にしています。
[redshift]
;昼の色温度
temp-day=4000
;夜の色温度
temp-night=3000
;色温度の変更方法(0:即時反映、1:段階的に反映)
transition=0
;昼の明るさ
brightness-day=0.7
;夜の明るさ
brightness-night=0.5
gamma=1.0:1.0:0.7
;位置情報を手動で設定(例:東京)
location-provider=manual
[manual]
;緯度
lat=35.68
;経度
lon=139.76
[randr]
;デフォルトは、randr(その他は -m 参照)
;adjustment-method=vidmode
screen=0
設定ファイルの利用
設定ファイル「~/.config/redshift.conf」を作成すると、引数なしで redshift を起動すると読み込んで反映してくれます。
$ redshift
Using method `randr'.
※設定ファイル作成後でも redshift に引数を指定して実行することが可能です。
(その場合は、もちろん引数が優先されます)。