Commit Graph

612 Commits

Author SHA1 Message Date
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
redPanther
f2e9193987 fix #674 (#676)
* 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


Former-commit-id: 56e3e0d1014999b2555418c7b5a2898ac29fb5f1
2016-06-04 19:26:34 +02:00
penfold42
e8207cfe31 fix more "dos" line endings (#673)
* 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

* 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

* removed dos line endings

* Found some more "dos" line ending files


Former-commit-id: c756e3ccc153fd36e23a26eff37a1230bdd4b9b4
2016-06-03 16:46:45 +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
ntim
03cee33784 Fix for Philips Hue flickering when switchOffOnBlack is set true (#668)
* Improved switch off on black feature.

* Changed "isnan" to "std::isnan"


Former-commit-id: 5db2b97674661e4e19f796a91dd443a501268e27
2016-05-31 22:54:47 +02:00
penfold42
6f43fe1196 New QT based udp driver (#662)
* 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

* 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

* half way thru re merging the newudp support

* Whoops.... dont know how it compiled before..

* Removed debugging that was commented out


Former-commit-id: ac4330422f93f3d594dfcba5593759288298d25e
2016-05-30 23:58:31 +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
tpmodding
019d4ba6d8 Update LedDevicePhilipsHue.cpp
Changed "isnan" to "std::isnan"

Former-commit-id: 528f02452762fade16b84d17dc7692de9129559c
2016-05-27 11:16:42 +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
brindosch
13b08d5df1 Merge branch 'Beta' of https://github.com/hyperion-project/hyperion into Beta
Former-commit-id: 7e6f328f5cd1912374fb25a5676e07b9e44630be
2016-05-26 07:46:01 +02:00
brindosch
716935dfff xbmc checker fix (3)
Former-commit-id: c8b406033d333177dd2470522b2d8526a9c02d07
2016-05-26 07:45:54 +02:00
redPanther
a41051cc84 prevent colorsmoothing from flooding led device with data when no new input data is available (#654)
resolve compiler warnings

Former-commit-id: c7fbdce5dc7fde8b8e188320408dc547b9ad5e51
2016-05-26 07:01:10 +02:00
brindosch
84d9f4ef80 xbmc checker fix (2)
Former-commit-id: 735f8e3e356b0fca0562185f30532860c7879ee3
2016-05-25 21:15:49 +02:00
brindosch
1e319be54a hotfix x11grabber
Former-commit-id: 7068bad863cf229e01382f859ff06a51dad82d17
2016-05-25 18:53:09 +02:00
Funatiq
45dff6d1d3 Reduce saturation in backlight (#651)
Former-commit-id: c2c4fd6f957c3623e03c37393cf3c03a7a27dc1e
2016-05-24 22:15:39 +02:00
redPanther
06afe06774 better output for effect path loading (#652)
* better output for effect path loading

* effectengine: error when no efx available


Former-commit-id: 7724e56850ef9f9a703fb41e82baf88e5534f492
2016-05-24 22:14:45 +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
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
penfold42
c179b86b8d fix LedDeviceWs2812SPI to compile on gcc 4.6 (#643)
* 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

* 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


Former-commit-id: 42cc7325177c9fcc3d1bd29cbfe72f02118d3233
2016-05-22 12:56:44 +02:00
Funatiq
82f3fbdb20 Reorder Transform and Adjustment (#636)
Change order from "Adjustment -> Transform" to "Transform -> Adjustment"

Former-commit-id: 5b63d0bce98a80b5a2604e43772574ec6bbfd2a5
2016-05-22 00:30:53 +02:00
Funatiq
4afd730954 Better color adjustment (#637)
Only apply color channel if color is dominant. Grey color independent from color channels. Linear increase of color channel from grey to maximum.

Former-commit-id: cda9fca0084174877c45a7e9a867e6209ffe9e44
2016-05-22 00:30:28 +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
Rick164
4ccda40250 Kodi video checker bugifx (#633)
* Kodi video checker patch to make it compliant with recent JSON RPC API specs.

* Updated inline documentation for Kodi video checker.


Former-commit-id: e0760f55e1ddd61f10ae457c485aa01ae4507260
2016-05-17 02:54:10 +02:00
recliq
8310a6d9d0 added simple TPM2.net support to UDP output (#627)
Former-commit-id: 59356ae53c90e178a4bc198c6babc5832bb15d12
2016-05-15 18:39:26 +02:00
penfold42
a960894d14 Another option for Ws2812 - direct spi from the pi with 1 wire (#631)
* 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

* This add a new device type - ws2812spi.

I've (ab)used the SPI interface to send the correct timing pulses to keep the ws2812 happy.
THE RATE IS IMPORTANT!
A FIXED CORE_CLK IS IMPORTANT!

Attach the SPI MOSI pin on the Pi to the DIN pin on your ws2812

        "device" :
        {
                "name"       : "MyPi",
                "type"       : "ws2812spi",
                "colorOrder" : "grb",
                "output"     : "/dev/spidev0.0",
                "rate"       : 3800000
        },

* updated hyperiond.test-binary

* Updated default SPI speed to the "correct" value.
My Pi was undervolted so was dropping the core clock confusing everything

* Code cleanups
explicitly set the final 3 bytes to 0

* Removed latchtime option - not applicable

* updated test binary


Former-commit-id: d3c19c8374999f7a554bb25ca181a8a483f86289
2016-05-15 18:39:17 +02:00
penfold42
c17e4894d9 Apa102 fix if the led strip has more physical LEDs than you want to configure with hyperion (#626)
* 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

* started bug fixes for APA strips with more physical leds than configured

* 1st cut of changes to APA102.

now looks at config for "leds" which is the # of hardware leds in the strip.
This enables us to write the correct trailer length in the packet.

Also fixed a bug where switchoff was writing the wrong # of leds

* removed commented out old code

removed debug printf

* included prebuild test binary for Pi2

* Second attempt at the fix.
BEFORE:
If you have more physcial LEDs than defined in the "leds" "index" section of the config there is random junk added to the end of the strip.

WITH THIS FIX:
In the "device" section specify the number of physical leds with:
 "leds" : 212,
If this is greater than the number of led indexes, additional LEDs are set to black
If this is smaller than the number of led indexes, it is ignored

* included test binary

* Clean exit if the device config is missing or a non-supported device type is specified

Former-commit-id: 8ae96188fa74d91b13a921e7d5faf6d6ac1c42ee
2016-05-10 12:16:19 +02:00
Paulchen-Panther
536b51dba1 Update JsonClientConnection.cpp
JSON API: Get current LED color

Former-commit-id: 0b40c1eb1627afd8077bdf690109609fd531c2fb
2016-05-06 15:05:28 +02:00
RickDB
3227a3125b AtmoOrb - removed skip same color change.
Former-commit-id: 399ad830d9ecad8bf8d1e62241744f15631f0515
2016-05-05 14:48:33 +02:00
penfold42
deed8066b0 Piblaster fix (#614)
* 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

* Experimental changes to piblaster code to work how i think it should

It is now assumed that the PWM pins in groups of 3 correspond to RGB channels of the led.
                "assignment"       : "rgbrgbrgb",
Would result in:
//Channel number    GPIO number   Led channel
//      0               4             0 red
//      1              17             0 green
//      2              18             0 blue
//      4              27             1 red
//      5              21             1 green
//      6              22             1 blue
//      7              23             2 red
//      8              24             2 green
//      9              25             2 blue

* Ammend pwm channel mapping comments to match the code

* 1st cut of the new more flexible piblaster pin mapping support

it works but is still rough

* removed old "assignment" handling
- prints an error messaage if found and terminates

fixed the switchoff method

* removing iPins hard coded list of valid GPIO pins

* removed iPins array for switchOff function

* code cleanups

input validation

* Handle catching (and ignoring) SIGPIPE.
You can now kill and restart pi-blaster daemon and hyperiond will gracefully recover

* added a binary for testing

* Added sample config and my modified pi-blaster version to support more GPIOs

* moved hyperiond

* removed testing binaries

move sample configuration to the configs directory

* re enabled device config display

* removed sample configuration


Former-commit-id: 95e4d4ea2fb7cb5439e8cd597883a638da61a574
2016-04-29 16:00:33 +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
Rick164
d4dda2dcc4 AtmoOrb LedDevice now only processes new color commands and skips identical, saves last send color per light id separately in Qmap. (#602)
Former-commit-id: 38873e5b718c73d95111abcb10cf148f6a6ab18b
2016-04-21 14:51:43 +02:00
Rick164
02fef83bb8 AtmoOrb smoothing additions
* Updated smoothing options for AtmoOrb, can now choose between Orb external or Hyperion's internal smoothing.
With skipSmoothingDif you can set the maximum allowed color difference before overriding / clearing Orb smoothing during faster color change like for instance color <-> black.

* Updated inline documentation.

* Fixed command type typo in AtmoOrb device.

* Corrected variable spelling in AtmoOrb device.

* Make smoothing also match equal values for AtmoOrb smoothing differential


Former-commit-id: 3eede43c2f76fa324f0144aeac0526b8125ad149
2016-04-02 00:07:28 +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
brindosch
ad584aa548 Typos
Former-commit-id: fc7bc3c0e4bddcb5a6b778c2afabc3940a08782c
2016-03-23 18:54:49 +01:00
brindosch
f332473b77 Merge remote-tracking branch 'refs/remotes/origin/Beta'
Former-commit-id: 5bdbda1406bb0ddb99440502584604b85b0f3063
2016-03-23 17:53:32 +01:00
brindosch
fa66c3b2b5 Rework log messages
Former-commit-id: eac93c0fd78fdf353e940d08df3cabf0b962a3e2
2016-03-23 17:40:45 +01:00
penfold42
a3204ae6be LedDeviceFile now defaults to /dev/null if the output is omitted.
Former-commit-id: eff12ec16d08ffa00287ed68238ab6b397f1c53d
2016-03-23 21:28:31 +11:00
penfold42
7dce3ab798 renamed the "Test" device to be "File"
No functional changes, but
- files have been renamed
- the device name is now "file" not "test"


Former-commit-id: 3fbc03c3fe1d764654c1d28ebb80562ce6276ab1
2016-03-23 21:12:34 +11:00
penfold42
6143075365 1. changed default number of pwm LEDs to 256
2. Adds support for level shifters that invert the data
Config option - "invert" (integer)
if omitted, do not invert
if == 0, do not invert
if !=0, invert


Former-commit-id: fd5b2863a85b11ac3a8444d1e02822f852feb556
2016-03-22 23:50:14 +11:00
brindosch
fb7445b545 Update
Former-commit-id: 3c6ac5d2f618cd7499c16bca950ff3d41f855318
2016-03-22 01:01:54 +01:00
brindosch
1f18073f00 Merge pull request #534 from AEtHeLsYn/master
Color correction

Former-commit-id: 7be726f1adb8698684a2b4726650082ed517901f
2016-03-22 00:56:41 +01:00
brindosch
2677304ec4 Merge pull request #553 from ntim/support_for_philips_hue
Improved validity checks and memory footprint for Philips Hue

Former-commit-id: 65b450ae730fd5e06006a8fe6ab3e3b6ce260c43
2016-03-22 00:56:27 +01:00
AEtHeLsYn
3c2682b626 Update JsonClientConnection.cpp
Former-commit-id: 5014c392b3c7629b6f02ead321621f7edc560680
2016-03-21 17:42:13 +01:00
AEtHeLsYn
b46d231f75 Update JsonClientConnection.cpp
Former-commit-id: fef896ef86f04901cf2227a0897dd9ea999325b7
2016-03-21 17:07:02 +01:00
AEtHeLsYn
642de44c7c Update JsonClientConnection.cpp
Former-commit-id: 53b8cf73df6f3cec49886169b870e5490828716b
2016-03-21 17:04:02 +01:00
AEtHeLsYn
ef1f269c51 Update schema-correction.json
Former-commit-id: 223e5d183fd2ec83f61421aaa142bc86958fff6a
2016-03-21 17:00:01 +01:00
AEtHeLsYn
35b7707b3f Update schema-temperature.json
Former-commit-id: 3f5a96e0275e239ba0361905282b59a9bd4412d0
2016-03-21 16:59:46 +01:00
Mark Walker
d2973ff20b Add ws281x driver parameter for PWM channel
The RPi 2 and 3 have two PWM channels and 3 PWM pins available to the
gpio header.  BCM18 and BCM12 run on PWM channel 0.  BCM13 runs on PWM
channel 1.  This change allows BCM13 to be used by allowing the PWM
channel to be specified.


Former-commit-id: 3693ab438c2b369e6307c262d32bba509409e5b9
2016-03-20 22:05:24 -07:00
ntim
e0c3ece80d Deletion of qt network reply objects.
Former-commit-id: 258badb680014a187d76d9183080ea3de6895692
2016-03-20 13:33:41 +01:00
ntim
926f47fc1a Added more precise outputs on failures as well as some additional checks.
Former-commit-id: a0def586410d90abda002504d9c2ae88abc43088
2016-03-19 12:36:55 +01:00
ntim
d75a88eb9f Retreived one light more than necessary.
Former-commit-id: 6ee5b0f4a86210fcf4bf3ee96b369aff20c25720
2016-03-17 09:06:28 +01:00
AEtHeLsYn
75991c16e1 Merge pull request #7 from tvdzwan/master
Up-to-date

Former-commit-id: ca05f264b29838c2444f2687ff1bf510bbf9d9af
2016-03-16 10:40:38 +01:00
RickDB
7adb339dea Updated orbIds config setting and sample config.
Former-commit-id: 350db40b53d04efbb43dc8c87c88bf2eb378fa6b
2016-03-15 18:37:55 +01:00
RickDB
f783c59185 Corrected indenting in LedDeviceFactory.cpp.
Former-commit-id: 31713a4a0ce9bd25fd1e39969bbb481363a80167
2016-03-15 12:06:24 +01:00
RickDB
e5545eaac0 Code reformatted.
Former-commit-id: 6f3688791602efb33389c3ba789e7a8a723ee290
2016-03-15 12:03:00 +01:00
RickDB
dcc6a9b449 Make sure the byte array is empty before filling it.
Former-commit-id: 64f76fa358234e131377ecfabf196f3c7324e79f
2016-03-15 11:45:25 +01:00
RickDB
5be072be24 Added more inline documentation.
Simplified joinedMulticastgroup.
Removed non-required functions and includes.


Former-commit-id: 829b5c6f89ee1e9a4789dbe18f911b05e3b5d8e1
2016-03-15 11:10:04 +01:00
RickDB
fdb164da0a Added multi Orb support, Orb ID should match that of leds index with a +1 offset (index 0 = Orb id 1 etc..)
Code cleanup.


Former-commit-id: af8a6df876f334c9a65b1a936b5bb85b380d86d1
2016-03-14 23:19:20 +01:00
RickDB
0d8c4ac5fb Correctly set buffer size based on number of leds so that it works with non-standard AtmoOrb setups.
Former-commit-id: 6aec2410d6e870c8489e565269f2990e3a9e1b85
2016-03-14 21:19:47 +01:00
RickDB
bd1a45216a Initial AtmoOrb support including sample json config.
Former-commit-id: 51ad57afd39695095b5886966e8c71c4e47f269e
2016-03-14 20:19:19 +01:00
AEtHeLsYn
1f1aee0c37 Final fixex
Former-commit-id: 7b2e1a33ab7705dddadfa1ec99d3d7c379ab10dd
2016-03-13 21:14:22 +01:00
AEtHeLsYn
28f67871dc More fixes
Former-commit-id: 331ba604dba8aa16f9cf42c5827c8542502be545
2016-03-13 13:05:47 +01:00
AEtHeLsYn
a5a17776d4 BugFix
Former-commit-id: 8887ee93d5bcaa7ee13f4f5afb601a65d59ee113
2016-03-13 12:10:54 +01:00
AEtHeLsYn
e4d77660a4 Bug fixes
Former-commit-id: a6783a75edb83988d1737df3d4a7a14c71ec4223
2016-03-13 11:59:36 +01:00
AEtHeLsYn
84c48b9a0a Merge remote-tracking branch 'refs/remotes/tvdzwan/master' into test
Former-commit-id: 19831aa23078659d7f285b0e91bffff21a932283
2016-03-13 11:52:38 +01:00
brindosch
deb010cc22 fix leddevicephue
Former-commit-id: eb4f93bf7a59d496f83d8db534f99cf589c46bc9
2016-03-12 00:55:28 +01:00
brindosch
7508b9c9b0 Merge pull request #535 from redPanther/prio_cleanup
Prio cleanup

Former-commit-id: 9b801630fe3c32232666cc2c5f3f3cfd43da381b
2016-03-11 19:26:01 +01:00
brindosch
e82643ff50 Merge pull request #533 from markwal/rpi_ws281x
Add new WS281x driver

Former-commit-id: 1264edf7f5e0bc29f091e72989ab7116b78056bf
2016-03-11 19:10:13 +01:00
brindosch
9e3b98dfc3 Merge pull request #538 from ntim/support_for_philips_hue
Reads hue light ids in case the user did not supply any.

Former-commit-id: 7dc1e6a14c0bd2b08439d13e7e2acf9f539cf1c1
2016-03-11 19:08:11 +01:00
brindosch
385d5a896d Cleanup and bugfixes
Former-commit-id: 8622ff7fb963eb7c52e816f1c779e9e9869ece53
2016-03-11 19:06:36 +01:00
AEtHeLsYn
28fd10cdcd Update JsonClientConnection.cpp
Former-commit-id: 6216d16565b82427094b030cede48ee589f5c969
2016-03-11 12:46:09 +01:00
AEtHeLsYn
c937dfa674 Update JsonClientConnection.h
Former-commit-id: adc564d5259638c3e79ab5a12550a89c0d719186
2016-03-11 12:32:48 +01:00
AEtHeLsYn
da7183d28b Update Hyperion.cpp
Former-commit-id: 5bad6209c49a8fd9eba5582119d9e130b9bea565
2016-03-10 18:13:46 +01:00
AEtHeLsYn
3370cc6271 Update MultiColorTransform.cpp
Former-commit-id: c743c2fec460d645b64c1172212469287af6a8db
2016-03-10 17:54:39 +01:00
AEtHeLsYn
b6c08ae34f Update CMakeLists.txt
Former-commit-id: 808a5c9a22a57f6d6ee77adb1c1f112b291b7188
2016-03-10 17:28:34 +01:00
AEtHeLsYn
9e13303a4a Added files via upload
Former-commit-id: 55b74524b06af6f5c443053a56216c0db465fb2f
2016-03-10 17:27:25 +01:00
ntim
7849e9f23e Reads hue light ids in case the user did not supply any.
Former-commit-id: 3323fe83e3bb5f42c4b6c98cbbb021fb929cf54d
2016-03-10 09:33:16 +01:00
AEtHeLsYn
90b9acf68e Update Hyperion.cpp
Former-commit-id: 4c3f0a561d7def20dd713add0d437bdf12431e0b
2016-03-09 19:57:03 +01:00
AEtHeLsYn
63e3380ff7 Update Hyperion.cpp
Former-commit-id: 24638e6009da0dc3a2168caef53e09664c1db095
2016-03-09 19:45:00 +01:00
AEtHeLsYn
88e4737b8b Update CMakeLists.txt
Former-commit-id: 8afa5615ac8ff62ac6492083f2d2c487cf305dbc
2016-03-09 19:42:54 +01:00
AEtHeLsYn
1fa54a1cee Update CMakeLists.txt
Former-commit-id: 5182f0e28c8914a970db7c4c0d9fee68d7481e65
2016-03-09 19:42:18 +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
eb64cc6601 Merge remote-tracking branch 'upstream/master/master' into prio_cleanup
Conflicts:
	config/hyperion.config.json

Former-commit-id: 7f6fd562b78a6c4b646d9f1587941265b2ca12e0
2016-03-09 07:09: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
Mark Walker
78e606a1c4 Add new WS281x driver
Add a new WS281x driver which is a wrapper around jgarff's ws281x library which
works on Pi B+, Pi 2, Pi Zero and probably Pi 3 as well.

jgarff's ws281x library is included as a submodule


Former-commit-id: e473dfd36d31b14598da5e56e4b8bf9f2aa7bb24
2016-03-08 20:41:13 -08:00
brindosch
14fc1d9bb6 Merge pull request #514 from penfold42/master
add configuratble latch time for ws2801

Former-commit-id: cd226d63ebf4d158ce72cb88d49887d8e19a185c
2016-03-08 22:53:29 +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
Serhan
7f4ea9ae7b Merge pull request #509 from tpmodding/patch-1
Update CMakeLists.txt for OpenElec -> Python 2.7

Former-commit-id: 7a088e38a0079bef4a083a3336da92036773ef45
2016-03-08 15:52:50 +01:00
redpanther
ea89a85ddb make protoconnection to invalid host less blocking
Former-commit-id: e7a89c87b15fbe9809ec63468b59ecc55c6d3e72
2016-02-25 15:21:25 +01:00
penfold42
3be4ebe6dc clean up formatting
Former-commit-id: dc3a3c7597af42b8fb37f09011d52ebacffd8959
2016-02-25 22:33:13 +11:00
penfold42
c30879017c Merge branch 'master' of https://github.com/penfold42/hyperion
Former-commit-id: eb4dcbd95b97c70fd54a204a1028636237ddda0c
2016-02-25 22:25:19 +11: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
tpmodding
63e150756d Update CMakeLists.txt
If you want to compile for OpenElec on Raspberry Pi, you must use Python 2.7

Former-commit-id: 813a997161461b90626359e2e23149f8fab59fbf
2016-02-24 00:24:46 +01:00
tvdzwan
9e03b4beec Merge pull request #496 from wisc17/blackborder
Blackborder Improved +

Former-commit-id: 7de859369bb5dec4bb3672079bb1169d87d12ad5
2016-02-23 21:03:05 +01:00
tvdzwan
257a63acf9 Merge pull request #495 from Danimal4326/master
Fix compile issue for missing ceil function

Former-commit-id: 4540e6ce6b7a5fe4b7c86e0489d62da840227ca7
2016-02-23 21:02:57 +01:00
tvdzwan
78b1c6fe39 Merge pull request #444 from penfold42/master
Add UDP protocol support

Former-commit-id: b2d91d3963e7eeacfc7d57a507cfc70f32ac9a5d
2016-02-23 21:02:39 +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
0f17e031e8 basic loop connection detection. prevent if you configure forward to 127.0.0.1:<port> and your server has the same port.
But this doesn't protect if not forwarded to localhost "127.0.0.1". Loop connections across different hosts arn't detected too.


Former-commit-id: 464a80708ebd11c0f7c83dc87a1afe0f10e0e078
2016-02-18 10:32:38 +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
46c5a2ec05 use correct include for std::runtime_error
Former-commit-id: a96b727cc0258fda9684f5df52084dd8d96068e3
2016-02-16 15:56:20 +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
738bafee99 forwarder: add missing include
Former-commit-id: 58d07b73ff1ad321a9cfbf73895b438665ce3c14
2016-02-16 14:59:31 +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
penfold42
3bd03e73ff Merge branch 'master' of https://github.com/penfold42/hyperion
merge to local


Former-commit-id: ebba9a31b2139201b75dc098eba8c8ee9d630ebf
2016-02-13 23:01:04 +11:00
penfold42
ca24450618 added configurable latchtime for 2801 SPI driver
Former-commit-id: a10b0bd24a85580b021c735b30ebd2635180a514
2016-02-13 23:00:31 +11:00
Danimal4326
3996ff789c remove include of cmath lib
Former-commit-id: 004c76c724b9739d977a93d3574821db2c4de2e8
2016-02-11 12:55:41 -06:00
wisc
63ec2909eb added bottom right to osd mode
Former-commit-id: 3972abaf30d46558d310dbc5e2d164330e9a5b63
2016-02-11 15:50:51 +01:00
Danimal4326
0661ad74f6 Fx compile issue for missing ceil function
Former-commit-id: f5a6ac2c19b73aa48b5f4292cfa912dc2936701b
2016-02-10 12:22:19 -06:00
wisc
773222192d fixed upd merge conflicts and fadecandy compiler warning
Former-commit-id: cb9506a68deff80a331f6455c3cb8fa783a2140e
2016-02-10 00:57:21 +01:00
wisc17
d6b5dc7ae6 Revert "Update LedDeviceAPA102.cpp by pcaffardi"
Former-commit-id: 493b32c03f922cc26d9fb4fce4778636f6a96e84
2016-02-09 20:21:49 +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
tvdzwan
cf34f45daa Merge pull request #484 from wisc17/apa102
Update LedDeviceAPA102.cpp by pcaffardi

Former-commit-id: 0e586eda7636b4abb378fe8adf1b35145e63eb1f
2016-02-08 14:55:08 +01:00
tvdzwan
f3cd0451c9 Merge pull request #483 from wisc17/blackborder
Blackborder Improved + (bugfix and enhancement)

Former-commit-id: 2d82dca6fafbe6eb019027c37abf679fd7066980
2016-02-08 14:54:48 +01:00
tvdzwan
3280f7198d Merge pull request #469 from redPanther/fadecandy
fadecandy fix

Former-commit-id: 4686a0ead7ba44c13dbc4ac1f0f876d9a4d165c3
2016-02-08 14:52:48 +01:00
wisc
79dda5e840 Update LedDeviceAPA102.cpp by pcaffardi
Former-commit-id: e7efe8917fc10ceb860e44bbb37442cffa3512db
2016-02-07 17:40:24 +01:00
wisc
543042b870 pcaffardi/patch-1
Former-commit-id: 4a6737d50727518ae44f494be46a7c9c2fb54513
2016-02-07 14:52:44 +01:00
wisc
2b703de669 bugfix, config enhancement and 3 detection modes
Former-commit-id: edfc3e7ccf7b7d727e73a8563acb521045026d5b
2016-02-07 13:26:40 +01:00
redpanther
b6060d392e make opc channel available in via config.
Former-commit-id: 6a065cd049e29d7184a3aa1454de0fe1855e9941
2016-01-27 10:44:51 +01:00
redpanther
a257f185c9 increase fadecandy maximum amount of leds
remove debug code


Former-commit-id: d74025128978e4e26d49fb57215f660bd824895b
2016-01-26 15:08:21 +01:00
frostworx
bbfded147e minor qt5 fix
Former-commit-id: 65ab3bb14d6a7ab52e6ab1e8eaa85321dc5fa543
2016-01-22 17:17:45 +01:00
tvdzwan
6b052081f7 Merge pull request #460 from ntim/support_for_philips_hue
Transition to QNetworkAccessManager for compatibility to QT5

Former-commit-id: 07f30e86eaf0677a3199f75bf5f7c8f760822634
2016-01-21 20:49:02 +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
wisc
8f0e1f1199 switch on consistent detection only and also check right side and bottom pixel
Former-commit-id: 4da53a39918a3676c707215daa66d8ae263ed92a
2016-01-21 20:25:08 +01:00
Paulchen-Panther
93f2b8b65f Update X11Grabber.cpp
Former-commit-id: ab34a0615e2233322bc2260f297130e30857ac24
2016-01-21 16:51:20 +01:00
Paulchen-Panther
a53f65f3a0 Update X11Grabber.cpp
Former-commit-id: 08b227fba33ca0f6974f10b085cf57c18e716428
2016-01-21 16:40:46 +01:00
wisc
391e2e552c release candidate
Former-commit-id: e81f58386ce64f836561faf30ef2c3fb154358b5
2016-01-19 23:43:00 +01:00
ntim
6b860a7e24 Removed all QT5 switches
Former-commit-id: 7a481a921d572e4c0eccebfb1ba3abbab61d25fc
2016-01-18 10:41:45 +01:00
ntim
83c92703eb Merge remote-tracking branch 'upstream/master' into support_for_philips_hue
Former-commit-id: 51089fb3522bf9c228d67f2c2f9a1a5b33e5d0a5
2016-01-18 10:36:20 +01:00
Paulchen-Panther
2a1673d8c3 Update X11Grabber.cpp
Former-commit-id: 849f1a2b6217b76739f84f6c9fb5645cab584f98
2016-01-17 18:04:08 +01:00
tvdzwan
424c00e767 Merge pull request #448 from wisc17/blackborder_alternative
Blackborder Improved

Former-commit-id: 762bb519ebefd6755362178fdc5b9d5ed3508c3b
2016-01-13 22:43:30 +01:00
tvdzwan
491c7c4d87 Merge pull request #445 from frostworx/master
added optional QT5 support - LedDevicePhilipsHue needs proper fixes

Former-commit-id: a9b0dd2af92266ad137c4a3ac05dbeec6a6c102b
2016-01-13 22:43:15 +01:00
tvdzwan
1ca31085c7 Merge pull request #442 from redPanther/master
add FadeCandy/OPC device support

Former-commit-id: 6280f77551c607acb301328ce197ca357d0a8b11
2016-01-13 22:42:44 +01:00
tvdzwan
8775b3f273 Merge pull request #428 from guddimon-/master
make hyperion more robust

Former-commit-id: 3d00e9be63ccd7904362d6c60702d27c282047de
2016-01-13 22:42:31 +01:00
ntim
9c1e565d33 Transition to QNetworkAccessManager for compatibility to QT5
Former-commit-id: 6e65da9338d131d1017051e505db8c28696adf4f
2016-01-10 22:17:59 +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
frostworx
defe217c89 added optional QT5 support - LedDevicePhilipsHue needs proper fixes
Former-commit-id: 7f0971ccda221933da4be836628532e7cfc7c085
2016-01-06 17:31:23 +01:00
penfold42
382f22f23c add udp protocol support
Former-commit-id: a92810f14cf2af15710a38246a742ca2b94fd3bd
2016-01-06 20:40:48 +11:00
redpanther
9182dd5af7 fadecandy led device:
implement switchOff methode
tidy up code and add doxy comments


Former-commit-id: a162e2aae756f8b74b8e65f08740c00f3c820e50
2016-01-04 14:29:47 +01:00
redpanther
7f5a664864 set fadecandy default port to original fcserver port number
tune debug output of fadecandy device


Former-commit-id: 651459e5294ce5721ebe3bb2a6acdc1d096d9cfb
2016-01-04 12:26:06 +01:00
redpanther
13715202d8 add fadecandy led device
Former-commit-id: 490fd3ee66041b35b95d2c7ec110cc70e4c01d8d
2016-01-04 12:16:44 +01:00
redpanther
0dcacede81 add fadecandy led device
Former-commit-id: 4076e6ec2860ceaa53fdd07c47c40e45f2329de9
2016-01-04 12:06:56 +01:00
wisc
633985930b 3line detection
Former-commit-id: a63c03bc276ef218981213fbb9743a3d6d12d8b6
2016-01-04 00:20:47 +01:00