Commit Graph

414 Commits

Author SHA1 Message Date
Paulchen Panther 464de381a0 JsonCpp to QTJson (Final Part) (#273)
* Update CMakeLists.txt

* Update Hyperion.h

* Update LedDevice.h

* Update LedDeviceFactory.h

* Update Hyperion.cpp

* Update LedString.cpp

* Update JsonClientConnection.cpp

* Update LedDeviceAdalight.cpp

* Update LedDeviceAdalight.h

* Update LedDeviceAPA102.cpp

* Update LedDeviceAdalightApa102.h

* Update LedDeviceAdalightApa102.cpp

* Update LedDeviceAPA102.h

* Update LedDeviceAtmo.cpp

* Update LedDeviceAtmo.h

* Update LedDeviceAtmoOrb.cpp

* Update LedDeviceAtmoOrb.h

* Update LedDeviceDMX.cpp

* Update LedDeviceDMX.h

* Update LedDeviceFactory.cpp

* Update LedDeviceFadeCandy.cpp

* Update LedDeviceFadeCandy.h

* Update LedDeviceFile.cpp

* Update LedDeviceFile.h

* Update LedDeviceHyperionUsbasp.cpp

* Update LedDeviceHyperionUsbasp.h

* Update LedDeviceLightpack.cpp

* Update LedDeviceLightpack.h

* Update LedDeviceLpd6803.cpp

* Update LedDeviceLpd6803.h

* Update LedDeviceLpd8806.cpp

* Update LedDeviceLpd8806.h

* Update LedDeviceMultiLightpack.cpp

* Update LedDeviceMultiLightpack.h

* Update LedDeviceP9813.cpp

* Update LedDeviceP9813.h

* Update LedDevicePaintpack.cpp

* Update LedDevicePaintpack.h

* Update LedDevicePhilipsHue.cpp

* Update LedDevicePhilipsHue.h

* Update LedDevicePiBlaster.cpp

* Update LedDevicePiBlaster.h

* Update LedDeviceRawHID.cpp

* Update LedDeviceRawHID.h

* Update LedDeviceSedu.cpp

* Update LedDeviceSedu.h

* Update LedDeviceSk6812SPI.cpp

* Update LedDeviceSk6812SPI.h

* Update LedDeviceTinkerforge.cpp

* Update LedDeviceTinkerforge.h

* Update LedDeviceTpm2.cpp

* Update LedDeviceTpm2.h

* Update LedDeviceTpm2net.cpp

* Update LedDeviceTpm2net.h

* Update LedDeviceUdpE131.cpp

* Update LedDeviceUdpE131.h

* Update LedDeviceUdpH801.cpp

* Update LedDeviceUdpH801.h

* Update LedDeviceUdpRaw.cpp

* Update LedDeviceUdpRaw.h

* Update LedDeviceWs2801.cpp

* Update LedDeviceWs2801.h

* Update LedDeviceWS2812b.cpp

* Update LedDeviceWS2812b.h

* Update LedDeviceWs2812SPI.cpp

* Update LedDeviceWs2812SPI.h

* Update LedDeviceWS281x.cpp

* Update LedDeviceWS281x.h

* Update ProviderHID.cpp

* Update ProviderHID.h

* Update ProviderRs232.cpp

* Update ProviderRs232.h

* Update ProviderSpi.cpp

* Update ProviderSpi.h

* Update ProviderUdp.cpp

* Update ProviderUdp.h

* Update LedDevice.cpp

* Update CMakeLists.txt

* Update hyperiond.cpp

* Update hyperiond.h

* Update TestSpi.cpp

* Delete AUTHORS

* Delete CMakeLists.txt

* Delete LICENSE

* Delete json_batchallocator.h

* Delete json_internalarray.inl

* Delete json_internalmap.inl

* Delete json_reader.cpp

* Delete json_tool.h

* Delete json_value.cpp

* Delete json_valueiterator.inl

* Delete json_writer.cpp

* Delete sconscript

* Delete autolink.h

* Delete config.h

* Delete features.h

* Delete forwards.h

* Delete json.h

* Delete reader.h

* Delete value.h

* Delete writer.h
2016-10-13 21:59:58 +02:00
redPanther 48d8781cdf auto generation of initial config file (#271)
* - remove feature of using multiple config files for automaticly start other hyperion instances
- add auto config file creation
- tune service files

* add auto path creation for initial default config

* debian package:
rename service to hyperiond
remove copy of config file
2016-10-13 21:59:10 +02:00
Paulchen Panther ebbb6b9440 JsonCpp to QTJson (Part 5) (#270)
* Update Hyperion.h

* Update ImageProcessorFactory.h

* Update ProtoConnection.h

* Update WebConfig.h

* Update CMakeLists.txt

* Update Hyperion.cpp

* Update CMakeLists.txt

* Update CMakeLists.txt

* Update CgiHandler.cpp

* Update CgiHandler.h

* Update WebConfig.cpp

* Update CMakeLists.txt

* Update hyperion-remote.cpp

* Update JsonConnection.cpp

* Update JsonConnection.h

* Update hyperiond.cpp

* Update hyperiond.h

* Delete JsonFactory.h

* Delete JsonSchemaChecker.h

* Delete JsonSchemaChecker.cpp

* Update WebConfig.cpp
2016-10-11 19:51:20 +02:00
redPanther 37558a983f fix restart of hyperion. now devices closed before restart (#269) 2016-10-10 23:08:01 +02:00
redPanther e889996ae7 implement optional color correction for V4L only (#267)
* remove color temperatire, its the same as color adjustment

* remove temperature from schema

* implement most part of v4l only colro settings,
now hyperion update knows from which component the colors come

* update configs

* fix webui config write

* reomve correction and temperature from hyperion-remote
2016-10-10 18:29:54 +02:00
Paulchen Panther d9c2a2d91a JsonCpp to QTJson (Part 4) (#266)
* Update ActiveEffectDefinition.h

* Update EffectDefinition.h

* Update EffectEngine.h

* Update Hyperion.h

* Update LedDevice.h

* Update QJsonFactory.h

* Update QJsonSchemaChecker.h

* Update Effect.cpp

* Update Effect.h

* Update EffectEngine.cpp

* Update Hyperion.cpp

* Update JsonClientConnection.cpp

* Update JsonClientConnection.h

* Update schema-config.json

* Update LedDevice.cpp

* Update QJsonSchemaChecker.cpp

* Update hyperion-remote.cpp

* Update JsonConnection.cpp

* Update JsonConnection.h

* Update hyperiond.cpp
2016-10-09 22:22:17 +02:00
redPanther 5aac2be702 Leddevice refactoring the next next part (#263)
* switch rs232 provider to completly async transfer

* start of implementing a seperate init function for leddevices

* rename setconfig to init

* more fixes

* implement missing code

* fix code style

* remove debug  code

* remove  debug stuff

* set loglevel to original state
2016-10-08 08:14:36 +02:00
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 d6a34edfb2 Leddevice refactoring the next part (#253)
* add general switchOff

* refactoring of leddevices regarding ledcount and switchoff

* remove obsolete includes
2016-09-23 08:49:22 +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 858125510e hyperiond: add ability to export default config and effects (#244)
* - embed default config
- add possibility to export effects and embeded default config to filesystem

* do some code style
2016-09-17 00:40:29 +02:00
redPanther eeb9b0f7da implement hyperion restart via webui (#242)
* first try

* implement hyperion restart. core function is good, but needs a beeter structuring- something for next refactoring session ;-)

* several fixes (including osx)
merge with upstream
some refactoring

* add some eye candy to webui
2016-09-15 20:42:58 +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 adfe2a4b23 effects included in hyperiond binary as qtResource (#237)
* implement effects included in hyperiond  binary

* cleanup

* remove install of effects dir. People who wants to develop effects has to copy them from github
effect params for initial effects can be changed in config permanently and other effect params can be changed
via json (currently only temporarily)

* fix schema of fadecandy
webui fix display of specific led options

* add leddevice write support

* cleanup

* webui: tune hue code

* when use json effect definition from putsiede hyperiond but want to use py script from inside hyperiond use ad a :
e.g. fade.py needs a fade.py near the json file, but :fade.py is taken from resource inside hyperiond

* add ability to di

* add abiloty to diable effcts via hyperion config

* use effect name instead of script in active effects and prio register

* finally solve open file handle during effect is playing. Now script is read before, then file closed and then t is run by python

* fix some webui things
- led config tabs
- inital loading screen

optimize qrc file generation
fix compile warning in hyperion.cpp

* cleanup

* more cleanup
2016-09-13 11:51:16 +02:00
redPanther 2d88cdc2d3 webui: initial support for leddevice options (#232)
* initial support for leddevice options

* fix schema and editor init

* fix led editor labels and schema

* add some led schemas

* led config: insert current values. not yet perfect, but it works
2016-09-10 19:08:08 +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 4a27f3d43e refactoring of webui and event based websocket layer (#219)
* 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
2016-09-03 15:54:33 +02:00
redpanther 9a2b167db7 fix typo in config
spilt grabber components in "GRABBER" and "V4L"
2016-08-31 00:54:47 +02:00
Rick van Hattem 61db9f43b8 Qcommandlineparser (#199)
* Replaced getoptplusplus with QCommandLineParser. Fixes #39

* enabling C++11 if possible

* enabling C++11 if possible

* fixed gcc compilation issues

* fixed linux builds and improved os x build

* trying to fix dispmanx

* trying to fix dispmanx

* simplified travis build script

* fixed argumentparser default values

* rewrote validator system and made sure default arguments are processed correctly

* rewrote validator system and made sure default arguments are processed correctly

* fixed bool vs. regular options

* oops... removing debug code

* reverted screenshot api change
2016-08-28 15:10:43 +02:00
redPanther d679affeb4 Leddevice rework2 (#193)
* commit debug code to save it due to merge

* migrate first devices to new device registry and configure on runtime

* fadecandy and rs232 resets device if config is set

* try to hunt crash on osx

* test commit if this works with osx

* refactor spi devices

* cleanup

* refactor leddevices file, tinkerforge and ws2812b

* refactor raw usb devices

* refactor udp devices

* - add tpm2net driver
- remove old udp driver from build (files left in place for reference for new udp driver)
- json serverinfo shows available leddevices

* finish rework part 2 of leddevices

* add schemas for leddevices.
currently only compiled in, but not usedx
2016-08-23 20:07:12 +02:00
Paulchen-Panther 6acf68c87e Update X11 Grabber (scaling improvements) (#191)
* Add transform Matrix for scaling

* Add Image scaling by XRender

* Coding Style correction
2016-08-22 11:59:07 +02:00
Paulchen-Panther 68fd395670 JSON RPC Writer (configSet) (#175)
* Remove "endOfJson" Value

Deprecated value from Hypercon

* Remove "endOfJson" Value

Deprecated value from Hypercon

* Add writeJson function to JsonFactory

* ability to ignore required value in schema file

* Remove "endOfJson" Value

* Add handleConfigSetCommand function

* Add handleConfigSetCommand function

* Update JsonSchemas.qrc

* Update schema.json

* Update JsonSchemaChecker.cpp

* Add configSet command to Hyperion-remote

* Add setConfigFile function

* Add setConfigFile function

* Add schema-configset.json
2016-08-14 20:17:12 +02:00
redPanther 97181fa83c leddevice refactoring. code style and extension of baseclass to avoid dups (#174) 2016-08-14 10:46:44 +02:00
redPanther 9c27db390d Kodi initial fix (#171)
* fix #158

* fix initial state of playbackstate
2016-08-13 10:05:11 +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 050ab11c8e v4l grabber wont crash hyperiond anymore (#168)
* v4l errors won't lead to crash hyperiond (exceptions are catched)
v4l auto device mode with better log messages
createV4l in hyperiond.cpp refactored, now v4l is always available as long as it is compiled in

* change back, code accidently altered

* fix compile of dispmanx grabber
2016-08-12 09:39:41 +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
Paulchen-Panther f183032270 JsonCpp to QTJson (Part 2) (#147)
* Replace std::string with QString

* Replace std::string with QString

* Replace std::string with QString

* Replace std::string with QString

* Convert JsonCPP Code to QTJson

Not all JsonCPP Code is converted to QTJson Code. See Pull Request for Details.

* Convert JsonCPP Code to QTJson

Not all JsonCPP Code is converted to QTJson Code. See Pull Request for Details.
2016-08-04 10:53:26 +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 30b9c20611 new frame grabber handling (#137)
* - implement framegrabber type option
- framegrabber autoselect
- integrate x11 grabber in hyperiond

* add doxy

* v4l: select device by name
hyperiond: fix x11 grabber connection to kodichecker
config: tune default prios of boblight and v4l

* make v4l name finding case insensitive
2016-07-24 15:18:34 +02:00
Paulchen-Panther 01ec4a3655 KODIVideoChecker Fix (#138)
* Update KODIVideoChecker.h

* Update KODIVideoChecker.cpp

* Update KODIVideoChecker.cpp
2016-07-24 13:56:13 +02:00
Paulchen-Panther 5bd8c33529 Add Screensaver mode to Kodi video checker (#132)
* Update KODIVideoChecker.h

* Update GrabbingMode.h

* Update AmlogicWrapper.cpp

* Update DispmanxWrapper.cpp

* Update FramebufferWrapper.cpp

* Update OsxWrapper.cpp

* Update KODIVideoChecker.cpp

* Update ProtoConnection.cpp

* Update X11Wrapper.cpp
2016-07-21 20:15:54 +02:00
Paulchen-Panther 230cf9e970 Rewrite JSONSchemaChecker to QT (#128)
* Add files via upload

* Update CMakeLists.txt

* Add files via upload

* Update TestConfigFile.cpp

* Update TestConfigFile.cpp

* Update TestConfigFile.cpp

* Update QJsonFactory.h
2016-07-20 17:16:06 +02:00
redPanther f08724f72e fix call off open in leddevice
... leads to not called open in subclass, e.g. serial port can't be opened
2016-07-17 14:58:05 +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
redPanther b49ada956b hyperion won't fail, if v4l2 has invalid device + auto device (#118)
* hyperion won't fail, if v4l2 has invalid device

* add v4l auto select. use "auto" as device name
2016-07-14 23:40:10 +02:00
redPanther 5a2ef6c4a3 multi fix commit (#112)
* multi fix commit

- refactoring leddevicefactory
- adalight: default for "delayAfterConnect" is 1s now - needed for most arduino's because of there special behaviour on open
- fadecandy: new option for disabling configuration send - if you want to keep your fadecandy defaults
- Hyperion.cpp: simplify createSmoothing discussed in #105
- smoothing:
-- add option for continuous output
-- when updatedelay>0 and continousOutput is disabled, buffer is flushed correctly after no input is detected

* add doxygen to travis
2016-07-13 11:18: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
brindosch 76acff8043 Logging for dispmanx, framebuffer, x11, v4l2, osx (#103)
* dispmanx

* typi

* Framebuffer

* fix attempt

* x11

* osx

* V4L2
2016-07-12 00:53:48 +02:00
brindosch c802505553 logging rework json/proto (#102)
* cleanup: remove ambiled device

as written at the forum this is no longer supported. All people should move to adalight. They just need to flash a new sketch.

* fix typo

* travis.ci

* travis: move to ubuntu 14.04

* script try

* add serialport

* update .json files

* .

* .

* .

* update travis

* fix

* typo

* fix

* .

* disable v4l2 on mac

* disable email notification

* update osx

* maybe fix

* .

* disable osx and rm v4l2

* try osx

* try fix

* travis update

* add oe systemd file

* Proto

* Json

* fix

* fix2

* fix3

* .

* typo

* update

* revert runtime error
2016-07-11 17:08:22 +02:00
penfold42 80fc153d35 udplistener will now set remaining LEDs to black. (#99)
eg: configure 42 leds, but a udp packet only contains 10 leds, the remaining 32 are now set to black
2016-07-11 13:15:08 +02:00
redPanther c2e2c26ab2 Logging migration continues ... (#97)
* migrate logging for blackborder and bonjour. fix logging bug in hyperion

* fix kodichecker when kodi is not there
2016-07-10 23:14:23 +02:00
redPanther 3ac0781c1f Kodi checker rework (+enable option) (#96)
* big kodichecker rework

- use new logger
- 'enable' flag in config
- startable on runtime (atm not stoppable and no reconfigure)
- rename xbmc to kodi

* remove unnecceasry checks for kodi

* make kodichecker stoppable and add reconfigure

* tune config
2016-07-10 22:04:31 +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 921f164b26 refactoring of RgbChannelAdjustment (#79)
* 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
2016-07-02 14:00:48 +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
XfableX 6327a38582 Added logging to X11Grabber (#71)
* Added logging to X11Grabber

* Added logging to Amlogic grabber.

* Fixed mistake in amlogicgrabber.h

* fixed compile issue

* Trigger

* cleaned up log messages
2016-06-29 16:48:53 +02:00
redPanther 03ac5689cf make log level settings avail in config file (#63) 2016-06-27 23:56:21 +02:00
redPanther 809ab82524 migrate boblight to new logger and make it start/stoppable during runtime (#62) 2016-06-27 22:43:43 +02:00
redPanther b9634e57d6 Udplistener start/stop during runtime (#56)
* start implementening runtime start/stop for udplistener

* add signal slots for start/stop/statusChanged for better connectivity with other qt stuff

* fix typo
2016-06-27 09:27:11 +02:00
penfold42 de39ff8997 UDPListener improvements: (#53)
- if you listen to a multicast address, it now also listens to all ipv4 addresses
- shared udp sockets - multiple hyperiond instance can optionally share the same udp packets
2016-06-26 20:08:03 +02:00
redPanther 4033de85ec Logging leds (#50)
* switch to new logger for folowing led devices:
LedDeviceAtmo
LedDeviceFactory
LedDeviceFadeCandy
LedDeviceHyperionUsbasp
LedDeviceLightpack-hidapi
LedDevicePiBlaster
LedDeviceWS281x
LedRs232Device

leddevice base class defines logger already as protected member _log

* migrate to new logger for led devices.
still todo:
LedDeviceWS2812b
LedDeviceWs2812SPI
LedDeviceTinkerforge
LedDeviceLightpack
LedDeviceMultiLightpack
2016-06-25 22:08:17 +02:00
penfold42 0b59614ab3 native UDP listener enhancements (#48)
- uses new logger
- can specifiy which ip address to listen on
- if its a multicast address, multicast is enabled
2016-06-25 15:15:23 +02:00
redPanther d4142b4eb4 migrate logging for effects and verbose options (#38)
* start step by step  migration to new logger

* fix linking for serialport

* migrate effectengine to new logger

* tune log messages

* add commandline options for hyperiond to control verbosity
--silent
--verbose
--debug
2016-06-23 13:48:49 +02:00
redPanther f48af9daff extend logger (#34) 2016-06-21 21:41:26 +02:00
redPanther eccd4e6637 rework bootsequence (#30)
* udplistener/boblight: use hyperion::getInstance
hyperiond: fix dispmanx is started twice
hyperiond: rework bootsequence - now named as InitalEffect

* pull out webconfig from hyperiondaemon to functional when daemon crashes
initialEffect: forbid foreground effect duration infinitiy
2016-06-20 23:41:07 +02:00
penfold42 a23735d1ef New builtin udp listener (#18)
* Fixed compile error when no grabbers are defined

* Remove stupid avahi warning...

* Started on the new integrated UDP listener to replace the python effect.

Cloned boblight server and rename it to be UDP listener
It compiles!, It starts! it seems to work as a second boblight protocol server...

* moving from the exsting TCP to UDP.
i can catch packets now.. need to consider ditching the connection handling

* It kinda works right now.
UDP packets are received, led data is sent and hyperion displays them.
.... for a moment before going back to what it was doing

* It works!

looks like the default priority of 900 was fighting with something else that was also 900

commented out some udp packet debugging

* oops, forgot to add the changes the the previous commit

* resolving merge conflicts
2016-06-20 08:38:12 +02:00
redPanther 4533b34606 Hyperiond refactoring + preparation for ip restriction settings (#12)
* 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

* extensive refactoring of hyperiond
webserver: make client ip information availabel in request object - preparation for ip filters
proto/json server, use hyperion::getInstance instead of hyperion argument

* move creation of hyperion core into hyperionDeamon class
cleanup
2016-06-19 00:56:47 +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
redPanther eb64e7e528 webui fix and serverinfo (#699)
* 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
2016-06-13 22:54:08 +02:00
redPanther 7dfb9f1967 integrated webserver ... (#697)
* initial commit of webconfig

* update example config with webconfig and fix format of file
update debian postinst script for install example config
2016-06-12 22:27:24 +02:00
Paulchen-Panther f0dec4cf73 Hyperion X11 KodiCheck (#685)
* Update X11Grabber.h

* Update ProtoConnection.h

* Update ProtoConnectionWrapper.h

* Update ProtoServer.h

* Update X11Grabber.cpp

* Update message.proto

* Update ProtoClientConnection.cpp

* Update ProtoClientConnection.h

* Update ProtoConnection.cpp

* Update ProtoConnectionWrapper.cpp

* Update ProtoServer.cpp

* Update hyperion-x11.cpp

* Update X11Wrapper.cpp

* Update X11Wrapper.h

* Update hyperiond.cpp

* Update ProtoClientConnection.cpp

* Update X11Wrapper.cpp

* Update hyperiond.cpp


Former-commit-id: a572f275b270217cd8ce8cdd91b3eca3037d6472
2016-06-07 23:12:18 +02:00
brindosch 9578a3e386 Kodicheck: Add option for pause modus (#681)
* introduce pause mode

* fix it fe...

* fix

* fix compile warning

* change solution

* fix order

* fix

* last update

* -


Former-commit-id: b35c4d672aed5be7a6a694b3c861c6cf287d89df
2016-06-07 12:34:50 +02:00
redPanther f39f074dcf add logger/compiler class (#680)
* implement make install
set CMAKE_INSTALL_PREFIX e.g. to /opt to install to /opt/hyperion
set ENABLE_SYSTEM_INSTALL to ON to activate installation
after compiling use
make install
or
make install/strip
(for performance/size optimized binaries - compile in Release to get best performance)

* cleanup cmake files
use
cmake -DINSTALL_PREFIX=/opt/hyperion ..
to install all files to hyperion or
cmake -DINSTALL_PREFIX=/usr/
to install to usr. install folders are linux standard. bin go to bin folder and additionals (effects) go to share/hyperion

* add uninstall target - be patient with that, this will remove files from your system
install service files to share/hyperion - if you want to use them you have to make a symlink to your location of service files

* optimize build release script
install service files into hyperion share folder (services not activated, this must be done by distribution package script)
initial support of cmake option -DPLATFORM= option. This selects platform specific cmake flags. no need for -DENABLE_... options (unless you want some special things)
automatic detect for apple build

* update submodule

* fix cmake error when no platform is given

* initial support for deb,rpm and tgz packages - no usefull content atm!

* make packeages contain usefull stuff

* add license
make packes more functional. package specific install missing yet

* implement debian postinstall

* disable rpm generation until it has a working state

* add hypercon compat

* add posibility for multiple config files. first one found is taken

* remove hyperion comaptlayer
services is not started automaticly

* rework debian postinstall:
- remove /opt compatibility complety. This makes more trouble as it is usefull
- when hyperiond already started, restart it
- cleanup

* add deb package dependencies

* wipe out last support for /opt installation

* change default effect path in config to /usr

* revert service files and config files

* remove last occurences of ENABLE_PROTOBUF
fix cmake warnings and make it ready for cmake 3
fix refactoring of hyperiond.cpp creates no objects for network services

* all arguments via reference ...

* fix xbmcchecker not working

* add logger class

* - profiler must be activated with ENABLE_PROFILER, otherwise an error will raise
-> this should prevent profiler gets into release code

* fix profiler


Former-commit-id: b716dd40dbf5b837356eec876d85ec71c86d5c6c
2016-06-05 16:08:55 +02:00
penfold42 d5ce395e8e Add sk6812rgbw support (#666)
* Removed -HUP so the default -TERM signal is sent instead.
- hyperiond only listens for TERM and INT. HUP is often used to get an exe to reread its config

Changed pgrep to add '-x' so it wont partial match on the exe name.
- I have multiple instances with multiple hyperiond-instance1 names
- this ensures the service script only kills the right process

* reversing errant change to hyperion.systemd.sh

* adding support for SK6812 - not working yet

* Changed rpi_ws281x submodule to be penfold42's fork

* Set White to zero for now

* starting on the code to make the White led do stuff

* Added some basic whie led calculation
white = min(r,g,b)
r-=w, g-=w, b-=w

* cleaned up a couple of compiler warnings

* updated strip type to use corrected RGBW strip type
(the SK6812RGBW datasheet is wrong)

* moved bitpair_to_byte initialiser to (hopefully) work with older GCC

* compiler warning in udp driver
removed some tabs in ws2812b.cpp

* formatting - spaces to tabs

* moved rpi_281x to tag sk6812-v1.0

* attempt #3 at migrating the rpi_281x submodule to my fork/branch

* moving to my fork of rpi_281x

* Started implementing multiple RGB to RGBW conversion options

a quick hack has been implemented inside WS281x.cpp but ive started
moving this to RgbToRgbw.cpp for reuse by other led device types

* migrated RGB to RGBW conversion to RgbToRgbw.cpp


Former-commit-id: ff8e9038c4bb8203b71b42d12bf23be4abcc0b3b
2016-05-31 22:55:56 +02:00
penfold42 6fbfda03fa add zeroconf support based on qt4 libraries (#667)
* Removed -HUP so the default -TERM signal is sent instead.
- hyperiond only listens for TERM and INT. HUP is often used to get an exe to reread its config

Changed pgrep to add '-x' so it wont partial match on the exe name.
- I have multiple instances with multiple hyperiond-instance1 names
- this ensures the service script only kills the right process

* reversing errant change to hyperion.systemd.sh

* added bonjour/zeroconf service discovery to the json interface.

When clients are also modified, they can
- find hyperiond on the network much more quickly than ping/portscan;
- find multiple instances running on different ports instead of assuming 19444

* Moved zeroconf calls to hyperiond.cpp

* Added mDNS/zerconf/bonjour registration for proto server

Added config options.
        "jsonServer" :
        {
                "port" : 49444,
//              "mDNSDescr" : "hyperiond jsonServer blah de blah",
                "mDNSService" : "_hyperiond_json._tcp"
        },

* cleaned up a couple of compiler warnings

* moved bitpair_to_byte initialiser to (hopefully) work with older GCC

* compiler warning in udp driver
removed some tabs in ws2812b.cpp

* formatting - spaces to tabs

* moved rpi_281x to tag sk6812-v1.0

* moving to my fork of rpi_281x

* Now uses the led device name and hostname to create the annouce name


Former-commit-id: abfa51bcf359cafa63338181c1b83ecfd231bc87
2016-05-31 22:55:11 +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
redPanther 945f3d1c5b big code cleanup. mostly line endings and indentions (#659)
No functional changes - except protobuffer is mandatory and not optional now.

Former-commit-id: 1e6347e708707cc388cdedb8d0352a9f017030b8
2016-05-26 23:44:27 +02:00
Paulchen-Panther 409ef383f3 XRender support for X11 Grabber (#649)
* Update X11Grabber.h

* Update X11Grabber.cpp

* Update CMakeLists.txt

* Update hyperion-x11.cpp

* Update X11Wrapper.cpp

* Update X11Wrapper.h


Former-commit-id: d2f7cb0e22248a0c2963bf53728f2e0d7bb9dee1
2016-05-24 19:55:50 +02:00
brindosch 46a3edd1ec fix typo
Former-commit-id: ed5661d3bb6c4dddbe808383e4e1f717c1aa59aa
2016-05-23 00:25:57 +02:00
Funatiq f8b724f9f9 Minimum luminance for backlight in dark scenes (#646)
* Include miminum luminance

* Add luminance minimum

* Add luminance minimum

* fixed missing ;

* Add luminance minimum

* Add luminance minimum check

Check if luminance mimimum is other than default

* Add luminance minimum

* Add luminance minimum

* Add luminance minimum

* Add luminance minimum

* Add luminance minimum

* Safe luminance calculation


Former-commit-id: 35a762b18b473a333155acba7a00894204400076
2016-05-23 00:00:48 +02:00
Matthias Reichl f584b05de5 dispmanx: fix grabber issues with certain widths and support cropping (#634)
* dispmanx: fix grabber issues with certain widths and support cropping

The dispmanx grabber will produce garbage output if the destination
pitch is not set to a multiple of 64 bytes (16 RGBA pixels).

It can also fail when retrieving only a part of the image
(eg in 3DSBS or TAB mode).

Handle these cases by capturing the full image into a separate
buffer with the pitch set to an appropriate value and manually
handle 3D SBS/TAB left/top half copying.

At this point supporting cropping like in the V4L2 grabber is
rather easy and added as well. This'll help handling overscan
setups (old TVs) and removing (possibly asymmetric) overscan
borders.

Cropping is disabled in video capture mode (when the
DISPMANX_SNAPSHOT_FILL flag is set).

Signed-off-by: Matthias Reichl <hias@horus.com>

* hyperion-dispmanx: add optional crop values and 3D mode options

Signed-off-by: Matthias Reichl <hias@horus.com>

* hyperiond: support cropping on the dispmanx grabber

Honor cropLeft, cropRight, cropTop and cropBottom settings in
the framegrabber section of the conf file to control cropping.

Signed-off-by: Matthias Reichl <hias@horus.com>

Former-commit-id: bbb55f6621b90384e417f37da4f2543d112ef57a
2016-05-18 11:26:25 +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 37c54d733d Merge remote-tracking branch 'refs/remotes/tvdzwan/master'
Former-commit-id: 59c1c363863c950e91ac57cc2ff39a722359634b
2016-03-13 11:49:49 +01: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 014a4288f9 implement osx grabber .... not tested! need testers!
tune usage hints in external grabbers


Former-commit-id: 816821dd773e90b8076e9b50ced9eb052f43c2f4
2016-03-09 11:03:20 +01:00
redpanther e6170ed698 create external framebuffer grabber
cleanup some cmakelist files
fix qt5 build


Former-commit-id: 024b5b6dc5dc96fcb16f6e8958ad3684a6728504
2016-03-09 07:03:17 +01:00
redpanther 0bc725054c make all prios settable and make prios more consistent
Former-commit-id: f1d1c35063e98389d627f3535d2a94da33a22da4
2016-03-08 17:31:56 +01:00
redpanther ea89a85ddb make protoconnection to invalid host less blocking
Former-commit-id: e7a89c87b15fbe9809ec63468b59ecc55c6d3e72
2016-02-25 15:21:25 +01:00
redpanther e667be5e0b Merge remote-tracking branch 'upstream/master' into proto_json_forwarder
Former-commit-id: 6eb800d3ed5badd831bd79fc8cfb66115df8ec28
2016-02-24 15:07:30 +01:00
redpanther 8fdf97e693 prepare standalone amlogic grabber
activate internal amlogic grabber forwarding


Former-commit-id: 21dabf759935836eef556baeb8a27e362e95ae96
2016-02-24 14:42:25 +01:00
redpanther 6bef43887b implement dispmanx forwarding a a separate dispmanx wrapper
implement forwarding for amlogic grabber


Former-commit-id: 8a793d24bd083f9eca07c34ec3b222f0e54b4426
2016-02-24 14:34:19 +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 a9e8f0264a implement proto forwarding for osxgrabber and framebuffer. prepare forwarding in amlogic and dispmanx
Former-commit-id: d67fc2b7fe8877e6eadf31a8c76e4a68110c6680
2016-02-17 00:44:06 +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 63ec2909eb added bottom right to osd mode
Former-commit-id: 3972abaf30d46558d310dbc5e2d164330e9a5b63
2016-02-11 15:50:51 +01:00
redpanther 5dc59344c4 forward protobuf messages.
configure (send proto messages to two other hyperiond):

"protoServer" :
{
	"port"    : 19446,
	"forward" : [ "192.168.0.10:19445", "192.168.0.11:19445" ]
},


Former-commit-id: 33af219cfce99609ca7245d662dc0f0561013bbd
2016-02-08 16:56:23 +01:00
wisc 2b703de669 bugfix, config enhancement and 3 detection modes
Former-commit-id: edfc3e7ccf7b7d727e73a8563acb521045026d5b
2016-02-07 13:26:40 +01:00
tvdzwan 4c74b509b6 Merge pull request #462 from wisc17/blackborder
Blackborder Improved +

Former-commit-id: ddae8aa6e2e3f27f960d39f0e8e2ae82e39c0436
2016-01-21 20:48:46 +01:00
Paulchen-Panther b9a9c3126f Update X11Grabber.h
Former-commit-id: 895bc985c0e732ec5d8e064068cb6f3e0920d09a
2016-01-21 16:39:52 +01:00
wisc 391e2e552c release candidate
Former-commit-id: e81f58386ce64f836561faf30ef2c3fb154358b5
2016-01-19 23:43:00 +01:00
Paulchen-Panther 9156742aaa Update X11Grabber.h
Former-commit-id: 7b3ba3f760ba4b403061642549164ef2e1768b32
2016-01-17 18:00:38 +01:00
wisc 4bc11548b4 faster detection less false positive
Former-commit-id: 501de9bca4c20600fe1e6250e82143f0b0d6ade3
2016-01-10 18:42:55 +01:00
wisc ac86a779b0 cleanup
Former-commit-id: 39cb3f76379990085407791ec391732c986790e6
2016-01-10 14:55:23 +01:00
wisc 544ae68429 test old v1+ vs new v2
Former-commit-id: 5217ac135cd0c7a6907be0097df72506ca7f2d71
2016-01-10 14:41:47 +01:00
wisc 633985930b 3line detection
Former-commit-id: a63c03bc276ef218981213fbb9743a3d6d12d8b6
2016-01-04 00:20:47 +01:00
wisc 469ea42f49 check for black pixel at center x/y
Former-commit-id: d91f422f55638418d2517d91b1c925880d7ca448
2016-01-02 02:31:13 +01:00
AEtHeLsYn 257532df74 Update Hyperion.h
Former-commit-id: 932b50f14d2d2365d158f21290ddbf95cf7df0af
2015-12-22 10:09:47 +01:00
AEtHeLsYn 7773a82cb4 Update RgbChannelCorrection.h
Former-commit-id: 003e07c72d2244f2ffb6f4c4cb2b3b691ecaaad7
2015-12-22 09:59:55 +01:00
AEtHeLsYn a23aa38f20 Create RgbChannelCorrection.h
Former-commit-id: 7b0decaf9a9829cbc39a9d14db6bb42fb3d68445
2015-12-22 09:59:17 +01:00
AEtHeLsYn 2eabc34f09 Update HslTransform.h
Former-commit-id: 634544dbb41949a55591f5b41ef956588c5c7946
2015-12-22 09:58:49 +01:00
AEtHeLsYn e6fe6e5bc7 Create HslTransform.h
Former-commit-id: 2014641903af65c9ee1ac23cd90dad44d35f6c9f
2015-12-22 09:57:08 +01:00
AEtHeLsYn 30421bd808 Create ColorCorrection.h
Former-commit-id: f52df680a7f056d37d23e9f7d49fa713d8b48949
2015-12-22 09:56:17 +01:00
T.van der Zwan 5497fbf577 Finished the amlogic grabber for the 'WeTek Play'
Former-commit-id: e459cdfe6273ad2bfee92d2d190801ebdc691a5c
2015-08-20 09:51:44 +02:00
T.van der Zwan 2de173722d Added code for amlogic grabber.
Former-commit-id: fdb9c1c5d8ce02d531d2008057e22f1ae8f7d04e
2015-08-07 14:37:41 +02: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
tvdzwan e8ae9c36e6 Merge pull request #238 from sweetpi/master
Added rgbOrder config for each led

Former-commit-id: 91881cdbe14a9fc33e12e91ef15b52faa66a6047
2015-02-23 15:53:44 +01:00
Gamadril 3fd20ec5fa - refactored framebuffer grabber to use ImageResampler
- added OsxGrabber for OSX
- added binary for imx6 (cubox-i) and updated install script


Former-commit-id: 2c55e292c842c67e54ce36bd91e4f6303b98687a
2015-01-24 23:42:22 +01:00
Oliver Schneider b86e08cf0a Added rgbOrder config for each led
Former-commit-id: 9c9f49d61b24267fe9ebe566600cdc42c78c1ab6
2015-01-20 21:16:55 +01:00
Gamadril c89e1fcefa Added frame buffer grabber support
Former-commit-id: a73767a1abb2cac977492bd8c6cc593fb21840e1
2015-01-18 00:04:45 +01:00
poljvd 2b6d485ea7 Use ImageResampler in V4L2 grabber
Former-commit-id: c6ec92c17b07444a49a303cdced6f59347f98f76
2014-12-16 21:30:08 +01:00
poljvd e608b11caa Extract ImageResampler from X11Grabber
Former-commit-id: 63e95fa85fc0ef5a66f6eb8b396cf4b6370cf5dd
2014-12-14 14:26:59 +01:00
poljvd d89f504d83 Refactor V4L2 and X11 grabbers to share more code
Former-commit-id: 46176e53d1acf39f9bd0c0ecbb8e5fb5ab4d45be
2014-11-21 21:24:33 +01:00
poljvd 04c54ee7eb Fix typo error
Former-commit-id: 664fc81f7bcfab58ac543f08725992044e51d8db
2014-08-18 13:50:19 +02:00
johan 3eb29146dd Added a possible delay after connecting an Adalight device
Former-commit-id: 756fae2ebc57455bf6360dc96bf2ae5469460172
2014-05-04 11:31:13 +02:00
johan d5597d55a7 Disable the blackborder detector for effects
Former-commit-id: 2d4660f48c17977aabff52b7cbbc8d832b216f00
2014-04-30 22:53:05 +02:00
johan 8d75a57f18 Cleanup of XBMC 3D checker code
Former-commit-id: 26acf7dceb3e26a2e59af82736dec9fdf09c26d5
2014-04-30 22:46:26 +02:00
bimsarck b619fcda55 add 3D autodetection for xbmc with versions check
Former-commit-id: 6fd0195fdae82ebe5a26a6ce1138164e09e8b929
2014-04-26 00:58:47 +02:00
johan ef6aa76409 V4L2: Fix error with frame size of RGB32
Former-commit-id: ab98c7b87acb7654c40a715ed21c0857c11a30ff
2014-04-14 19:19:47 +02:00
poljvd dd1adc4e90 Merge pull request #73 from lobocobra/patch-1
Fix error in start script


Former-commit-id: 6a02b865c86befa29e970a7465b256cde5335e95
2014-04-11 19:52:33 +02:00
johan 6fafb23a3f Added functionality to disable the embedded v4l2 grabber when a higher priority source is active
Former-commit-id: 4c0403584093a1fac29d16b502773c3ed11a13a9
2014-03-22 15:35:25 +01:00
johan c3ba03e0ee Fix v4l2 signal threshold comparison
Former-commit-id: 698a22af752fc42e778e97587938ed6542653bd9
2014-03-22 14:49:24 +01:00
poljvd fb73aa786c Bugfix in Borderdetector
green was checked twice in isBlack(). Should have been green and blue.

Former-commit-id: c21a5feffa2245414bbf2b224e8a4dc8955f5e00
2014-03-17 11:06:30 +01:00
johan dd0a18642b Fix build
Former-commit-id: 1b98924c9d9292b6661a5c9e3e17b06813348b54
2014-03-04 23:22:46 +01:00
johan 5e3cb497fa Add support to set the threshold for each RGB channel separately
Former-commit-id: 5edb206bb2657e78f711f67625fd5f6164d8296c
2014-03-04 22:04:15 +01:00
johan 4888294e03 Reduce copying of data
Former-commit-id: 858ca2331d68458acf87359df87cb25fd051fa30
2014-03-04 20:32:54 +01:00
johan e790cb87ca Fix embedded V4L2 grabber
Former-commit-id: f9dc759a8fcac8ac95288b12a007e9c78aed82c3
2014-03-04 20:17:38 +01:00
johan 69c64c379a Merge branch 'master' into merge_v4l2
Former-commit-id: 015ff84842dc7a90ff603234ed2bb2a6afd27ab2
2014-03-01 19:47:24 +01:00
Johan e0d405034f Add support for Python 3
Former-commit-id: b6aec954ba0e79ba5697ea8cc305eb9f7d29f332
2014-02-26 18:10:17 +01:00
johan 99fd50805c Added image handler to v4l2 grabber to send colors to Hyperion
Former-commit-id: be6fb4dd8080b3325ba6161f48c093f8a145786d
2014-02-23 22:43:02 +01:00
johan e58f84d5c8 Merge branch 'master' into merge_v4l2
Former-commit-id: 97b281cc14b3bc239fc5eab1f66c9d15e67f753f
2014-02-23 21:53:13 +01:00
johan 69d6e47328 Create image callback using Qt signal
Former-commit-id: cf469ba01ffd26d286e6fb8d9f081cf126042e50
2014-02-19 21:52:37 +01:00
johan f0c35071da Move V4L2 grabber code to separate library
Former-commit-id: f3003eb0142af3d085ccf93fff1b297ebc2321fc
2014-02-07 21:11:50 +01: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
johan 3d3c8c93b8 fixed some XBMC checker reconnection
Former-commit-id: ec9c327965597b4b552d939cfb664ca95e2f1786
2013-12-21 17:20:51 +01:00
johan 78795b9fa8 New XBMC checker functionality: 3D video detection (filename based) and screensaver detection
Former-commit-id: ea95e4ecde3ab9378bdf9c4c60950713947bd0ac
2013-12-21 14:32:30 +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
T. van der Zwan 2efd751c76 Removed bootsequence library
Former-commit-id: 5f3f927236a26ae00299a8e7a914e98ace3b328a
2013-12-13 14:55:34 +00:00
johan 0537fdc741 Moved effect configurations from the config file to effect directory
Former-commit-id: b8db13f25b93a0007adf613f0310a1cfbb6b8224
2013-12-11 21:58:59 +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 1ec84005c0 Changed hyperion args variable in module from string to dict
Former-commit-id: ae94dca70590e3ed15e991172b7458cf4298e655
2013-11-30 17:41:38 +01:00
johan ae1bd7d254 Effects added to configuration file
Former-commit-id: 2ff4700ee5d5bc3a7dd5a29ecd35c1c9dd189873
2013-11-30 12:42:08 +01:00
johan 554bc30c35 Added the possibility for scripts to have an argument string
Former-commit-id: 7c5cec34be56d926edda1c9955dc57de838622f9
2013-11-30 00:28:04 +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 d24fddaf21 Python interpreter added to EffectEngine
Former-commit-id: f721f5952efe305d66347d9074ff760baabd2f18
2013-11-26 21:38:24 +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
johan 6db1db3129 Added ProtoServer to the Hyperion server;
Updated the configuration file and schema to be more flexible;


Former-commit-id: 0f670ae6f9512abedf279fe0b014802e31f2f16f
2013-10-13 14:48:59 +02:00
johan 9247c577ba Proto server added for better performance of remote application using a binary protocol;
gpio2spi added which can be used to switch the GPIO pins into SPI mode if necessary;


Former-commit-id: 237f495289ce2f4afae49b36684f464937dbd30f
2013-10-11 10:06:24 +02:00
T. van der Zwan 79be6ea4a2 Updated the snapshot creation based on the latest release of VideoCore (included backwards compatibility if correct)
Former-commit-id: 5bb8d6d7cd673ac8c08a2c9a8f1995231074d327
2013-10-02 07:46:12 +00:00
johan cf0f94224f Changed XBMC Video checker from emitting all black on a lower channel than the grabber to commanding the grabber 2013-09-23 22:33:38 +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 8441dd51cc Added/Updated/Fixed doxygen comments 2013-09-09 02:54:13 +00:00
T. van der Zwan d2d7265f02 Added doxygen comments 2013-09-06 19:26:58 +00:00
johan 3187fc84a6 Doxygen comments added 2013-08-31 14:36:54 +02:00
T. van der Zwan 4a19095234 Added factory to boot-sequence
Added json-config for boot-sequence.
2013-08-25 16:20:19 +00:00
johan 213545afe7 Added config file settings for XBMCVideoChecker 2013-08-24 11:51:52 +02:00
johan 026937d5e1 Changed XBMC video checker from HTPP (using QNetworkAccessManager) to a plain TCP socket because of thre required CPU 2013-08-23 21:40:42 +02:00
johan c4eb715592 XBMC video checker added 2013-08-23 20:44:53 +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
T. van der Zwan 5010b9ce8e Added comparison operator to RgbColor. 2013-08-21 14:09:40 +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 638d5aa424 set color on json connection implemented 2013-08-18 12:21:07 +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
johan 16c260b3dc added skeleton for the json connection server 2013-08-17 15:39:29 +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 cbbb1d740b Fixed memory overwrite bug. This fixes the png writer and led control. 2013-08-03 23:24:22 +02:00
T. van der Zwan 240218a6bd Added HyperionPng with similar interface as Hyperion to test frame-capture and handling. 2013-08-02 11:54:09 +02:00
T. van der Zwan 10b5b80675 First working version with some test executables 2013-07-26 20:38:34 +00:00