Discussion:
gamma/temperatura barwowa monitora
(Wiadomość utworzona zbyt dawno temu. Odpowiedź niemożliwa.)
Marcin Debowski
2023-10-21 08:42:40 UTC
Permalink
Dopieszczam ustawienie barwy monitora. Jest taki prosty ale użyteczny
programik sct, który robi to ładnie. Ustawia on temperaturę podług
temperatury w K. Czyli np. sct 8500K.

Jeśli chciałbym ustawić to bardziej permanentnie na poziomie systemu to
xorg.conf w sekcji monitor akceptuje parametr gamma.

Nie specjalnie ogarniam to całe color space....

Robię np. coś takiego:
$ sct 8500K; xrandr --verbose|grep -i gamm
Gamma: 1.0:0.91:0.77

po czym robię:
xrandr --output eDP-1 --gamma 1.0:0.91:0.77

ale to nie jest to co daje sct 8500K. W dodatku, ponowne
xrandr --verbose|grep -i gamm, daje:
Gamma: 1.0:1.1:1.3

Czyli co xrandr inaczej ustawia a inaczej raportuje?
--
Marcin
marrgol
2023-10-23 17:31:42 UTC
Permalink
Post by Marcin Debowski
Dopieszczam ustawienie barwy monitora. Jest taki prosty ale użyteczny
programik sct, który robi to ładnie. Ustawia on temperaturę podług
temperatury w K. Czyli np. sct 8500K.
Jeśli chciałbym ustawić to bardziej permanentnie na poziomie systemu to
xorg.conf w sekcji monitor akceptuje parametr gamma.
A nie prościej byłoby wołać sct ze skryptu umieszczonego
w /etc/X11/xinit/xinitrc.d/ ?
Post by Marcin Debowski
Nie specjalnie ogarniam to całe color space....
$ sct 8500K; xrandr --verbose|grep -i gamm
Gamma: 1.0:0.91:0.77
xrandr --output eDP-1 --gamma 1.0:0.91:0.77
ale to nie jest to co daje sct 8500K. W dodatku, ponowne
Gamma: 1.0:1.1:1.3
Czyli co xrandr inaczej ustawia a inaczej raportuje?
Wygląda, że ustawia się r:g:b, a raportowane jest 1/r:1/g:1/b:

~ $ xrandr --output HDMI-2 --gamma 2.0:2.0:2.0
~ $ xrandr -q --verbose | grep -e Gamma
Gamma: 0.50:0.50:0.50
~ $ xrandr --output HDMI-2 --gamma 0.5:0.5:0.5
~ $ xrandr -q --verbose | grep -e Gamma
Gamma: 2.0:2.0:2.0

Pytanie, które wartości są faktycznie używane? :-)
Marcin Debowski
2023-10-27 11:47:58 UTC
Permalink
Post by marrgol
Post by Marcin Debowski
Dopieszczam ustawienie barwy monitora. Jest taki prosty ale użyteczny
programik sct, który robi to ładnie. Ustawia on temperaturę podług
temperatury w K. Czyli np. sct 8500K.
Jeśli chciałbym ustawić to bardziej permanentnie na poziomie systemu to
xorg.conf w sekcji monitor akceptuje parametr gamma.
A nie prościej byłoby wołać sct ze skryptu umieszczonego
w /etc/X11/xinit/xinitrc.d/ ?
Nie mam takiego katalogu... ale pewnie mogę dodać do xinitrc, który jest
w xinit. Czy to niezbyt dobry pomysł?
Post by marrgol
Post by Marcin Debowski
Nie specjalnie ogarniam to całe color space....
$ sct 8500K; xrandr --verbose|grep -i gamm
Gamma: 1.0:0.91:0.77
xrandr --output eDP-1 --gamma 1.0:0.91:0.77
ale to nie jest to co daje sct 8500K. W dodatku, ponowne
Gamma: 1.0:1.1:1.3
Czyli co xrandr inaczej ustawia a inaczej raportuje?
Hmmm. To jest mega dziwne. Faktycznie wygląda na 1/x ale barwa i jasność
są klarownie różne.
1) sct 8500K
2) xrandr --verbose|grep -i gamm
Gamma: 1.0:0.91:0.77
3) xrandr --output eDP-1 --gamma 1:1.098901099:1.298701299
->inny kolor i jasność niż w (1)
4) xrandr --verbose|grep -i gamm
Gamma: 1.0:0.91:0.77
ale ta sama raportowana wartość
Przy czym /sys/class/backlight/intel_backlight/brightness się nie zmienia.
Nic z tego nie rozumiem.
Post by marrgol
~ $ xrandr --output HDMI-2 --gamma 2.0:2.0:2.0
~ $ xrandr -q --verbose | grep -e Gamma
Gamma: 0.50:0.50:0.50
~ $ xrandr --output HDMI-2 --gamma 0.5:0.5:0.5
~ $ xrandr -q --verbose | grep -e Gamma
Gamma: 2.0:2.0:2.0
Pytanie, które wartości są faktycznie używane? :-)
Pytanie, co tu się kurna dzieje. Może to jakiś bug albo inna color space
czy coś? Nie, to byłoby jakieś totalne kuriozum.
--
Marcin
Marcin Debowski
2023-10-27 11:59:26 UTC
Permalink
Nosz kurna, jeszcze jedna zagatka, może powiązana:
xrandr --output eDP-1 --brightness 0.7
nie zmienia wartości /sys/class/backlight/intel_backlight/brightness
ale zmienia jasność ekranu.

echo 400 > /sys/class/backlight/intel_backlight/brightness
zmienia jasność ekranu.
--
Marcin
marrgol
2023-10-27 22:26:23 UTC
Permalink
Post by Marcin Debowski
xrandr --output eDP-1 --brightness 0.7
nie zmienia wartości /sys/class/backlight/intel_backlight/brightness
ale zmienia jasność ekranu.
Z mana do xrandr:

„Please note that the gamma and brightness informations are only
approximations of the complete color profile stored in the server.”

„--brightness brightness
[…] this is a software only modification, if your hardware has
support to actually change the brightness, you will probably
prefer to use xbacklight.”
Post by Marcin Debowski
echo 400 > /sys/class/backlight/intel_backlight/brightness
zmienia jasność ekranu.
To zapewne zmienia właśnie ustawienie sprzętowe i ma niewiele (nic?)
wspólnego z tym, co robi xrandr…
Marcin Debowski
2023-10-27 23:35:05 UTC
Permalink
Post by marrgol
Post by Marcin Debowski
xrandr --output eDP-1 --brightness 0.7
nie zmienia wartości /sys/class/backlight/intel_backlight/brightness
ale zmienia jasność ekranu.
„Please note that the gamma and brightness informations are only
approximations of the complete color profile stored in the server.”
„--brightness brightness
[…] this is a software only modification, if your hardware has
support to actually change the brightness, you will probably
prefer to use xbacklight.”
Post by Marcin Debowski
echo 400 > /sys/class/backlight/intel_backlight/brightness
zmienia jasność ekranu.
To zapewne zmienia właśnie ustawienie sprzętowe i ma niewiele (nic?)
wspólnego z tym, co robi xrandr…
Bo to przecież jest typu lcd i można tę jasność ustawiać albo lampą
podświetlającą matrycę, albo na poziomie pikseli, blokując światło tej
matrycy. Jakieś zacmienie mnie dopadło.

Ale przy oled to już chyba byłoby wyłącznie "gammą".
--
Marcin
marrgol
2023-10-27 22:23:20 UTC
Permalink
Post by Marcin Debowski
Post by marrgol
A nie prościej byłoby wołać sct ze skryptu umieszczonego
w /etc/X11/xinit/xinitrc.d/ ?
Nie mam takiego katalogu...
A to może jest specyficzny dla dystrybucji (openSUSE). Zerknąłem teraz
na Debiana i w nim to będzie chyba /etc/X11/Xsession.d/. A w innych być
może jeszcze jakiś inny z '.d' na końcu gdzieś w /etc/X11/.
Post by Marcin Debowski
ale pewnie mogę dodać do xinitrc, który jest
w xinit. Czy to niezbyt dobry pomysł?
Wg starej szkoły można edytować wszystko, co jest w /etc/, ale obecnie
raczej należy unikać modyfikacji skryptów pochodzących z dystrybucyjnych
pakietów, bo aktualizacje mogą dostarczać ich inne wersje i trzeba by
sobie za każdym razem ręcznie synchronizować własne wpisy z nowościami
z distro. Dlatego wymyślili te .d-katalogi -- jeśli główny, „dystrybucyjny”
skrypt coś w nich znajdzie, to wykorzysta, a jeśli nie, to nie; jego samego
można w ogóle nie tykać (i uniknąć różnych problemów)…
Marcin Debowski
2023-10-27 23:36:24 UTC
Permalink
Post by marrgol
Post by Marcin Debowski
Post by marrgol
A nie prościej byłoby wołać sct ze skryptu umieszczonego
w /etc/X11/xinit/xinitrc.d/ ?
Nie mam takiego katalogu...
A to może jest specyficzny dla dystrybucji (openSUSE). Zerknąłem teraz
na Debiana i w nim to będzie chyba /etc/X11/Xsession.d/. A w innych być
może jeszcze jakiś inny z '.d' na końcu gdzieś w /etc/X11/.
Post by Marcin Debowski
ale pewnie mogę dodać do xinitrc, który jest
w xinit. Czy to niezbyt dobry pomysł?
Wg starej szkoły można edytować wszystko, co jest w /etc/, ale obecnie
raczej należy unikać modyfikacji skryptów pochodzących z dystrybucyjnych
pakietów, bo aktualizacje mogą dostarczać ich inne wersje i trzeba by
sobie za każdym razem ręcznie synchronizować własne wpisy z nowościami
z distro. Dlatego wymyślili te .d-katalogi -- jeśli główny, „dystrybucyjny”
skrypt coś w nich znajdzie, to wykorzysta, a jeśli nie, to nie; jego samego
można w ogóle nie tykać (i uniknąć różnych problemów)…
Xubuntu 22.04.
Utworzę ręcznie i zobaczę co się stanie.
--
Marcin
marrgol
2023-10-28 10:55:26 UTC
Permalink
Post by Marcin Debowski
Xubuntu 22.04.
Utworzę ręcznie i zobaczę co się stanie.
Jeśli piszesz o utworzeniu /etc/X11/xinit/xinitrc.d/, to w Xubuntu
nic to nie da. Wrzuć skrypt do /etc/X11/Xsession.d/. Nazwij go tak,
żeby „się sortował” przed 99x11-common_start, np. 98sct.

Kontynuuj czytanie narkive:
Loading...