* Correct JS requestConfig call
* Update requestWriteConfig to new API format
* Add hyperion-light and bare-minimum preset scenarios
* Refactor Python
* Windows add bcrypt until mbedtls is fixed
(https://github.com/Mbed-TLS/mbedtls/pull/9554)
* Corrections
* Use ScreenCaptureKit under macOS 15 and above
* ReSigning macOS package
* Python 3.11.10 test
* Revert "Python 3.11.10 test"
This reverts commit ee921e4f1284fe3d984d9422b24a1c56c6916c21.
* Handle defined exits from python scripts
* Update change.log
* CodeQL findings
---------
Co-authored-by: Paulchen-Panther <16664240+Paulchen-Panther@users.noreply.github.com>
* Refactor config API
* Corrections
* Test Qt 6.8
* Revert "Test Qt 6.8"
This reverts commit eceebec49ecf1a3eda281a0630a9a7577b44ef0a.
* Corrections 2
* Update Changelog
* Add configFilter element for getconfig call
* Do not create errors for DB updates when in read-only mode
* Have configuration migration and validation before Hyperion starts
* Correct Tests
* Corrections
* Add migration items
* Correct windows build
* Ensure that first instance as default one exists
* Remove dependency between AuthManager and SSDPHandler
* Correct typos
* Address CodeQL findings
* Replace CamkeSettings by Presets and provide debug scenarios
* New HomeAssistant LEDDevice
* Fix typos
* Ping Qt for Windows to 6.7 until aqtinstaller is fixed
* Fix HA default port handling
* HA - Update default latchtime and range
* Add HA Wizard and light selection
* Naming consistency
* Fix "Selected Hyperion instance is not running"
* CodeQL findings
* HA - allow to overwrite brightness by HA yes or no
* HA - Support switch off on black
* HA - Add transition time
* Add a DXDI DDA grabber
* Change all names to camel case
* Handle cropping and pixel decimation
* Try more persistently to restart capture after an error occurred.
These can happen when changing resolution, or resuming from sleep.
* Refactor to fix#1671
* Add GUI/NonGUI mode to info page
* Do not show lock config, if in non-UI mode
* Updae Changelog
* Correct includes
* Ensure key member initialization - RGB Channels
* Ensure key member initialization - WebServer
* Update RGBChannels
* Fix initialization order
* Fix key when inserting new logger in LoggerMap,
Prepare logBuffer-JSON snapshot view in LoggerManager,
Increase buffered loglines to 500
* Fix Memory leak in GrabberWrapper
* Fix Memory leak in BlackBorderProcessor
* Fix Memory leak in BlackBorderProcessor
* use ninja generator under macos
* Fix BGEffectHandler destruction
* Fix Mdns code
* Clear list after applying qDeleteAll
* Fix deletion of CecHandler
* Fix memory leak caused by wrong buffer allocation
* Remove extra pixel consistently
* Change mDNS to Qt SmartPointers
* Correct removal
* Fix usage of _width/_height (they are the output resolution, not the screen resolution)
That avoids unnecessary resizing of the output image with every transferFrame call
* Move main non Thread Objects to Smart Pointers
* Refactor Hyperion Daemon unsing smartpointers
* Correction
* Correct typos/ align text
* Fix startGrabberDispmanx
* Fix startGrabberDispmanx
* Address CodeQL finding
* Create Screen grabbers via Template
* Fix typo
* Change way of logging
* Revert change
* Address deprecation warning
* Correct auto screen grabber evaluation
---------
Co-authored-by: Paulchen-Panther <16664240+Paulchen-Panther@users.noreply.github.com>
* Refactor to fix#1671
* Add GUI/NonGUI mode to info page
* Do not show lock config, if in non-UI mode
* Updae Changelog
* Correct includes
* Ensure key member initialization - RGB Channels
* Ensure key member initialization - WebServer
* Update RGBChannels
* Fix initialization order
* Fix key when inserting new logger in LoggerMap,
Prepare logBuffer-JSON snapshot view in LoggerManager,
Increase buffered loglines to 500
* Fix Memory leak in GrabberWrapper
* Fix Memory leak in BlackBorderProcessor
* Fix Memory leak in BlackBorderProcessor
* use ninja generator under macos
* Fix BGEffectHandler destruction
* Fix Mdns code
* Clear list after applying qDeleteAll
* Fix deletion of CecHandler
* Fix memory leak caused by wrong buffer allocation
* Remove extra pixel consistently
* Change mDNS to Qt SmartPointers
* Correct removal
* Fix usage of _width/_height (they are the output resolution, not the screen resolution)
That avoids unnecessary resizing of the output image with every transferFrame call
* Move main non Thread Objects to Smart Pointers
* Revert "Move main non Thread Objects to Smart Pointers"
This reverts commit 26102ca963982e2fbc4ffb8d4db6139f0128a3cc.
* Add missing deletes
* Revert MdnsBrowser chnage
* Revert MdnsBrowser change
* Fix memory leaks related standalone grabber
* Address CodeQL finding
* delete pointer OsxFrameGrabber
---------
Co-authored-by: Paulchen-Panther <16664240+Paulchen-Panther@users.noreply.github.com>
* Refactor to fix#1671
* Add GUI/NonGUI mode to info page
* Do not show lock config, if in non-UI mode
* Updae Changelog
* Correct includes
* Remove unused variable
* use ninja generator under macos
---------
Co-authored-by: Paulchen-Panther <16664240+Paulchen-Panther@users.noreply.github.com>
* Allow to enable/disable suspend & lock event handling
* Fix Windows
* Refactor event handling incl.CEC
* Revert "Auxiliary commit to revert individual files from 0d9a8b8a3a4a09609a339f54c7d8a9384c561282"
This reverts commit 80737d926ad151a07b2493dd1685ed502975cb2e.
* Support Events for Grabbers generically
* Have CECEvent to actions configurable, further clean-ups
* Remove handleEvent from V4L2grabber, as grabber will be stopped on suspend
* Validate that one CEC Event can only trigger one action
* MacOS lock/unlock added
* fast windows fix
* Corrections
* Fix CodeQL findings
* add macos lock/unlock handler
* Migration of CEC-config and have default actions
* Correct target_link_libraries
* Include Foundation
* macOS include AppKit
* Support Scheduled Events, cleanups.
* Fix destructing
* Fix coredump during free
* Consider additional error sceanrio
* Fix missing code
* install desktop icons
* correct bash logic
---------
Co-authored-by: Paulchen-Panther <16664240+Paulchen-Panther@users.noreply.github.com>
* Creating Audio Grabber
Creating Audio Grabber
Creating Audio Grabber.
Successfully began capturing audio in windows. Starting to implement a hard-coded UV Visualizer.
Got Windows DirectSound Implementation working.
Hardcoded basic VU Meter.
Begin working on linux audio grabber implementation.
Finished Linux Draft Implementation.
Minor Mods to windows implementation.
Windows:
- Free memory used by device id.
- Prevent starting audio if the grabber is disabled
- More debug logging
Linux:
- Prevent starting audio if the grabber is disabled
Added strings to english
Removed "custom" from device selection
Made hard-coded visualizer values configurable.
wrote values to imageData with BGR priority to enable configurable values to be set in RGB format.
created logic to support "Automatic" to enable the API to select the default device.
Add language key for audio in "Remote Control" section.
Removed audio configuration for number of channels. This was causing an error with some devices.
Fixed logic to update capture while its active.
Optimizing code .
UI Tweaks
Destructuring.
Fixed build error on linux.
Custom Effects - Clean-ups and Enhancements (#1163)
* Cleanup EffectFileHandler
* Support Custom Effect Schemas and align EffectFileHandler
* Change back to colon prefix for system effects
* WebSockets - Fix error in handling fragmented frames
* Correct missing colon updates
* Update json with image file location for custom gif effects
* Image effect deletion - considere full filename is stored in JSON
* Correct selection lists indentions
Creating Audio Grabber
Creating Audio Grabber
Creating Audio Grabber.
Successfully began capturing audio in windows. Starting to implement a hard-coded UV Visualizer.
Got Windows DirectSound Implementation working.
Hardcoded basic VU Meter.
Begin working on linux audio grabber implementation.
Finished Linux Draft Implementation.
Minor Mods to windows implementation.
Windows:
- Free memory used by device id.
- Prevent starting audio if the grabber is disabled
- More debug logging
Linux:
- Prevent starting audio if the grabber is disabled
Added strings to english
Removed "custom" from device selection
Made hard-coded visualizer values configurable.
wrote values to imageData with BGR priority to enable configurable values to be set in RGB format.
created logic to support "Automatic" to enable the API to select the default device.
Add language key for audio in "Remote Control" section.
Removed audio configuration for number of channels. This was causing an error with some devices.
Fixed logic to update capture while its active.
Optimizing code .
UI Tweaks
Destructuring.
Fixed build error on linux.
Commented setVideoMode from AudioGrabber.
Linux Threading changes.
Implementing new API
Continuing to implement audio into new APIs
Fixed Audio Grabber for DirectSound on Windows
Fixed UI for Audio Grabber Configuration
Default AUDIO to off unless specified.
fixed missing #ifdef for audio grabber.
Added logic to calculate a dynamic multiplier from the signal input.
Updating linux api for discovering devices.
Fixed HTML/JS issues with view.
Fixed NPE in Windows.
Disabled setting thread priority in linux.
updated the schema options check to pass through hidden states and commented the change.
Updated grabber start conditions
Updated Audio grabber to instantiate similar to video grabber
Updated windows grabber to set "started" flag to false when shutting down.
Removed "tryStart" to prevent enabling audio capture unnecessarily.
Fixing instance audio grabber device configuration
Added configurable resolution
Reduced tolerance to 5%
Fixed issue where grabber failed for additional instances when "start" was called multiple times.
Fixed resolution calculation
Change averaging algorithm to prevent overflowing the sum.
Updated logic to stop audio grabber when disabled.
Fix integer casting and rounding.
Restart grabber on configuration change.
Fix missing include/grabber/AudioGrabber.
Disable tolerance.
Added configurable tolerance.
Fixed tolerance algorithm.
reset multiplier on configuration change.
Line Endings
Proposed change and questions/request to fix
implementing more of LordGrey's suggestions.
Fix mode for snd_pcm_open. Latest ALSA uses SND_PCM_NONBLOCK instead of SND_PCM_OPEN_NONBLOCK
defaulted multiplier to 0 "auto"
defaulted tolerance to 20%
changed 100 to 100.0 for pixel value percentage calculation to fix value from being 0.
missed a 100 as a double so precision isn't lost during math operation.
Fix Windows grabber and further cleanups
Enable Audio grabbing in standard build
Remove empty methods
Fix audio capture priority setting
Remove unused code
Clean-up default config
Allow additional json-editor attributes
Allow multiple effects and resetting to defaults
Correct default values
Allow to build for Qt < 5.14
Update CodeQL build dependency
Update build dependencies
Remove effect1 placeholder
* Renamed uvMeter to VU Meter (Volume Unit)
- Fixed issues flagged by code scanning bot.
* Moved stop call into destructor of implementing class.
* Removed commented linux audio channel configuration logic.
---------
Co-authored-by: Michael Rochelle <michael@j2inn.com>
* Dominant Color and Mean Color Squared
* Workaround - Suppress empty LED updates
* Add missing text
* Dominant Colors advanced
* Test with fixed initial colors
* Test with fixed initial colors
* Support new processing values via API
* ImageToLED - Add reduced pixel processing, make dominant color advanced configurable
* Updates on Grabber fps setting
* ImageToLedMap - Remove maptype and update test
* Update dynamic cluster array allocation
* WLED - Fix empty segment element in DB
* WLED - Fix to not overwrite on state when not isStayOnAfterStreaming
* Refactor ProviderRestApi, increase default timeout
* Fix Smoothing - Fix empty updates, consider smoothing configs for effects
* UI - Fix not removed priority
* Add missing header and code updates
* setRedirectPolicy was only introduced in Qt 5.9
* Adalight - Align to HyperSerial v9.0.0
* HyperSerial Hyperion with awa protocol v8.0.0
* Correct line-endings
* WLED segment streaming support
* Address CodeQL findings
* WLED - Remove that interim color is shown when WLED is powered off
* Allow LEDDevice to stay on after streaming
* Apply stayOn on segment streamed to
* Fix LED-Matrix Layout: Add Cabling direction selection element again
* Add Suspend/Resume support
* Support Suspend/Resume/Restart via API, UI and Systray
* Support screen lock/unlock scenario
* Handle idle scenario
* Align with fix for #1368
* Update Windows build
* Refactor SuspendHandler to maintain state
* Do not start BG-Effect, if system goes into suspend mode
* Correct Idle and Resume interaction
* Smoothing Remove ouputrate as duplicate to update frequency
* Serial LDEDDevices -Increase writeBlack to overcome issues on high baud rates
* Serial LED-Devices - Support device feedback, show statistics provided by HyperSerial
* Fix - Update Color Calibration on Remote Control when settings saved
* Serial LED-Devices - Support device feedback, show statistics provided by HyperSerial