Commit Graph

133 Commits

Author SHA1 Message Date
Paulchen Panther
f146894799 JsonCpp to QTJson (Part 3) (#257)
* Update BlackBorderProcessor.h

* Update Hyperion.h

* Update ImageProcessor.h

* Update ImageProcessorFactory.h

* Update LedString.h

* Update BlackBorderProcessor.cpp

* Update ImageProcessor.cpp

* Update ImageProcessorFactory.cpp

* Update Hyperion.cpp

* Update hyperiond.cpp

* Update TestImage2LedsMap.cpp

* Update TestBlackBorderProcessor.cpp

* Update Hyperion.cpp

* Update Hyperion.cpp
2016-09-25 21:59:31 +02:00
redPanther
f88cd3a230 extend effect engine with qt image effects (#249)
* - effects now can use qt image effects
- rainbow swirtl is now suitable for any led layout - including matrix

* fix rainbow effect

* effect: add radialGradient

* fix some js errors

* optimize code

* try fix travis test not working as expected

* fix default config files

* fix config
2016-09-21 22:01:50 +02:00
redPanther
1cc2f72fa2 embedded webui + config modification detection (#240)
* implement embedded webui

* add detection for changed config, later on used for restart hyperion
2016-09-14 13:51:28 +02:00
redPanther
36124c9afb make blackboder component enable/disable at runtime (#228)
* make enable/disable of bborder work

* fix typo

* smoothing can be disabled via config again

* fix smoothing
2016-09-08 16:32:42 +02:00
redPanther
2beccb0912 Webui: extend led hardware config + connection lost page (#226)
* split content and js
tune leds config

* implement connection lost page

* split js/html in huebridge

* add js action for connection lost

* extend led config
make connection loss nicer

* tune led code
add menu entry for grabber

* more tuning of webui

* switch back to botstrap textarea
add v4l to components

* add icon

* extend schema for jsoneditor

* implement ledcolors streaming with 4fps

* implement component state
2016-09-07 20:10:37 +02:00
redPanther
bbffa078fd Webui: view led configuration + lights (#223)
* make hyperion websocket api event based

* implement new websocket handling for generalconf

* migrate all webui stuff to new event based websocket api
some cleanup ... now all html templates are in content
refactoring of web stuff

* add hyperionport to global
start impl. removing advanced key

* separate dashboard
serverinfo is updated every 3 seconds automatily
add input selection
cleanup and remove not needed stuff

* prepare infrastructure for server sided file execution

* webui minor fixes

* fix compile

* implement led layout view with live colors

* live led vies

* fix general conf
unrigister ledcolors request, when not on leds.html

* fix compiler warning

* prepare realtime ledview and enhance ui
2016-09-05 17:26:29 +02:00
redpanther
9a2b167db7 fix typo in config
spilt grabber components in "GRABBER" and "V4L"
2016-08-31 00:54:47 +02:00
redPanther
7ee2e7cf8d rework kodi grabbing mode for all grabbers (#169)
* pull out setgrabbing mode from every grabber into parent class

* implement optional kodi check for v4l

* fix typo

* fix dispmanx build
2016-08-12 23:07:32 +02:00
redPanther
f1cc82b8c7 enable components at runtime + grabber refactoring (#160)
* implement enable/disable on runtime for:
- smoothing
- kodi
- udplistener
- boblight

* implement enable/disable for forwarder
refactor component

* - implement grabber enable/disable at runtime
- big grabber refactoring. now with common base class for all grabbers

* implement enable/disable at runtime for bb detector

* osx fix

* try to fix cutted travis output for osx build
2016-08-11 07:13:55 +02:00
redPanther
197af35de0 Clone single led color from other led (#157)
* start ledclone

* led cloning: clone scan areas from original led
main: show exceptions, better exit

* tune json schema for new option. somwe cleanup

* fix warnings and bug for framebuffer selection. thx to clang brought by new osx buikld on travis

* make ledclone feature work flawlessly for effects too. Effect sees the ledstring without cloned leds.
cloned leds will be inserted just before sending to leddevice

additional: remove warnings and fix code style

* fix warning
2016-08-08 00:17:00 +02:00
redPanther
817dabae8c sourceOff feature + small json refactoring (#151)
* add --sourceOff to hyperion-remote - this will select "off" source and set all leds to black
refactor new json stuff
make schema checker not so strict, do not require values that have defaults (not finished yet)
initialEffect config: effect is always an array, regardless if it is a color or an effect name

* make off source visible in active priority list

* transform initialeffect to qjson (except part of effect-args, this needs effectengine transformed to qjson)

* remove unneeded comment

* add web ui for source selection.
call http://hyperion_host:8099/select/index.html
current example needed json server on port 19444
2016-08-06 08:28:42 +02:00
Paulchen-Panther
bfb06966de Update Json Interface (Enable/Disable components during runtime) (#150)
* Update Hyperion.h

* Add files via upload

* Update CMakeLists.txt

* Update Hyperion.cpp

* Update JsonClientConnection.cpp

* Update JsonClientConnection.h

* Update JsonSchemas.qrc

* Add files via upload

* Update schema.json

* Update JsonConnection.cpp

* Update JsonConnection.h

* Update hyperion-remote.cpp
2016-08-04 13:10:53 +02:00
redPanther
722d4eb357 Manual input source select via json (#143)
* implement manual source select via json interface
fix schema error

* refactoring

* add visible value to all listed prios
2016-07-31 22:21:35 +02:00
redPanther
04ab2f05f7 color filter config additions (#142)
* add ability to disably specific color corrections
update protobuf external
move smoothing out of color section

* update config

* update schema

* update schema
2016-07-30 13:07:53 +02:00
redpanther
505b83f028 every input sources trackes now its priority and ID to hyperion core
ATM all input sources except inputs via proto are tracked
2016-07-15 23:08:55 +02:00
redpanther
d3e77eb018 fix doxy 2016-07-15 10:28:12 +02:00
penfold42
7b9b9bcdef logging migration of blackborder and grabber (#108)
* logging migration of blackborder and grabber

* change to "Debug" for noise blackborder log messages
2016-07-12 15:13:06 +02:00
redPanther
78eaaa2e84 Filter rework, next step (#82)
* common ledbuffer for color transform

hyperion class uses a common buffer for all operations on ledColors got from muxer
all color transforms uses new ledBuffer instead of making copies of ledbuffer

other fixes:
fix compile bug in profiler
update doxygen config

* migrate logging for color transform classes

* prepare new logger in hyperion class

* implement hwledcount

* Update Hyperion.cpp

Fix off color

* remove ledscount equivalent from apa102
migrate logging in hyperion.cpp
remove unused and duuplicate colorcorrection - but same is available through tempertature

* remove colorcorrection completly
fix compile

* set colororder back to static

* in remote: using correction is the same as using temperature - correction is obsolete, command not delete atm for compat reasons

* refactoring of RgbChannelAdjustment

* - remove rgbchannelcorrection, this was a dup of rgbchanneladjustment
- add cmake policy to hide warning
- tune code of rgbchanneltransform
2016-07-04 00:43:41 +02:00
redPanther
36b4d072c5 common ledbuffer for color transform (#77)
* common ledbuffer for color transform

hyperion class uses a common buffer for all operations on ledColors got from muxer
all color transforms uses new ledBuffer instead of making copies of ledbuffer

other fixes:
fix compile bug in profiler
update doxygen config

* migrate logging for color transform classes

* prepare new logger in hyperion class

* implement hwledcount

* Update Hyperion.cpp

Fix off color

* remove ledscount equivalent from apa102
migrate logging in hyperion.cpp
remove unused and duuplicate colorcorrection - but same is available through tempertature

* remove colorcorrection completly
fix compile

* set colororder back to static

* in remote: using correction is the same as using temperature - correction is obsolete, command not delete atm for compat reasons
2016-07-01 23:20:41 +02:00
redPanther
88fbc4dfde refactoring and cleanup (#2)
* make hyperion to singelton.
remove arguments for config and hyperion - both are gettable via Hyperion::getInstance

* refactor hyperiond

* remove qt4 comapt
make zeroconf mandatory
refactor hyperiond

* xbmcchecker is now a singleton

* cleanup in hyperiond
zeroconf switchable between static and shared linking

* fix xbmcchecker
2016-06-17 01:25:40 +02:00
redPanther
4a841710dd webui - "cgi" handler and multiple fixes (#700)
* initial commit of webconfig

* update example config with webconfig and fix format of file
update debian postinst script for install example config

* fix compiling
add new web server command "serverinfo" to use in webapp to retrieve json port

* change web default port to 8099

* add cgi engine to webserver

* fix include
2016-06-14 20:14:06 +02:00
Paulchen-Panther
23042ba07c Update Json Interface (Active LED Color) (#664)
* add getCurrentPriority

* add getCurrentPriority

* Update active led color


Former-commit-id: 0e6b828991fdf51d2ec859d3836ce4f976dfd88c
2016-05-30 22:39:12 +02:00
Paulchen-Panther
bb9b02cf05 get current state (active Effects) over JSON Interface (#608)
* Create ActiveEffectDefinition.h

* Update EffectEngine.h

* Update Hyperion.h

* Update Effect.h

* Update EffectEngine.cpp

* Update Hyperion.cpp

* Update JsonClientConnection.cpp


Former-commit-id: 5664b69da6893dd0d0de0e7c74c01cdcafd57310
2016-04-24 17:07:31 +02:00
AEtHeLsYn
b37cbd26d5 Add color adjustment to all RBG channels
* Channel adjustment config

* Create RgbChannelAdjustment.h

* Delete RgbChannelAdjustment.h

* Create RgbChannelAdjustment.cpp

* Create RgbChannelAdjustment.h

* Delete RgbChannelAdjustment.cpp

* Create ColorAdjustment.cpp

* Delete RgbChannelAdjustment.h

* Create ColorAdjustment.h

* Update ColorAdjustment.h

* Update ColorAdjustment.h

* Update ColorAdjustment.h

* Update ColorAdjustment.cpp

* Update Hyperion.cpp

* Update Hyperion.cpp

* Update Hyperion.cpp

* Update Hyperion.h

* Create RgbChannelAdjustment.cpp

* Create RgbChannelAdjustment.h

* Create ColorAdjustment.h

* Create MultiColorAdjustment.h

* Update MultiColorAdjustment.h

* Create MultiColorAdjustment.cpp

* Delete ColorAdjustment.cpp

* Delete ColorAdjustment.h

* Update RgbChannelAdjustment.cpp

* Update Hyperion.cpp

* Update Hyperion.h

* Update Hyperion.cpp

* Bug fixes

* Update hyperion.config.json

* Add color adjustment to json server and client and adapt hyperion-remote

* Change the color modification order

* Minor bug fix

* Create calibration Images folder

* Create calibration Gamma folder

* Create calibration RGB folder

* Added files via upload

* Delete .gitkeep

* Delete .gitkeep

* Added files via upload

* Delete .gitkeep

* Update color effect order and don't correct twice

* Uploaded gradient images


Former-commit-id: 8ab465e59834f12a21709a6f4546bd6808a2a495
2016-04-02 00:04:11 +02:00
AEtHeLsYn
6e7157c571 Update Hyperion.h
Former-commit-id: c1bd4a7397e8ae2e72b9ef5dcc32ee3b866e2c36
2016-03-10 18:08:34 +01:00
AEtHeLsYn
b0d74b2dd8 Update ColorTransform.h
Former-commit-id: 4c944b94cf26720906efa63ea4266064dc092134
2016-03-10 17:57:52 +01:00
AEtHeLsYn
8b26033915 Update Hyperion.h
Former-commit-id: 9e4ab548db0f2805386d90bfe9cde3aa9426aab5
2016-03-09 19:58:49 +01:00
AEtHeLsYn
bcb0802542 Update Hyperion.h
Former-commit-id: 877c98ea4c6f5503fda14914e315c2b9eb301a44
2016-03-09 19:55:55 +01:00
AEtHeLsYn
0dc51dbf76 Update Hyperion.h
Former-commit-id: 2497c6ea7d153e01e49ed0683e92837106628d44
2016-03-09 19:36:08 +01:00
AEtHeLsYn
9db45c0ffb Merge remote-tracking branch 'refs/remotes/tvdzwan/master'
# Conflicts:
#	include/hyperion/Hyperion.h
#	libsrc/hyperion/CMakeLists.txt
#	libsrc/hyperion/Hyperion.cpp


Former-commit-id: 1144520581d4531952038d2118cb11e01bebc10e
2016-03-09 19:25:04 +01:00
redpanther
ec67caf24e add ability to convert an image to RGB color order
forwarder: add flag to detect if forwarding is enabled

Former-commit-id: c814651ec4973fe3b2bfca7c0370a0bac752f025
2016-02-19 13:31:08 +01:00
redpanther
629461b944 implement proto forwarding for hyperiond internal v4l2 grabber
cleanup


Former-commit-id: 669f139386633e3435cdc33639134819464afd4d
2016-02-16 15:41:40 +01:00
redpanther
7f5b141f43 forwarder: remove default init of port, could procude compile errors and it is not needed
Former-commit-id: 08d7524a2cda53136ae8c72d5fdc1f95f51a23e7
2016-02-16 14:16:59 +01:00
redpanther
df91527557 implement json forwarder
Former-commit-id: 5519118304bd5690e6b512481347579339e78ac9
2016-02-15 20:53:03 +01:00
redpanther
b01b5eb005 - prepare general way to send (proto) messages. currently only incomming protomessages are forwarded
- begin impl. of json server


Former-commit-id: 8f9237cd57ada1e84dc05e60b9ad723e47fd57b1
2016-02-15 18:25:18 +01:00
wisc
2b703de669 bugfix, config enhancement and 3 detection modes
Former-commit-id: edfc3e7ccf7b7d727e73a8563acb521045026d5b
2016-02-07 13:26:40 +01:00
AEtHeLsYn
257532df74 Update Hyperion.h
Former-commit-id: 932b50f14d2d2365d158f21290ddbf95cf7df0af
2015-12-22 10:09:47 +01:00
AEtHeLsYn
30421bd808 Create ColorCorrection.h
Former-commit-id: f52df680a7f056d37d23e9f7d49fa713d8b48949
2015-12-22 09:56:17 +01:00
T. van der Zwan
9f5caacc75 Updated the way colororder is configured per led
Former-commit-id: 2a77b551c5b504f4ce9b0a179d4c20eaf6128f6b
2015-02-23 16:11:33 +01:00
Oliver Schneider
b86e08cf0a Added rgbOrder config for each led
Former-commit-id: 9c9f49d61b24267fe9ebe566600cdc42c78c1ab6
2015-01-20 21:16:55 +01:00
johan
d5597d55a7 Disable the blackborder detector for effects
Former-commit-id: 2d4660f48c17977aabff52b7cbbc8d832b216f00
2014-04-30 22:53:05 +02:00
johan
f5317bc2d9 Moved black border detection code to seperate library
Former-commit-id: 590029949b79689ea05409149677e51b748cb64f
2014-01-26 14:23:08 +01:00
johan
a7110ec64c Configurable blackborder threshold added
Former-commit-id: 95b77dee2869b41bf556e0e374bea3c5e4534e61
2014-01-20 20:46:38 +01:00
T. van der Zwan
b63753f5dc Moved all devices to separate library and added 'Factory' for device creation.
Former-commit-id: 26cab1b85b00406240689ad9c1018f0307028fe4
2013-12-17 18:50:15 +00:00
T. van der Zwan
d56027da20 Merge branch 'add_effect_engine'
Conflicts:
	config/hyperion.config.json
	libsrc/bootsequence/KittBootSequence.h

Former-commit-id: ca9492accdf2ffdad52f6c0695cbba955f802b97
2013-12-14 01:47:38 +00:00
johan
c751561f2f Removed runEffectScript from Hyperion class
Former-commit-id: 459b9178cc138d54a238ae7c72bb2a52d4bfcc3f
2013-12-13 22:41:24 +01:00
johan
f1acf5a9e4 Clear effects if a setColor comes from another source
Former-commit-id: 43084eeee26ee233ac1f0c71d6782b64b154f0da
2013-12-08 17:45:26 +01:00
johan
c3ba0438df Relaxed the requirements for a border a little
Former-commit-id: 7cf7e22665fb136fbb0c83737acc7c1ff9d6de0a
2013-12-08 11:33:21 +01:00
T. van der Zwan
59eb7f788e Merge branch 'master' into add_effect_engine
Conflicts:
	include/hyperion/Hyperion.h
	libsrc/hyperion/Hyperion.cpp
	libsrc/jsonserver/JsonClientConnection.cpp

Former-commit-id: 53467c63b97c7dc370f04357588f7cf1ad0e3ada
2013-12-05 21:01:52 +00:00
johan
ea1b8315c4 Added a notify that color transforms have changed
Former-commit-id: 28eb82f4e6f646ffcb6ed1b013a9ec60de53e657
2013-12-03 22:56:46 +01:00
johan
068a98b84f Changed bootsequence to use the effect engine exclusively
Former-commit-id: 8953ef5fb4a0dfd12a4d94f69af6dbdd40aa20f7
2013-12-01 16:35:45 +01:00
johan
515ae3e8c0 Added the possibility to set effect arguments over json
Former-commit-id: 4bc2920c04853e549c712ec70492371b14d20877
2013-12-01 14:09:01 +01:00
johan
3bd1789c42 Fix bug: Only 1 EffectEngine allowed; SetColors implemented for EffectEngine
Former-commit-id: ae8141ebd530b7735ffa7818dc3c690913769070
2013-11-29 23:22:49 +01:00
Johan
c18920b59e Led count info added to Effect script
Former-commit-id: 36e85b2a33a89f3d91605ff1c1466d52779c510c
2013-11-28 14:40:03 +01:00
johan
5454ddb375 Added skeleton for effect engine development
Former-commit-id: e1fb69fd4de4b8968075660e3ba7f7add021c152
2013-11-24 16:10:48 +01:00
T. van der Zwan
826b964bf6 Implemented the multi-color transform including in hyperion-remote
Former-commit-id: ebdb0688b47d51bd6dccf6dafd580d3ce9ed80a7
2013-11-22 10:48:10 +00:00
T. van der Zwan
ba2939f9ec Added multi colortransform (not working yet)
Former-commit-id: 691a0a9d83e57e00d305cf18718cab05156c2dce
2013-11-20 08:25:49 +00:00
T. van der Zwan
c8ce23e652 Renamed ColorTransform to RgbChannelTransform
Former-commit-id: 390b832ba2d463710d4a063692f00b83a8c6c8ad
2013-11-19 20:17:59 +00:00
T. van der Zwan
dd16af0df5 Changed RgbImage to template based Image (with template for pixel type)
Former-commit-id: ef02f164eaf3c2f9dd552c1c17b525cf6eed499c
2013-11-11 09:00:37 +00:00
johan
7300413015 BoblightServer added
Former-commit-id: deb3479ee673d763ad2e5451fcd35a0febedb4f3
2013-11-08 22:18:10 +01:00
johan
fc1e4bc6c8 Added the option to specify the color byte order
Former-commit-id: f911d0f26c25345bbe5e9014fbc31568b7386f08
2013-11-04 20:52:57 +01:00
johan
0b08341ef1 Initial commit including a linear color smoother
Former-commit-id: ffc00087996324f989e56dc5c95ab734c7c86dfa
2013-10-27 18:04:37 +01:00
johan
2471bd8753 added flag to have BGR output instead of RGB
Former-commit-id: dbd35d6dd4a84d95e0a034b99843be4949a6e169
2013-10-27 10:18:31 +01:00
johan
293a2e7c19 Added reading the enable flag for the border detector
Former-commit-id: d2cf4df9a7684107b30f9bc01d5aa90b321ce1b5
2013-10-20 22:27:05 +02:00
T. van der Zwan
ecdd7775c5 Fixed doxygen warnings 2013-09-09 20:35:28 +00:00
T. van der Zwan
db708da60a Changed the constructor of LedDeviceW2801 (only incl required parameters)
Changed the call sign of the write functions (included const declaration of color parameter)
2013-09-09 15:23:44 +00:00
T. van der Zwan
d2d7265f02 Added doxygen comments 2013-09-06 19:26:58 +00:00
johan
213545afe7 Added config file settings for XBMCVideoChecker 2013-08-24 11:51:52 +02:00
T. van der Zwan
3d02fecc7a Added 'rainbow' boot sequence
Moved color transform to utils lib
2013-08-23 16:24:10 +00:00
T. van der Zwan
6ee94409dc Added blackborder detection and processing to the image processor 2013-08-23 05:09:09 +00:00
T. van der Zwan
decc41965d Merge branch 'HEAD' of https://github.com/tvdzwan/hyperion.git 2013-08-21 20:46:43 +00:00
johan
ee7a596d53 - HSV transform added
- Moved transform of led values to before the device write so transform changes are taken into account
2013-08-21 21:50:17 +02:00
T. van der Zwan
240b118ce9 Added config-schema of Hyperion as resource.
Added constructor to Hyperion using filename.
Added config-filename as commandline parameter for hyperiond.
Added implementation of blackborder detector.
Added test for blackborder detector.
2013-08-21 14:25:27 +00:00
johan
10a566e2ca Get server info implemented for jsonserver 2013-08-19 20:33:36 +02:00
johan
cb38baa985 Implemented set transform for the json server 2013-08-19 19:57:35 +02:00
johan
1766212b70 clear and clear all implemented 2013-08-18 13:33:56 +02:00
johan
59e13a2b5f restructured project structure: move projects into sub-folders, split dispmanx-grabber from hyperion 2013-08-17 16:12:42 +02:00
T. van der Zwan
4031a33f04 Added simple test for image2led map.
Added test executable for creating png from frame grabber.
Added test-device for exporting color values of leds to text file.
Updated configuration to match new color transform.
Finished first version of the Hyperion structure (IT WORKS [1% CPU]!)
2013-08-15 19:11:02 +00:00
T. van der Zwan
b457c444f6 Changed the image-to-leds map by using offset-pointing.
Moved the image-buffer from processor to dispmanx-wrapper.
Added timeout handling to Hyperion.
2013-08-14 15:02:09 +00:00
T. van der Zwan
7bdd10859e Created first draft of 'hyperion-d'. 2013-08-14 08:54:49 +00:00
T. van der Zwan
2ec9f9202e Deleted all files referencing/using boblight 2013-08-13 10:03:00 +00:00
T. van der Zwan
39b98386dd Added simple QT-based grabber.
Moved ImageToLedsMap from include to libsrc.
Moved instantiation of objects to Hyperion (no JSON required outside this class).
2013-08-13 11:10:45 +02:00
T. van der Zwan
10b5b80675 First working version with some test executables 2013-07-26 20:38:34 +00:00