Commit Graph

402 Commits

Author SHA1 Message Date
Markus
c135d91986
Media Foundation/V4L2 grabber ... (#1119)
* - New Media Foundation grabber
- JsonAPI available grabber fix
- commented json config removed

* Added libjpeg-turbo to dependencies

* Fix OSX build
Removed Azure Pipelines from build scripts

* Remove Platform from Dashboard

* Correct Grabber Namings

* Grabber UI improvements, generic JSONEditor Selection Update

* Active grabber fix

* Stop Framebuffer grabber on failure

* - Image format NV12 and I420 added
- Flip mode
- Scaling factor for MJPEG
- VSCode (compile before run)
- CI (push) dependency libjpeg-turbo added

* Refactor MediaFoundation (Part 1)

* Remove QDebug output

* Added image flipping ability to MF Grabber

* fix issue 1160

* -Reload MF Grabber only once per WebUI update
- Cleanup

* Improvements

* - Set 'Software Frame Decimation' begin to 0
- Removed grabber specific device name from Log
- Keep pixel format when switching resolution
- Display 'Flip mode' correct in Log
- BGR24 images always flipped

* Refactor MediaFoundation (Part 2)

* Refactor V4L2 grabber (part 1) (#62)

* Media Foundation grabber adapted to V4L2 change

* Enable Media Foundation grabber on windows

* Have fps as int, fix height typo

* Added video standards to JsonAPI output

* Error handling in source reader improved

* Fix "Frame to small" error

* Discovery VideoSources and Dynamically Update Editor

* Hide all element when no video grabber discovered, upate naming

* Do not show unsupported grabbers

* Copy Log to Clipboard

* Update Grabber schema and Defaults

* Update access levels and validate crop ranges

* Height and width in Qt grabber corrected

* Correct formatting

* Untabify

* Global component states across instances

* Components divided on the dashboard

* refactor

* Fix Merge-issues

* Database migration aligning with updated grabber model

* Align Grabber.js with new utility functions

* Allow editor-validation for enum-lists

* Handle "Show Explainations scenario" correctly

* Grabber - Ensure save is only possible on valid content

* Dashboard update + fix GlobalSignal connection

* Ensure default database is populated with current release

* Correct grabber4L2 access level

* Display Signal detection area in preview

* Write Hyperion version into default config on compiling.

* Create defaultconfig.json dynamically

* WebUI changes

* Correct grabber config look-ups

* Refactor i18n language loading

* Fix en.json

* Split global capture from instance capture config

* Update grabber default values

* Standalone grabber: Add --debug switch

* Enhance showInputOptionsForKey for multiple keys

* Add grabber instance link to system grabber config

* Only show signal detection area, if grabber is enabled

* Always show Active element on grabber page

* Remote control - Only display gabber status, if global grabber is enabled

* WebUI optimization (thx to @mkcologne)
Start Grabber only when global settings are enabled
Fixed an issue in the WebUI preview

* V4L2/MF changes

* Jsoneditor, Correct translation for default values

* Refactor LED-Device handling in UI and make element naming consistent

* MF Discovery extended

* Fix LGTM finding

* Support Grabber Bri, Hue, Sat and Con in UI, plus their defaults

* Concider Access level for item filtering

* Concider Access level for item filtering

* Revert "Concider Access level for item filtering"

This reverts commit 5b0ce3c0f2.

* Disable fpsSoftwareDecimation for framegrabber, as not supported yet

* JSON-Editor- Add updated schema for validation on dynamic elements

* added V4L2 color IDs

* LGTM findings fix

* destroy SR callback only on exit

* Grabber.js - Hide elements not supported by platform

* Fixed freezing start effect

* Grabber UI - Hardware controls - Show current values and allow to reset to defaults

* Grabber - Discovery - Add current values to properties

* Small things

* Clean-up Effects and have ENDLESS consistently defined

* Fix on/off/on priority during startup, by initializing _prevVisComp in line with background priority

* Add missing translation mappings

* DirectX Grabber reactivated/ QT Grabber size decimation fixed

* typo in push-master workflow

* Use PreciseTimer for Grabber to ensure stable FPS timing

* Set default Screencapture rate consistently

* Fix libjpeg-turbo download

* Remove Zero character from file

* docker-compile Add PLATFORM parameter, only copy output file after successful compile

* Framebuffer, Dispmanx, OSX, AML Grabber discovery, various clean-up and consistencies across grabbers

* Fix merge problem - on docker-compile Add PLATFORM parameter, only copy output file after successful compile

* Fix definition

* OSXFRameGrabber - Revert cast

* Clean-ups nach Feedback

* Disable certain libraries when building armlogic via standard stretch image as developer

* Add CEC availability to ServerInfo to have it platform independent

* Grabber UI - Fix problem that crop values are not populated when refining editor rage

* Preserve value when updating json-editor range

* LEDVisualisation - Clear image when source changes

* Fix - Preserve value when updating json-editor range

* LEDVisualisation - Clear image when no component is active

* Allow to have password handled by Password-Manager (#1263)

* Update default signal detection area to green assuming rainbow grabber

* LED Visualisation - Handle empty priority update

* Fix yuv420 in v4l2 grabber

* V4L2-Grabber discovery - Only report grabbers with valid video input information

* Grabber - Update static variables to have them working in release build

* LED Visualisation - ClearImage when no priorities

* LED Visualisation - Fix Logo resizing issue

* LED Visualisation - Have nearly black background and negative logo

Co-authored-by: LordGrey <lordgrey.emmel@gmail.com>
Co-authored-by: LordGrey <48840279+Lord-Grey@users.noreply.github.com>
2021-07-14 20:48:33 +02:00
LordGrey
4c2806f966
Serial-Devices - Add udev support (#1246) 2021-05-23 19:11:05 +02:00
LordGrey
feec395756
Minor Updates (#1241) 2021-05-16 18:33:24 +02:00
Paulchen Panther
17d4406deb
Refactor PR #957 (#1234) 2021-05-01 17:00:44 +02:00
Daniel Schwierzeck
724d90bfdb
Initial support for Hue Play Gradient Lightstrip (#1187)
Model ID is LCX001. Add as Gamut C device.
2021-04-25 17:22:16 +02:00
LordGrey
7eeb740177
Dynamic Device Selection/Configuration (#1164) 2021-04-24 19:37:29 +02:00
LordGrey
41af5c1b9e
LEDDevices - WLED enhancements and minor fixes (#1204)
* Yeelight minor updates

* Add Timeout to REST API

* LEDDevice - Correct storeState

* Add WaitTime function

* Always show HW-LEDCount for configuration

* WLED - New features ("live" support, storing state and identification)

* Yeelight - Refactoring

* Cololight - Refactoring

* Karate - getProperties Support

* Atmo - getProperties Support

* AtmoOrb - refactoring

* Nanoleaf - Refactoring, New "Shapes" considerations

* PhilipHue - Minor corrections

* Update Changelog
2021-03-19 22:52:04 +01:00
mlaurijsse
68d06f14fe
Correct total packet count in tpm2net implementation (fix #1127) (#1128)
* Fixed calculation for _tpm2TotalPackets
2021-02-23 20:42:54 +01:00
Gerion Entrup
74a6795991
Extend logging and error reporting (#1149)
- ProviderRs232: Be more verbose about correct device in error case
Rearrange Debug Information and additionalclean-ups

- Webconfig: better error description, if Kodi is not found
2021-02-23 20:40:20 +01:00
Chris Browet
f843b5a046
FIX: [hue] XY == 0 => bri = 0 (#1124) 2021-02-23 13:59:40 +01:00
LordGrey
86ab15d18c
Cololight Improvements (#1120)
* Avoid issue with long running identify calls
* Strip provides number of LEDs now
* Consider that Strip was cut by user
2021-01-23 17:26:59 +01:00
ChR-iSz
8a028328ce
Add spidev1.0 and spidev1.1 device for Raspberry Pi WS2801 schema (#1112) 2020-12-23 23:47:06 +01:00
LordGrey
a0311bd8b5
Update schema-philipshue.json
Allow to switchOffOnBlack for Classic and Entertainment-API
2020-11-17 17:51:13 +01:00
LordGrey
efc2046ab5
Various Cleanups (#1075)
* LedDevice - Address clang findings

* Fix Windows Warnings

* Ensure newInput is initialised

* Clean-up unused elements for Plaform Capture

* Fix initialization problem and spellings

* Address clang findings and spelling corrections

* LedDevice clean-ups

* Cleanups

* Align that getLedCount is int

* Have "display" as default for Grabbers

* Fix config during start-up for missing elements

* Framegrabber Clean-up - Remove non supported grabbers from selection, filter valid options

* Typo

* Framegrabber.json - Fix property numbering

* Preselect active Grabbertype

* Sort Grabbernames

* Align options with selected element

* Fix deletion of pointer to incomplete type 'BonjourBrowserWrapper'

* Address macOS compile warnings

* Have default layout = 1 LED only to avoid errors as in #673

* Address lgtm findings

* Address finding that params passed to LedDevice discovery were not considered

* Cleanups after merging with latest master

* Update Changelog

* Address lgtm findings

* Fix comment

* Test Fix

* Fix Python Warning

* Handle Dummy Device assignment correctly

* Address delete called on non-final 'commandline::Option' that has virtual functions but non-virtual destructor

* Correct that QTimer.start accepts only int

* Have Release Python GIL & reset threat state chnage downward compatible

* Correct format specifier

* LedDevice - add assertions

* Readonly DB - Fix merge issue

* Smoothing - Fix wrong defaults

* LedDevice - correct assertion

* Show smoothing config set# in debug and related values.

* Suppress error on windows, if default file is "/dev/null"

* CMAKE - Allow to define QT_BASE_DIR dynamically via environment-variable

* Ignore Visual Studio specific files

Co-authored-by: Paulchen Panther <16664240+Paulchen-Panther@users.noreply.github.com>
2020-11-14 17:58:56 +01:00
LordGrey
56f45a4930
Fix hostname/domain split (#1079) 2020-11-14 16:35:55 +01:00
LordGrey
83455441fa
New LED Device - Cololight (#1070) 2020-11-01 21:56:19 +01:00
Chris Browet
f7ccf9d0da
FIX: [hue] proper save state (#1014) 2020-11-01 19:14:09 +01:00
Awawa
9e4c7af5e9
Fix for sk9822 frame sufix (#1042) 2020-11-01 19:12:25 +01:00
LordGrey
7e370b3d8b
Fix typos (#1051)
* Fix typo in handlePriorityChangedLedDevice

* Typo

* Correct description

* Correct LedDeviceTemplate
2020-10-19 10:54:41 +02:00
LordGrey
db1dae45d2
Fix #1015 - Fix Lightpack / Remove Multi-Lightpack (#1049) 2020-10-18 19:08:54 +02:00
Demian Kellermann
8f991001c1
Allow 8-LED configuration for KarateLight (#1037) 2020-10-18 18:04:57 +02:00
Paulchen Panther
aa465c018c
Fix issues #1022, #1019, #997, #993, #992, #976, #969, #964, #980 (#1036) 2020-10-18 17:05:07 +02:00
LordGrey
5d5b24979d
Fix #1007 - LED's retain last state after clearing a source (#1008)
* Save BLACK as lastLedColor during writeBlack

* Remove debug statement overhead

* Re-Add typecasting to ensure readable output

* Revert "New language support: Russian and Chinese (simplified)"

This reverts commit 5c95fab894.

* Ignore TemporaryError
2020-09-25 20:33:11 +02:00
The-Master777
6c68454bea
Support SK9822 type LEDs with adaptive brightness control via SPI (#1017)
* Support SK9822 type LEDs with adaptive brightness control via SPI

* SK9822 - minor refactorings
2020-09-25 19:34:00 +02:00
TPmodding
f11885fd8b
lgtm fixes (#1020) 2020-09-25 17:43:46 +02:00
LordGrey
7a685185f4
AtmoOrb Fix (#988)
* AtmoOrb UdpSocket-Bind Fix

* Cleanup and update defaults (to work via PowerLan)

* Cleanup and update defaults (to work via PowerLan)

* AtmoOrb identification support, small updates

* AtmoOrb discovery & identification support, fixes and stability updates

* Small clean-ups

* Type fix

* Add missing include

* Adalight - Update default config and levels

* Update Atmoorb sketch

* Yeelight - Update default value
2020-09-14 17:20:00 +02:00
LordGrey
4aabe175cd
Differentiate between LED-Device Enable/Disable and Switch On/Off (#960)
* Switch Off devices, when no input source

* Realign Enable/SwitchOn, Disable/SwitchOff

* Align to updated LedDevice-Flow

* Remove debug statements slipped in

* Send last color update after enabling again

* Fix WLED getProperties API call

* Remove unused signals

* LedDevice process flow documentation

* LedDevice process flow documentation

Co-authored-by: Paulchen Panther <16664240+Paulchen-Panther@users.noreply.github.com>
2020-09-14 17:19:14 +02:00
Murat Seker
120a563ca0
Merge pull request #987 from m-seker/refactor/cleanup
Cleanup
2020-09-07 14:38:47 +02:00
LordGrey
31b5be39b5
Merge pull request #961 from Lord-Grey/Improve_errohandling
Improve UDP-Device Error handling
2020-09-05 15:14:22 +02:00
LordGrey
7f676a8a4a Fix #903 - Adalight 2020-09-03 19:24:05 +02:00
Murat
0a2961a3b4 Cleanup 2020-08-31 22:07:12 +02:00
Murat Seker
bc57a45089
Merge branch 'master' into refactor/led_device 2020-08-23 21:02:25 +02:00
LordGrey
16353a5906 Improve UDP-Error handling 2020-08-09 17:43:23 +02:00
Murat
4a688b932a Const correctness, override keyword, a bunch of stuff.. 2020-08-08 23:12:43 +02:00
Murat Seker
c00d8e62fb
Pass primitive types by value (#935) 2020-08-08 13:09:15 +02:00
Murat Seker
5758b19cbc
Fix some LGTM warnings (#949) 2020-08-08 12:59:40 +02:00
Murat
dd2d5e4b40 General tidy up 2020-08-08 00:21:19 +02:00
Murat Seker
031b9a6b7c
refactor: Modernize Qt connections (#914) 2020-08-02 22:32:00 +02:00
Murat Seker
8824e69986
Fix some more threading errors (#911) 2020-08-02 10:44:42 +02:00
Murat Seker
d4b4158cb7
Fix logger and led colors (#906) 2020-07-27 20:00:36 +02:00
LordGrey
7389068a66
LED Device Features, Fixes and Refactoring (Resubmit PR855) (#875)
* Refactor LedDevices - Initial version
* Small renamings
* Add WLED as own device
* Lpd8806 Remove open() method
* remove dependency on Qt 5.10
* Lpd8806 Remove open() method
* Update WS281x
* Update WS2812SPI
* Add writeBlack for WLED powerOff
* WLED remove extra bracket
* Allow different Nanoleaf panel numbering sequence (Feature req.#827)
* build(deps): bump websocket-extensions from 0.1.3 to 0.1.4 in /docs (#826)
* Bumps [websocket-extensions](https://github.com/faye/websocket-extensions-node) from 0.1.3 to 0.1.4.
  - [Release notes](https://github.com/faye/websocket-extensions-node/releases)
  - [Changelog](https://github.com/faye/websocket-extensions-node/blob/master/CHANGELOG.md)
  - [Commits](https://github.com/faye/websocket-extensions-node/compare/0.1.3...0.1.4)
* Fix typos
* Nanoleaf clean-up
* Yeelight support, generalize wizard elements
* Update Yeelight to handle quota in music mode
* Yeelight extend rage for extraTimeDarkness for testing
* Clean-up - Add commentary, Remove development debug statements
* Fix brightnessSwitchOffOnMinimum typo and default value
* Yeelight support restoreOriginalState, additional Fixes
* WLED - Remove UDP-Port, as it is not configurable
* Fix merging issue
* Remove QHostAddress::operator=(const QString&)' is deprecated
* Windows compile errors and (Qt 5.15 deprecation) warnings
* Fix order includes
* LedDeviceFile Support Qt5.7 and greater
* Windows compatibility and other Fixes
* Fix Qt Version compatability
* Rs232 - Resolve portname from unix /dev/ style, fix DMX sub-type support
* Disable WLED Wizard Button (until Wizard is available)
* Yeelight updates
* Add wrong log-type as per #505
* Fixes and Clean-up after clang-tidy report
* Fix udpe131 not enabled for generated CID
* Change timer into dynamic for Qt Thread-Affinity
* Hue clean-up and diyHue workaround
* Updates after review feedback by m-seker
* Add "chrono" includes
2020-07-12 20:27:56 +02:00
Murat Seker
3b48d8c9d6
Dump stack trace on crash (Implement #849) (#870)
* Print stack trace on crash

* Printing stack trace is fully functional except for WIN32

* Minor fixes

* Minor fixes
2020-07-12 18:27:24 +02:00
Murat Seker
69561aea9d
Fix some leaks (#863) 2020-07-12 09:22:05 +02:00
Murat Seker
138b7d9c94
Random cleanup (#861)
Co-authored-by: Seker <murat.seker@barco.com>
2020-07-12 09:19:59 +02:00
Murat Seker
485beab4f3
refactor: show thread names in GDB for better debugging (#848) 2020-06-28 23:43:45 +02:00
LordGrey
bfb50b8d91
refactor: Address (Windows) compile warnings (#840)
* Windows compile errors and (Qt 5.15 deprecation) warnings

* Usability - Enable/Disable Instance button

Co-authored-by: brindosch <edeltraud70@gmx.de>
2020-06-28 23:05:32 +02:00
heikobihr
e365a2839d
fix: Windows serialport detection (fix #836) (#837)
* use QSerialPortInfo do detect presence of a serial port (fix #836)

* checking for existence of device file does not work on windows
* instead: construct QSerialPortInfo from device name and check, if it is not null
  When constructing QSerialPortInfo from device name, this constructor finds the
  relevant serial port among the available ones according to the port name name,
  and constructs the serial port info instance for that port.
  (https://doc.qt.io/qt-5/qserialportinfo.html#QSerialPortInfo-2)

* serial port: set device in error with a failure text, if device name is invalid

Co-authored-by: heiko <heiko@bihr.internal>
2020-06-28 22:45:43 +02:00
LordGrey
e30a9d263d Nanoleaf Feature Request #827 2020-06-12 11:16:39 +02:00
LordGrey
7d354aa72d Fix LedDeviceLpd8806 2020-06-11 23:10:22 +02:00
LordGrey
55253b5322
fix: Rewrite-/LatchTime LedDevice definitions (#785) (#799)
* Fix Rewrite/Latch Time

* dependencies can now be specified in the schema

Signed-off-by: Paulchen-Panther <Paulchen-Panter@protonmail.com>

* dependencies can now be specified in the schema

Signed-off-by: Paulchen-Panther <Paulchen-Panter@protonmail.com>

* correct default config

Signed-off-by: Paulchen-Panther <Paulchen-Panter@protonmail.com>

* dependencies part 2

Signed-off-by: Paulchen-Panther <Paulchen-Panter@protonmail.com>

* Update README.md

* build: Update Windows to Qt5.15 (#798)

* Update compile howto

- to qt5.15
- minimal install overhead
- sync with vscode and cmake

* Update docs with more input

gh actions windows: Qt5.15 and msvc2019

* fix: Azure build

* feat: Add Trapezoid to LED Layout (#791)

* Update schema-ledConfig.json

extend schema with corner points (vertcal and horizontal values in percent)

* Update conf_leds.html

input fields for corner points

* Update content_leds.js

add corner values and calculation of led rows

* Update de.json

german title for corners

* CHanges 26.12.2019 Correction and PowerOff add

* GrabberFix PiCam

* VType as QString

* Unused variable deletet

* Missing new paramneters for GrabberFix

* Error json

* JSon error by user

* Crosscompile SutnikElf frok

* Warning unused variable

* Revert "Crosscompile SutnikElf frok"

This reverts commit 443fe80090.

* Fixing a linting error

* Adding Grabber Override Names

* Adding more Grabber Fix translations

* Missed one

* remove V4L2 Grabber Fix and Power Button from Dashboard

Signed-off-by: Paulchen-Panther <Paulchen-Panter@protonmail.com>

* Setting some limits to the trapezoid

Co-authored-by: SputnikElf <58911932+SputnikElf@users.noreply.github.com>
Co-authored-by: SputnikElf <sputnikelf@gmx.de>
Co-authored-by: Paulchen-Panther <Paulchen-Panter@protonmail.com>

* add Hue EntertainmentAPI + Forwarder & other Fixes (#592)

* whitespaces + typo fixes

* JS / LGTM fixes

* SSDP Handler crash fix

* MessageForwarder handlePriorityChanges Slave fixes

* use aboutToQuit Signal

* complete rewriten Hue Entertainment API structure
combined Philips Hue and Entertainment API
with new MbedTLS based SSL UDP Provider

* add required cross-compile submodules

* logical rebuild fn: initLeds, setLights + new logs
-more detailed checks and error handling inside iniLeds and setLights
- logical script procedure before ProviderUdpSSL init
- first steps for multiple ProviderUdpSSL usage
- better fallback support to old RestAPI, if entertainment api is not supported
- just 4 u LordGrey: new log fn for cosmetic config outputs ;)

* add OSX CompileHowTo - undo from CrossCompileHowTo

* whitespace fixes

* lightID toString fix

* fix unsigned int E-API + debug output

* bugfixes, reworked black signal detection, wizard:
- change device config field light-ids from int to string -> real unsigned int fix
- add signal detection brightness minimum threshold value
0.0 for 0% brightness - 1.0 for 100% brightness to count for blacklight signal detection
reason: input may not 100% black, like mine - i have a deep dark gray input signal
-> my threshold value is set to 0.005 for 0.5% minimum brightness = 1 (from max 255) to count as black
- wizard optimations, with fallback without entertainment support (beta state)
- whitespace fixes

* cleanup + minor fixes

* change fixed Hue UPD SSL config to _devConfig paras

* Hotfix SSL Connection, new light models, wizard:
- Fix UPD SSL Connection failed Problems
- add new supported gamut C light models: LCG002, LCA001, LCA002, LCA003
- wizard: extend fallback support to classic mode + hints

* whitespace, typo fix

* uncheck useEntertainmentAPI, if noAPISupport detected + hint

* coredump fix -> add _blackLightsTimer nullptr init

* code cleanup / remove old debugs + whitespacefixes

* add gamut C LCP001, LCP002

* SSL UDP config made more flexible + remove qDebug
-> switch to hyerion.ng _log
-> replace logCommand with verbose
-> code cleanups etc...

* extended mbedtls debugging infos

* add adjustable ssl timeout settings

* error handling

* streamdebugger bugfixes

* UPDSSL psk / psk_identity bugfixes! + hue wizard fn typo fix +
- verbose option available without dependencies
- whitespace fixes

* Philips Hue Assistant now recognizes non-original bridges better...
+ Added note if no clientkey is set when using the entertainment API
+ User creation (+ clientkey) for non-original bridges can now also be used
+ Minor changes and bug fixes

* CMAKE mbedTLS  detection

* minor bug fixes + code cleanups

* FindMbedTLS.cmake remove Path-Hints + wizard.js: ajax timeout handling
Test - content_grabber.js: run relevant code only, if V4L2_AVAIL is true:
conf_grabber don't displays other devices, if V4L2 is not available

* compile mbedtls via cmake as static lib

* remove libmbedtls-dev from compileHowto / scripts

* Fix Windows build

* Fix windows build (part 2)

* removed unnecessary osx x11 include directory path

* QTimer Shutdown bugfix

* cmake win32 fix + minor bugfixes

* cmake debug msg used mbedtls libs

* Bugfix: noSignalDetection wasn't switchedOn again
if no signal was previously detected

* Some code fixes based on alerts from lgtm.com

Co-authored-by: Paulchen Panther <16664240+Paulchen-Panther@users.noreply.github.com>

* Update devices allowing rewriteTime

* Fix typo

* Add missing "general_btn_saverestart" text to en-file

Co-authored-by: Paulchen-Panther <Paulchen-Panter@protonmail.com>
Co-authored-by: Paulchen Panther <16664240+Paulchen-Panther@users.noreply.github.com>
Co-authored-by: brindosch <edeltraud70@gmx.de>
Co-authored-by: Ben Williams <desertblade@gmail.com>
Co-authored-by: SputnikElf <58911932+SputnikElf@users.noreply.github.com>
Co-authored-by: SputnikElf <sputnikelf@gmx.de>
Co-authored-by: SJunkies <41368976+SJunkies@users.noreply.github.com>
2020-05-26 22:28:36 +02:00