Kakifrucht / LightBeat

🎶 Music visualizer for Philips Hue compatible lights.
https://lightbeat.io
GNU General Public License v3.0
44 stars 7 forks source link

Change effects with command #9

Open jdubz666 opened 4 years ago

jdubz666 commented 4 years ago

Hi,

Lightbeat is awesome!

I've been starting Lightbeat through the command line but...

I'm wondering if there is a way to change effects in command line. Eg Switch colour presets with a command?

Many thanks!

Kakifrucht commented 4 years ago

Currently there is no command line support in LightBeat, but I'm interested to hear more about your use case. Are you using LightBeat in a headless (no GUI) environment? Currently, in order to even connect to the bridge you would need the GUI somehow, and enabling the entire thing, including settings, to run via command line only would require alot more abstractions, as currently everything is pretty tightly coupled to the GUI. Once you set everything up I guess you wouldn't necessarily have to use the command line anymore, but there are some things that just wouldn't be trivial to move to the command line, like color sets.

Thanks for using LightBeat!

jdubz666 commented 4 years ago

Hi thank you for your response. Yes I’m using Lightbeat headless. Currently I’ve automated activating Lightbeat by using “java jar command” and start on open. Along with that I have other lights that also start and are reactive to my music. So if my other lights are activating to red and green scene. It would be great if I could open Lightbeat and Lightbeat would switch to a red and green ColourSet if specified.

All and all Lightbeat has perfectly satisfied my cool lighting needs.

Please let me know if in the future there is a way to manage Lightbeat outside of the GUI :)

Kakifrucht commented 4 years ago

Unfortunately in order to make LightBeat a full command line supported tool it would require some major decoupling when it comes to the connection setup, defining color sets and changing+validating settings in general, which I find to be out of scope for this project right now (of course, pull requests always welcome!). I must confess, when originally working on it I really didn't think people would want to use it via command line, which would make adding support for it now a bigger project. I feel like if I were to actively put more resources into LightBeat I would rather work on supporting the Hue Entertainment API for better latency and adding even more effects, fine tuning the beat detection or porting the entire project to a stack that could reach more people while being more user friendly with reading your system audio (Java really is suboptimal here..).

Kakifrucht commented 4 years ago

I'm keeping this open, as it is definitely not a bad idea to make LightBeat fully headless. However, I don't think demand is currently high enough to work on it. Thanks for bringing it up!

jdubz666 commented 4 years ago

Appreciate it! Cheers!

wuschi commented 2 years ago

Hi,

I don't know if this is of help, but I used LightBeat for a party several years ago. I had two separate zones with music streamed from two headless raspberry pies. Thus I had to modify LightBeat to support at least basic headless operation.

If I remember correctly I set up basic configuration for the zones on my macbook in GUI mode and then copied the configuration to the raspberries and started LightBeat in cli mode.

As the raspberries weren't able to handle the lights (~ 10 hue spots per zone) I also had to implement some improvements regarding performance/latency, like separate worker threads for each spot and discarding outdated hue api calls.

Unfortunately I forgot about it and never pushed the changes back to my forked repo until now. I rediscovered LightBeat recently and finally pushed the changes back to my fork in case it is of use for someone...