1207 Commits

Author SHA1 Message Date
LordGrey
121abce408
Fix #1824 (#1825) 2025-01-15 18:39:13 +01:00
LordGrey
0aa7df47d3
Replace WebSocket implementation (#1819) 2024-12-29 16:00:29 +01:00
LordGrey
d16142d28e
Re-add Temperture adjustment (#1710)
* Add Temperature adjustment

* Add Temperature adjustment - add missing cmake updates

* Add missing ENABLE_MDNS guards

* Reapply temperature on JSONAPI

* Integrate color temperature into RGB transformations

* Fix imagestream update

* fix cast

* Cleanups

* Windows Fix

* Fix inner loop

* Simplify

* Reapply default temperature setting

* Fix adjustments calculation

* Updates
2024-12-28 20:45:10 +01:00
LordGrey
bc3ea9de42
Handle Brightness & Black (#1818) 2024-12-28 16:49:11 +01:00
LordGrey
179ee316d0
Remove max LED number constraint from Matrix layout (#1805) 2024-12-09 06:21:53 +01:00
LordGrey
e8e102c25d
Provide more details on pinned certificate files (#1812) 2024-12-09 06:21:24 +01:00
LordGrey
733aa662bf
Refactor Python for 3.12 integration (#1807)
* 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>
2024-12-01 17:08:25 +01:00
LordGrey
6e3357ea2d
Support NV12 format on Flatbuffer (#1806) 2024-12-01 17:08:00 +01:00
LordGrey
bc1bfbc83a
Fix Skydimo - populate outbut buffer (#1802) 2024-11-17 13:22:54 +01:00
LordGrey
27f74af4e3
Skydimo as own device (#1800)
* Skydimo as own device type

* Skydimo updates
2024-11-15 18:37:17 +01:00
LordGrey
5cb3076698
Config refactoring fixes (#1799)
* Correct JS requestConfig call

* Update requestWriteConfig to new API format

* Add hyperion-light and bare-minimum preset scenarios
2024-11-15 15:03:33 +01:00
LordGrey
ecceb4e7ae
Refactor Settings DB and Handling (#1786)
* 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
2024-09-30 22:03:13 +02:00
LordGrey
4f1b95ec83
Add Home Assistant Lights support (#1763)
* 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
2024-08-25 17:34:27 +02:00
LordGrey
6c3fc8521a
Skydimo LedDevice support (#1765)
* Support Skydimo devices

* Temporarily downgrade CMake to 3.28.3 (CodeQL)
2024-07-16 19:46:43 +02:00
Thinner77
719c844dda
add some clarifying comments (#1754) 2024-06-16 18:01:33 +02:00
Paulchen-Panther
c2bd875bc8
Remove Windows C++ redist hack
This was a hack workaround for the broken azure runner images: https://github.com/actions/runner-images/issues/10004
2024-06-15 13:02:27 +02:00
David Sansome
0bdf865f5c
DDA grabber: Set a 500ms timeout when waiting for a new frame (#1753)
* 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.

* Set a 500ms timeout when acquiring a frame.

The API won't give us a new frame if nothing on the screen has changed,
so an INFINITE timeout means we'll wait forever in this case, and
eventually the LED connection will timeout.

---------

Co-authored-by: LordGrey <48840279+Lord-Grey@users.noreply.github.com>
2024-06-14 20:40:50 +02:00
Thinner77
7f90637a2d
MF-grabber: Add support for bottom-up image handling (#1752)
* prepare bottom-up image handling

* add default stride handling, code cleaning

* fix code

* move whole logic to MF-grabber

* minor fix

---------

Co-authored-by: Thinner77 <none>
2024-06-14 20:40:17 +02:00
LordGrey
943f9e22f3
Update external modules (#1755)
* Update flatbuffers to 24.3.25

* Update protobuf to 27.1

* Update mbedtls to 3.6.0

* Change source of Vulkan SDK

* Readd directx-sdk

* Windows Fix?

* Update qt5_6.yml

* Typo

* Revert "Update qt5_6.yml"

This reverts commit cf8db993ec9b9d18b9054f992c77fe687ba8c412.

---------

Co-authored-by: Paulchen-Panther <16664240+Paulchen-Panther@users.noreply.github.com>
2024-06-14 20:39:27 +02:00
LordGrey
15c305b8f2
RGB24 and BGR24 cleanup (#1749)
* RGB24 and BGR24 cleanup

* Fix MF-Grabber

* Add BGR32 to V42L Grabber

* Add BGR32 to V42L Grabber

* Add BGR16 to V42L

* Revert "Add BGR16 to V42L"

This reverts commit 42975380f47a30a09f06d7dee7440b64b93aa305.
2024-06-01 20:26:20 +02:00
LordGrey
76fff98f5c
Implement ftdi led device - 2 (#1746) 2024-05-31 23:08:13 +02:00
Thinner77
897e4aac8a
Fix V4L2 BGR24 handling (#1748) 2024-05-30 22:30:29 +02:00
David Sansome
8c303c8b9c
Windows: Add a DDA grabber for much better performance (#1745)
* 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.
2024-05-30 13:39:46 +02:00
Thinner77
5bcbe599d3
Fix flipmode for BGR24 special handling (#1739) 2024-05-24 17:57:10 +02:00
Thinner77
bde5d156a9
faster imageresampler (#1744) 2024-05-24 09:13:33 +02:00
LordGrey
e6714b21f9
Fix Philip Hue APIv2 support without Entertainment group defined (#1743) 2024-05-21 19:37:43 +02:00
LordGrey
4a5b0b6bf2
Fix #1688 - Fragmented http-Headers (#1741) 2024-05-18 09:14:30 +02:00
Thinner77
f6cc92606c
Change confusing logic (#1731)
* Change confusing logic

* Change confusing logic #2

* revert indent

---------

Co-authored-by: Thinner77 <none>
2024-05-13 19:31:51 +02:00
LordGrey
cf287f5adb
Refactor Hyperion JSON-API (#1727) 2024-05-08 22:06:32 +02:00
LordGrey
aca757138e
Nanoleaf Updates (#1724)
* Add new devices

* Do not restore ExtControl state
2024-04-16 21:57:51 +02:00
LordGrey
d5438acbf4
Fix Cross Site Scripting Vulnerability 1 (#1720) 2024-04-02 21:44:46 +02:00
LordGrey
86d08823a8
Add workaround for issue #1692 (#1695) 2024-03-30 15:44:18 +01:00
LordGrey
806206ec01
Fix #1714 (#1717) 2024-03-15 20:23:53 +01:00
LordGrey
fedb409157
Matrix Layout enhancements (#1701)
* Support gaps on Matrix Layout

* Ensure BlackBorder objects are initialised

* Update Changelog

* Fix automated semicolon insertion

* Fix automated semicolon insertion

* Remove SPI activation from post install script (#1708)
2024-03-14 21:29:15 +01:00
LordGrey
31df065c0f
Start SmartPointers (#1679)
* 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>
2024-02-25 17:35:39 +01:00
LordGrey
05d24b99c4
Fix Memory leaks (#1678)
* 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>
2024-01-13 17:04:45 +01:00
LordGrey
cdd59ffc87
Fix #1671 (#1672)
* 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>
2024-01-03 19:43:46 +01:00
LordGrey
0fce43840c
Corrections (#1662)
* Address "SyntaxWarning: invalid escape sequence"

* Correcttypo for CEC Blue button

* Fix enablement when already open

* Icons path corrected

* Correct path and simplify command

* Have enum class generalised

* Address compile warnings

* Update tinkerforce led_strip

* Address compiler waring

* Fix Install/Uninstall desktop- and icon file handling

* Address "fatal: detected dubious ownership in repository"

* platform fix

* Test  "fatal: detected dubious ownership in repository"

* Update "fatal: detected dubious ownership in repository"

* Update to Protobuf 25.1

* Update cmds with sudo

* Update SEDU default baud rates

* Replace deprecated Py_NoSiteFlag

* Correct default config

---------

Co-authored-by: Paulchen-Panther <16664240+Paulchen-Panther@users.noreply.github.com>
2023-12-03 21:23:31 +01:00
LordGrey
a1f0821f33
Introduce Event Services (#1653)
* 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>
2023-11-27 09:06:43 +01:00
LordGrey
2e0cc9cfa8
Improvements (#1658)
* Restart Servial Device, if write error occurred.

* Fix typos

* Fix FOUND_USER command

* Use SUDO_USER in postinst

* Align install_pr with new package names

* Package named arm64 instead of aarch64

* Update Change log

* Fix to have the architecture resolved

* All tls plugin directory for Qt6

---------

Co-authored-by: Paulchen-Panther <16664240+Paulchen-Panther@users.noreply.github.com>
2023-11-23 20:51:49 +01:00
Paulchen-Panther
91270966f9
Refactor/Create APT/DNF Repository (#1648) 2023-11-16 21:05:56 +01:00
LordGrey
27027b224c
Fix self-signed certificate handling (#1649) 2023-10-29 21:13:34 +01:00
LordGrey
b73e9f4996
Qt 6.7 (#1650)
* Do not validate values for options without value

* Clean-up

* ws281x include files workaround

* Revert "ws281x include files workaround"

This reverts commit 1b983087183e3c563a191edd34a318cfd0cdace1.

* Use https://github.com/hyperion-project/rpi_ws281x while fix is applied in original repository
2023-10-29 21:12:59 +01:00
LordGrey
a5625cf984
Upward version compatability (#1639)
* Fix macOS build

* Update minimum cmake version

* Correct compile errorswith Qt6.7

* Update minimum cmake version (2)

* Use C++17

* Correct compile errors with Qt6.7

* Replace unsupported Lambda UniqueConnection

* Support UTF-8 Output on console

* Update general page

* Fix Matrix Effect

* Install PR relative to current path

* Additional update

* Correct compile errors with Qt6.7 after master merge

* Add language - Hebrew

* Consolidate Changelog
2023-10-15 21:27:21 +02:00
LordGrey
b1e68a3572
Nanoleaf (#1647)
* Support Philips Hue APIv2 and refactoring

* Fix MDNSBrower - if timeout during host resolvment occurs

* Hue API v2 - Migrate database

* Fix macOS build

* Handle network timeout before any other error

* Address CodeQL findings

* Clean-up and Fixes

* Only getProperties, if username is available

* Option to layout by entertainment area center

* Fix Wizard

* Fix Nanoleaf, add user auth token wizard

* Nanoleaf fixes and enhancements

* Consider rotated panel layouts

* Corrections

* Layout corrections and filter for non LED panels

* Add LED test effect lightening up LEDs in sequence

* Align rotation value to 15 degree steps

* Align rotation value to 15 degree steps

* Skip non LED panels

* Fix Rotation and refactoring

---------

Co-authored-by: Paulchen-Panther <16664240+Paulchen-Panther@users.noreply.github.com>
2023-10-15 17:04:51 +02:00
LordGrey
cd22d4454d
Philips Hue APIv2 support (#1637)
* Support Philips Hue APIv2 and refactoring

* Fix MDNSBrower - if timeout during host resolvment occurs

* Hue API v2 - Migrate database

* Fix macOS build

* Handle network timeout before any other error

* Address CodeQL findings

* Clean-up and Fixes

* Only getProperties, if username is available

* Option to layout by entertainment area center

* Fix Wizard

---------

Co-authored-by: Paulchen-Panther <16664240+Paulchen-Panther@users.noreply.github.com>
2023-10-03 20:33:11 +02:00
LordGrey
08dc59c885
Fix #1630 - Audio Capture settings are ignored (#1640)
* Fix macOS build

* Update minimum cmake version

* Correct compile errorswith Qt6.7

* Update minimum cmake version (2)

* Use C++17

* Correct compile errors with Qt6.7

* Replace unsupported Lambda UniqueConnection

* Support UTF-8 Output on console

* Fix #1630
2023-10-01 21:56:53 +02:00
LordGrey
a5bb7e905b
Fix non image updates ignore blacklisted leds (#1635)
* Fix #1634

* Refactor to process blacklisted LEDs with less resources
2023-08-26 11:12:43 +02:00
LordGrey
d1879c2e39
ws281x - Update logic to identify is user is admin (#1623) 2023-08-03 22:40:25 +02:00
LordGrey
42c98da470
Update platforms (#1617)
* Remove stretch, bionic, add lunar

* Fix CEC CMakeList for Ubuntu 23.04

* Fix git version identification when run in docker and local code

* Update SYSTEM_LIBS_SKIP list

* Updates after Ubuntu Server 20.04, latest PI OS Light and CoreElec 20

* Update year

* Skip List working with Fedora38 Server (x86) and libreElec 11 (x86)

* Update platform tag handling

* Show error, if ssl lib cannot be found

* Update supported platforms

* Script to install selected Pull Requests

* Fix misspelled explanation + improve description

* Correct run-id evaluation

* Support python3 and python2

* Support to copy existing config for PR testing
2023-07-21 16:45:37 +02:00