Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Discussion] Support for intensity across channel ranges? #3

Open
dmeltzer opened this issue Sep 16, 2016 · 2 comments
Open

[Discussion] Support for intensity across channel ranges? #3

dmeltzer opened this issue Sep 16, 2016 · 2 comments

Comments

@dmeltzer
Copy link

Hello,

A feature I'd like to implement for my own needs is the ability to give the osc section a range of channels, and to map the level intensity across them. The usecase is to use an LED striplight as an eye-candy realtime analyzer, where the higher the value from sound2light, the more LEDs turn on. If this sounds like a fun feature to include, I'd love to do this in such a way that I could turn this into a PR. I've just started looking at the codebase, but I'd like some feedback and opinions about this feature before I get to deeply into it. Is this something you've thought about? Does the feature sound useful?

@HendrikNoeller
Copy link
Contributor

Hello Daniel,
I do not have the final word on any decisions regarding features of the software, but we generally object to implementing "higher level" effects and features into the software, as we believe these need to be programmed inside the console, where the light is designed, and then triggered by an osc value from sound2light. On the other hand I do not know if it is possible to control this sort of an effect by a singel osc value. I will forward this issue and keep you updated.

@HendrikNoeller
Copy link
Contributor

Hello Daniel,
we have decided that we would very music appreciate a pull request of this feature, as it is not trivially implementable in a lighting console, yet sounds very attractive.

I suggest you take a look at how OSC commands are generated and passed from the GUI to the model:
Start at qml/OscMessageDialog.qml. This dialog calls a separate qml file depending on the console selected. These files then describe a gui for each type of message to be sent (Channel, Submaster, Cue...) that can both generate the message from its current state or restore its state from an osc message. We suggest you add another type of message called something like "Channels as Meter" or "Channel Range", that allows the user to chose the channels of the striplight. You'd then need to pass these messages down to the responsible TriggerGenerator(.h/.cpp) that takes these messages and sends them depending on the current level of the frequency band. There is only a levelMessage, onMessage and offMessage parameter - you could add an array called rangeMessages[] that stores the representative osc messages for the channels called, leaving space for the intensity parameter at the end, like this: ["/eos/channel/1=", "/eos/channel/2=", "/eos/channel3="]

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants