Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

X11 grabber does not restart after deactivation #167

Closed
awawa-dev opened this issue Dec 7, 2021 Discussed in #164 · 1 comment
Closed

X11 grabber does not restart after deactivation #167

awawa-dev opened this issue Dec 7, 2021 Discussed in #164 · 1 comment

Comments

@awawa-dev
Copy link
Owner

Discussed in #164

Originally posted by hkalle December 5, 2021
I am running a self-compiled version of HyperHDR 18.0.0.0beta1 on a Manjaro (Arch-Linux) system of my HTPC. It is running rock solid and I understood, that I cannot start HyperHDR as a service due to Linux security aspects, since X11 grabber otherwise could grab the screen in the background. So, I start HyperHDR as a job with the window manager and screen is perfectly grabbed by X11 grabber. When I deactivate it in the remote control and try to reactivate, X11 is not starting again. I cannot find anything striking in the log. Maybe it is related to my Linux system itself? Does anyone face similar issues?

Thanks.

Log:

2021-12-05T07:48:10.315Z [MAIN] Database path: '/home/d023552/.hyperhdr/db/hyperhdr.db', readonlyMode = disabled
2021-12-05T07:48:10.315Z [MAIN] Starting HyperHdr - 18.0.0.0beta1, master (Awawa-bb43f14/c8049f1-1638126743), built: Dec 1 2021:07:40:00
2021-12-05T07:48:10.315Z [MAIN] Set user data path to '/home/d023552/.hyperhdr'
2021-12-05T07:48:10.317Z [DB] Database opened: /home/d023552/.hyperhdr/db/hyperhdr.db
2021-12-05T07:48:10.346Z [SETTINGSMGR] Settings database initialized
2021-12-05T07:48:10.346Z [HYPERHDR] Sound device is disabled
2021-12-05T07:48:10.355Z [V4L2:USB VIDEO: USB] Cropping image: width=0 height=0; crop: left=0 right=0 top=0 bottom=0
2021-12-05T07:48:10.355Z [V4L2:USB VIDEO: USB] Restarting video grabber is now blocked due to reloading of the configuration
2021-12-05T07:48:10.355Z [V4L2:USB VIDEO: USB] Cropping image: width=0 height=0; crop: left=0 right=0 top=0 bottom=0
2021-12-05T07:48:10.355Z [V4L2:USB Video: USB] (GrabberWrapper.cpp:45) CEC keycode. Start: 0, stop: 0
2021-12-05T07:48:10.355Z [V4L2:USB VIDEO: USB] (Grabber.cpp:117) Set new width: 720, height: 480 for capture
2021-12-05T07:48:10.355Z [V4L2:USB VIDEO: USB] (Grabber.cpp:291) setWidthHeight preparing to restarting video grabber 0
2021-12-05T07:48:10.355Z [V4L2:USB VIDEO: USB] Delayed restart of the grabber due to change of the capturing resolution
2021-12-05T07:48:10.355Z [V4L2:USB VIDEO: USB] Delayed restart of the grabber due to change of the framerate
2021-12-05T07:48:10.355Z [V4L2:USB VIDEO: USB] (Grabber.cpp:231) setBrightnessContrastSaturationHue nothing changed
2021-12-05T07:48:10.355Z [V4L2:USB VIDEO: USB] (V4L2Grabber.cpp:98) setHdrToneMappingMode to: Disabled
2021-12-05T07:48:10.355Z [V4L2:USB VIDEO: USB] (Grabber.cpp:140) setFpsSoftwareDecimation to: 1
2021-12-05T07:48:10.356Z [SIGNAL_OLD] (DetectionManual.cpp:85) Signal detection area set to: 0.250000,0.250000 x 0.750000,0.750000
2021-12-05T07:48:10.356Z [SIGNAL_OLD] (DetectionManual.cpp:75) Signal threshold set to: {0, 0, 0} and frames: 50
2021-12-05T07:48:10.356Z [SIGNAL_AUTO] (DetectionAutomatic.cpp:367) Automatic signal detection -> errorTolerance: 9, modelTolerance: 90, sleepTime: 1000, wakeTime: 0
2021-12-05T07:48:10.356Z [V4L2:USB VIDEO: USB] (Grabber.cpp:336) setDeviceVideoStandard preparing to restart video grabber. Old: '' new: 'USB Video: USB Video (video0)'
2021-12-05T07:48:10.356Z [V4L2:USB VIDEO: USB] Delayed restart of the grabber due to change of selected device
2021-12-05T07:48:10.356Z [V4L2:USB VIDEO: USB] (Grabber.cpp:158) Force encoding to: yuyv (old: NO_CHANGE)
2021-12-05T07:48:10.356Z [V4L2:USB VIDEO: USB] Delayed restart of the grabber due to change of the video encoding format
2021-12-05T07:48:10.356Z [V4L2:USB VIDEO: USB] setQFrameDecimation is now: enabled
2021-12-05T07:48:10.356Z [V4L2:USB Video: USB] (GrabberWrapper.cpp:525) Frame cache is: enabled
2021-12-05T07:48:10.356Z [X11_SYSTEM:AUTO] Cropping image: width=0 height=0; crop: left=0 right=0 top=0 bottom=0
2021-12-05T07:48:10.356Z [X11_SYSTEM:AUTO] Loaded X11 proxy library for screen capturing
2021-12-05T07:48:10.356Z [X11_SYSTEM:AUTO] Restarting video grabber is now blocked due to reloading of the configuration
2021-12-05T07:48:10.356Z [X11_SYSTEM:AUTO] (Grabber.cpp:117) Set new width: 512, height: 512 for capture
2021-12-05T07:48:10.356Z [X11_SYSTEM:AUTO] (Grabber.cpp:291) setWidthHeight preparing to restarting video grabber 0
2021-12-05T07:48:10.356Z [X11_SYSTEM:AUTO] Delayed restart of the grabber due to change of the capturing resolution
2021-12-05T07:48:10.356Z [X11_SYSTEM:AUTO] Delayed restart of the grabber due to change of the framerate
2021-12-05T07:48:10.356Z [SIGNAL_OLD] (DetectionManual.cpp:85) Signal detection area set to: 0.250000,0.250000 x 0.750000,0.750000
2021-12-05T07:48:10.356Z [SIGNAL_OLD] (DetectionManual.cpp:75) Signal threshold set to: {0, 0, 0} and frames: 50
2021-12-05T07:48:10.356Z [X11_SYSTEM:AUTO] (Grabber.cpp:336) setDeviceVideoStandard preparing to restart video grabber. Old: '' new: 'auto'
2021-12-05T07:48:10.356Z [X11_SYSTEM:AUTO] Delayed restart of the grabber due to change of selected device
2021-12-05T07:48:10.368Z [SETTINGSMGR] Settings database initialized
2021-12-05T07:48:10.370Z [BLACKBORDER] Set mode to: default
2021-12-05T07:48:10.370Z [COMPONENTREG0] Blackborder detector: enabled
2021-12-05T07:48:10.370Z [IMAGETOLED0] (ImageProcessor.cpp:153) set user led mapping to advanced
2021-12-05T07:48:10.370Z [IMAGETOLED0] (ImageProcessor.cpp:136) setSparseProcessing to 0
2021-12-05T07:48:10.370Z [RGB_TRANSFORM0] RGB transform classic_config: 0, saturationGain: 1.000000, luminanceGain: 1.000000, backlightThreshold: 1
2021-12-05T07:48:10.370Z [RGB_TRANSFORM0] setBacklightThreshold: 1
2021-12-05T07:48:10.370Z [ADJUST_RED0] Set correction to 255
2021-12-05T07:48:10.370Z [ADJUST_BLUE0] Set correction to 255
2021-12-05T07:48:10.370Z [ADJUST_GREEN0] Set correction to 255
2021-12-05T07:48:10.379Z [JSONSERVER] (JsonServer.cpp:28) Created instance
2021-12-05T07:48:10.379Z [JSONSERVER] Started on port 19444
2021-12-05T07:48:10.383Z [MAIN] start systray
2021-12-05T07:48:10.371Z [DB] Database opened: /home/d023552/.hyperhdr/db/hyperhdr.db
2021-12-05T07:48:10.380Z [SMOOTHING0] Clearing queued colors before: enabling
2021-12-05T07:48:10.380Z [COMPONENTREG0] Smoothing: enabled
2021-12-05T07:48:10.380Z [SMOOTHING0] Creating config (0) => type: Alternative, dirMode: false, pause: false, settlingTime: 100ms, interval: 25ms (40Hz), antiFlickTres: 32, antiFlickStep: 5, antiFlickTime: 250
2021-12-05T07:48:10.380Z [LEDDEVICE_wled] Start LedDevice 'wled'.
2021-12-05T07:48:10.380Z [SMOOTHING0] Clearing queued colors before: enabling. Smoothing configuration changed: restarting timer.
2021-12-05T07:48:10.380Z [SMOOTHING0] Selecting config (0) => type: Alternative, dirMode: false, pause: false, settlingTime: 100ms, interval: 25ms (40Hz), antiFlickTres: 32, antiFlickStep: 5, antiFlickTime: 250
2021-12-05T07:48:10.380Z [SMOOTHING0] Selecting config (0) => type: Alternative, dirMode: false, pause: false, settlingTime: 100ms, interval: 25ms (40Hz), antiFlickTres: 32, antiFlickStep: 5, antiFlickTime: 250
2021-12-05T07:48:10.380Z [LEDDEVICE_wled] (LedDeviceWled.cpp:55)
2021-12-05T07:48:10.380Z [LEDDEVICE_wled] (LedDevice.cpp:171) deviceConfig: [{"colorOrder":"rgb","currentLedCount":302,"hardwareLedCount":302,"host":"wled.fritz.box","latchTime":0,"refreshTime":0,"type":"wled"}]
2021-12-05T07:48:10.380Z [LEDDEVICE_wled] (LedDevice.cpp:194) Stopping timer
2021-12-05T07:48:10.380Z [LEDDEVICE_wled] (LedDevice.cpp:445) RefreshTime updated to 0ms
2021-12-05T07:48:10.380Z [LEDDEVICE_wled] (LedDeviceWled.cpp:63) DeviceType : wled
2021-12-05T07:48:10.380Z [FLATBUFCONN] Connecting to HyperHDR: 127.0.0.1:19401
2021-12-05T07:48:10.380Z [LEDDEVICE_wled] (LedDeviceWled.cpp:64) LedCount : 302
2021-12-05T07:48:10.380Z [LEDDEVICE_wled] (LedDeviceWled.cpp:65) ColorOrder : rgb
2021-12-05T07:48:10.380Z [LEDDEVICE_wled] (LedDeviceWled.cpp:107)
2021-12-05T07:48:10.381Z [LEDDEVICE_wled] (LedDeviceWled.cpp:118) [1]
2021-12-05T07:48:10.381Z [MUXER0] Register new input 'System/SYSTEMGRABBER' with priority 245 as inactive
2021-12-05T07:48:10.381Z [COMPONENTREG0] System capture device: enabled
2021-12-05T07:48:10.387Z [X11_SYSTEM:AUTO] (X11Grabber.cpp:122) init
2021-12-05T07:48:10.387Z [X11_SYSTEM:AUTO] (X11Grabber.cpp:141) Forcing auto discovery device
2021-12-05T07:48:10.387Z [X11_SYSTEM:AUTO] (X11Grabber.cpp:146) Auto discovery set to X11: Display nr: 0
2021-12-05T07:48:10.387Z [X11_SYSTEM:AUTO] *************************************************************************************************
2021-12-05T07:48:10.387Z [X11_SYSTEM:AUTO] Starting X11 grabber. Selected: 'X11: Display nr: 0' (0) max width: 512 (512) @ 25 fps
2021-12-05T07:48:10.387Z [X11_SYSTEM:AUTO] *************************************************************************************************
2021-12-05T07:48:10.388Z [X11_SYSTEM:AUTO] Started
2021-12-05T07:48:10.381Z [LEDDEVICE_wled] (LedDevice.cpp:171) deviceConfig: [{"colorOrder":"rgb","currentLedCount":302,"hardwareLedCount":302,"host":"wled.fritz.box","latchTime":0,"port":19446,"refreshTime":0,"type":"wled"}]
2021-12-05T07:48:10.381Z [LEDDEVICE_wled] (LedDevice.cpp:194) Stopping timer
2021-12-05T07:48:10.381Z [LEDDEVICE_wled] (LedDevice.cpp:445) RefreshTime updated to 0ms
2021-12-05T07:48:10.381Z [BOBLIGHT] Instance created
2021-12-05T07:48:10.388Z [HYPERMANAGER] HyperHDR instance 'Samsung TV' has been started
2021-12-05T07:48:10.388Z [DAEMON] Unload CEC
2021-12-05T07:48:10.388Z [DAEMON] (hyperhdr.cpp:510) libCEC was left out from the build
2021-12-05T07:48:10.383Z [FLATBUFSERVER] Started on port 19400
2021-12-05T07:48:10.383Z [PROTOSERVER] Started on port 19445
2021-12-05T07:48:10.383Z [WEBSERVER] Initialize Webserver
2021-12-05T07:48:10.383Z [WEBSERVER] Initialize Webserver
2021-12-05T07:48:10.384Z [LEDDEVICE_wled] (ProviderUdp.cpp:50) Successfully resolved IP-address (192.168.1.69) for hostname (wled.fritz.box).
2021-12-05T07:48:10.384Z [LEDDEVICE_wled] (ProviderUdp.cpp:72) UDP socket will write to 192.168.1.69:19446
2021-12-05T07:48:10.384Z [LEDDEVICE_wled] (LedDeviceWled.cpp:96) Hostname/IP : wled.fritz.box
2021-12-05T07:48:10.384Z [LEDDEVICE_wled] (LedDeviceWled.cpp:97) Port : 19446
2021-12-05T07:48:10.384Z [WEBSERVER] Apply Webserver settings
2021-12-05T07:48:10.384Z [WEBSERVER] Apply Webserver settings
2021-12-05T07:48:10.384Z [LEDDEVICE_wled] (LedDeviceWled.cpp:101) [1]
2021-12-05T07:48:10.384Z [WEBSERVER] Set document root to: :/webconfig
2021-12-05T07:48:10.384Z [WEBSERVER] Set document root to: :/webconfig
2021-12-05T07:48:10.384Z [LEDDEVICE_wled] (LedDeviceWled.cpp:130)
2021-12-05T07:48:10.384Z [WEBSERVER] Started on port 8090 name 'HyperHDR Webserver'
2021-12-05T07:48:10.384Z [LEDDEVICE] (ProviderRestApi.cpp:152) PUT: [http://wled.fritz.box/json/state] [{"on":true,"live":true}]
2021-12-05T07:48:10.387Z [WEBSERVER] Setup SSL certificate
2021-12-05T07:48:10.387Z [WEBSERVER] Setup private SSL key
2021-12-05T07:48:10.387Z [WEBSERVER] Started on port 8092 name 'HyperHDR Webserver'
2021-12-05T07:48:10.406Z [SMOOTHING0] Using alternative smoothing procedure (0)
2021-12-05T07:48:10.440Z [MUXER0] Priority 245 is now active
2021-12-05T07:48:10.440Z [MUXER0] Set visible priority to 245
2021-12-05T07:48:10.441Z [IMAGETOLED0] Total index number is: 34080. Sparse processing: disabled, image size: 480 x 270, area number: 302
2021-12-05T07:48:10.441Z [IMAGETOLED0] Total index number is: 34080. Sparse processing: disabled, image size: 480 x 270, area number: 302
2021-12-05T07:48:10.441Z [HYPERHDR0] New priority[245], previous [255]
2021-12-05T07:48:10.441Z [HYPERHDR0] New source available -> switch LED-Device on
2021-12-05T07:48:10.441Z [SMOOTHING0] Clearing queued colors before: enabling
2021-12-05T07:48:10.441Z [LEDDEVICE_wled] (LedDeviceWled.cpp:130)
2021-12-05T07:48:10.441Z [LEDDEVICE] (ProviderRestApi.cpp:152) PUT: [http://wled.fritz.box/json/state] [{"on":true,"live":true}]
2021-12-05T07:48:10.441Z [IMAGETOLED0] (ImageProcessor.cpp:180) set hard led mapping to multicolor_mean
2021-12-05T07:48:10.442Z [IMAGETOLED0] Total index number is: 34080. Sparse processing: disabled, image size: 480 x 270, area number: 302
2021-12-05T07:48:10.467Z [SMOOTHING0] Using alternative smoothing procedure (0)
2021-12-05T07:48:10.493Z [LEDDEVICE] (ProviderRestApi.cpp:191) Reply.httpStatusCode [200]
2021-12-05T07:48:10.498Z [LEDDEVICE] (ProviderRestApi.cpp:191) Reply.httpStatusCode [200]
2021-12-05T07:48:10.498Z [COMPONENTREG0] LED device: enabled
2021-12-05T07:48:10.498Z [EFFECTENGINE0] Run effect "Rainbow swirl fast" on channel 0
2021-12-05T07:48:10.498Z [EFFECTENGINE0] (EffectEngine.cpp:152) Start the effect: name [Rainbow swirl fast], smoothCfg [2]
2021-12-05T07:48:10.498Z [MUXER0] Register new input 'System/EFFECT' with priority 0 as inactive
2021-12-05T07:48:10.498Z [HYPERHDR] Initial foreground effect 'Rainbow swirl fast' started
2021-12-05T07:48:10.499Z [SMOOTHING0] Using alternative smoothing input (0)
2021-12-05T07:48:10.499Z [EFFECT0(Rainbo...)] Begin playing the effect with priority: 0
2021-12-05T07:48:10.499Z [MUXER0] Priority 0 is now active
2021-12-05T07:48:10.499Z [MUXER0] Set visible priority to 0
2021-12-05T07:48:10.499Z [IMAGETOLED0] Total index number is: 1208. Sparse processing: disabled, image size: 80 x 45, area number: 302
2021-12-05T07:48:10.499Z [SMOOTHING0] Clearing queued colors before: enabling. Smoothing configuration changed: restarting timer.
2021-12-05T07:48:10.500Z [SMOOTHING0] Selecting config (2) => type: Linear, dirMode: false, pause: false, settlingTime: 200ms, interval: 40ms (25Hz), antiFlickTres: 0, antiFlickStep: 0, antiFlickTime: 0
2021-12-05T07:48:10.500Z [SMOOTHING0] Using linear smoothing input (2)
2021-12-05T07:48:10.500Z [HYPERHDR0] New priority[0], previous [245]
2021-12-05T07:48:10.500Z [IMAGETOLED0] (ImageProcessor.cpp:180) set hard led mapping to multicolor_mean
2021-12-05T07:48:10.500Z [IMAGETOLED0] Total index number is: 1208. Sparse processing: disabled, image size: 80 x 45, area number: 302
2021-12-05T07:48:10.540Z [SMOOTHING0] Using linear smoothing procedure (2)
2021-12-05T07:48:12.500Z [EFFECT0(Rainbo...)] The effect quits with priority: 0
2021-12-05T07:48:12.500Z [MUXER0] Removed source priority 0
2021-12-05T07:48:12.500Z [MUXER0] Set visible priority to 245
2021-12-05T07:48:12.500Z [IMAGETOLED0] Total index number is: 34080. Sparse processing: disabled, image size: 480 x 270, area number: 302
2021-12-05T07:48:12.501Z [SMOOTHING0] Clearing queued colors before: enabling. Smoothing configuration changed: restarting timer.
2021-12-05T07:48:12.501Z [SMOOTHING0] Selecting config (0) => type: Alternative, dirMode: false, pause: false, settlingTime: 100ms, interval: 25ms (40Hz), antiFlickTres: 32, antiFlickStep: 5, antiFlickTime: 250
2021-12-05T07:48:12.501Z [SMOOTHING0] Using alternative smoothing input (0)
2021-12-05T07:48:12.501Z [HYPERHDR0] New priority[245], previous [0]
2021-12-05T07:48:12.501Z [IMAGETOLED0] (ImageProcessor.cpp:180) set hard led mapping to multicolor_mean
2021-12-05T07:48:12.501Z [IMAGETOLED0] Total index number is: 34080. Sparse processing: disabled, image size: 480 x 270, area number: 302
2021-12-05T07:48:12.501Z [EFFECTENGINE0] Effect 'Rainbow swirl fast' has finished.
2021-12-05T07:48:12.501Z [EFFECT0(Rainbo...)] Deleting effect named: 'Rainbow swirl fast'
2021-12-05T07:48:12.526Z [SMOOTHING0] Using alternative smoothing procedure (0)
2021-12-05T07:48:14.658Z [WEBSOCKET] (WebSocketClient.cpp:30) New connection from ::ffff:192.168.1.46
2021-12-05T07:48:14.659Z [WEBSOCKET] (JsonAPI.cpp:89) Client '::ffff:192.168.1.46' switch to HyperHDR instance 0
2021-12-05T07:48:14.733Z [DB] Database opened: /home/d023552/.hyperhdr/db/hyperhdr.db
2021-12-05T07:48:14.817Z [WEBSOCKET] (JsonAPI.cpp:1348) log streaming activated for client ::ffff:192.168.1.46
2021-12-05T07:48:35.204Z [SMOOTHING0] Emergency enabling timer. Now timer is active: 1, remaining time to run: -1
2021-12-05T07:48:35.265Z [WEBSOCKET] (JsonAPI.cpp:1357) log streaming deactivated for client ::ffff:192.168.1.46
2021-12-05T07:48:35.798Z [SMOOTHING0] Emergency enabling timer. Now timer is active: 1, remaining time to run: 25
2021-12-05T07:48:40.109Z [MUXER0] Removed source priority 245
2021-12-05T07:48:40.109Z [MUXER0] Set visible priority to 255
2021-12-05T07:48:40.109Z [HYPERHDR0] New priority[255], previous [245]
2021-12-05T07:48:40.109Z [HYPERHDR0] No source left -> switch LED-Device off
2021-12-05T07:48:40.109Z [SMOOTHING0] Clearing queued colors before: disabling
2021-12-05T07:48:40.109Z [LEDDEVICE_wled] (LedDeviceWled.cpp:148)
2021-12-05T07:48:40.110Z [LEDDEVICE] (ProviderRestApi.cpp:152) PUT: [http://wled.fritz.box/json/state] [{"on":false,"live":false}]
2021-12-05T07:48:40.111Z [IMAGETOLED0] (ImageProcessor.cpp:180) set hard led mapping to multicolor_mean
2021-12-05T07:48:40.111Z [COMPONENTREG0] System capture device: disabled
2021-12-05T07:48:40.123Z [X11_SYSTEM:AUTO] Stopped
2021-12-05T07:48:40.235Z [LEDDEVICE] (ProviderRestApi.cpp:191) Reply.httpStatusCode [200]
2021-12-05T07:48:43.178Z [MUXER0] Register new input 'System/SYSTEMGRABBER' with priority 245 as inactive
2021-12-05T07:48:43.178Z [COMPONENTREG0] System capture device: enabled
2021-12-05T07:48:43.178Z [X11_SYSTEM:AUTO] (X11Grabber.cpp:122) init
2021-12-05T07:48:43.179Z [X11_SYSTEM:AUTO] Started
2021-12-05T07:48:48.704Z [WEBSOCKET] (JsonAPI.cpp:1348) log streaming activated for client ::ffff:192.168.1.46

@hkalle
Copy link

hkalle commented Dec 17, 2021

Thanks, Awawa
The fix is working fine in my setup.

awawa-dev added a commit that referenced this issue Feb 23, 2022
* New: Portal version 4 protocol persistent authentication support for Pipewire grabber
* New: Performance information panel in the overview tab
    * New: CPU performance and RAM usage (excluding Apple M1)
    * New: CPU temperature reading (Linux only, when sensor is present)
    * New: Under-voltage detection (Raspberry Pi OS only)
    * New: USB grabber performance
    * New: Instance input mages to LED colors performance
    * New: LED device output performance
* New: Philips Hue automatic connection resumption when the UDP SSL stream is broken
* Fix another LED on/off race condition (network devices that was turned off for a moment could not be turn on again)
* Fix looped communication in the remote tab
* Update MBEDTLS to v3.1.0
* Fix restart issue of X11 software screen grabber (fixes #167)
* Fix memory leaks reported by Valgrind
* Fix inter-thread communication
* Fix LED devices state synchronization
* Windows: switch project and documentation to Visual Studio 2022
* Refactoring: Remove unnecessary 'latch time' in LED devices configuration
chbartsch pushed a commit to chbartsch/HyperHDR that referenced this issue Nov 29, 2022
* New: Portal version 4 protocol persistent authentication support for Pipewire grabber
* New: Performance information panel in the overview tab
    * New: CPU performance and RAM usage (excluding Apple M1)
    * New: CPU temperature reading (Linux only, when sensor is present)
    * New: Under-voltage detection (Raspberry Pi OS only)
    * New: USB grabber performance
    * New: Instance input mages to LED colors performance
    * New: LED device output performance
* New: Philips Hue automatic connection resumption when the UDP SSL stream is broken
* Fix another LED on/off race condition (network devices that was turned off for a moment could not be turn on again)
* Fix looped communication in the remote tab
* Update MBEDTLS to v3.1.0
* Fix restart issue of X11 software screen grabber (fixes awawa-dev#167)
* Fix memory leaks reported by Valgrind
* Fix inter-thread communication
* Fix LED devices state synchronization
* Windows: switch project and documentation to Visual Studio 2022
* Refactoring: Remove unnecessary 'latch time' in LED devices configuration
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants