|
@@ -4,6 +4,7 @@ parent: projects
|
4
|
4
|
git: https://git.xythobuz.de/thomas/AutoBrightness
|
5
|
5
|
github: https://github.com/xythobuz/AutoBrightness
|
6
|
6
|
date: 2024-09-07
|
|
7
|
+update: 2024-09-09
|
7
|
8
|
comments: true
|
8
|
9
|
---
|
9
|
10
|
|
|
@@ -142,6 +143,26 @@ All this just runs once per second.
|
142
|
143
|
Unfortunately, using ddcutil to adjust the brightness causes a noticable stutter of the whole system each time the value is changed.
|
143
|
144
|
So this is not a good long-term solution.
|
144
|
145
|
|
|
146
|
+Telling ddcutil [to directly talk to the I2C bus](https://git.xythobuz.de/thomas/AutoBrightness/commit/b4888f009f3685c036866fa689759ffdbe9227cb) helped a bit, but it still stutters slightly.
|
|
147
|
+
|
|
148
|
+To alleviate this a bit I'm now using a [KWin script](https://develop.kde.org/docs/plasma/kwin/) to check for a full-screen app so I can pause brightness updates.
|
|
149
|
+
|
|
150
|
+<pre class="sh_javascript">
|
|
151
|
+var win = workspace.activeWindow;
|
|
152
|
+var name = win.caption;
|
|
153
|
+var pid = win.pid;
|
|
154
|
+var state = (win.bufferGeometry == win.output.geometry);
|
|
155
|
+print('{ "name": "' + name + '", "pid": ' + pid + ', "fullscreen": ' + state + ' }');
|
|
156
|
+</pre>
|
|
157
|
+
|
|
158
|
+As usual I'm also sending all these values to my local InfluxDB.
|
|
159
|
+
|
|
160
|
+<!--%
|
|
161
|
+lightgallery([
|
|
162
|
+ [ "img/autobrightness_influx.png", "Input and Output data in Grafana" ],
|
|
163
|
+])
|
|
164
|
+%-->
|
|
165
|
+
|
145
|
166
|
## Proper Client
|
146
|
167
|
|
147
|
168
|
My initial idea for the client was to use the ambient light sensor to also "calibrate" the two displays to each other.
|