Page 1 of 2

Master slider per frame

Posted: Tue Oct 15, 2013 2:49 pm
by Stefan Riemens
Hi all,

Thanks for a great piece of software! I've just found one feature missing, and would like to hear other people's opinion on this:
At our church, we have a bunch of led lights, for which i've created a bunch of scenes to have them change color. For every scene, I put a button in a solo frame to change the colors. So far, so good. However, I would like to have one slider to dim them, regardless of which scene (function) happens to be active. This seems impossible at the moment (note: I can't use grand master for this, because that would effect other fixtures as well.)

So, I've looked at the code and made a real quick and real dirty proof of concept, in case I failed to explain myself clearly :)
https://github.com/stefanriemens/qlcplus

Is this something more people would like to see? Cause in that case, I'd be happy to pursue this code-wise.

Thanks,
Stefan

Master slider per frame

Posted: Tue Oct 15, 2013 3:13 pm
by Jano Svitok
Once upon the time, in QLC before Heikki started his last refactoring (see the modern fairy tales? :) ) sliders in VC could be used as (inhibitive?) submasters.

I don't remember how did they function, but I can imagine this:
add new [mode](https://github.com/stefanriemens/qlcplu ... der.h#L131) to VCSlider (Submaster), that you could assign functions to it (copy code from VCSpeedDial/VCSpeedDialProperties) and that would adjustIntensity like you did for the frame.

I'm not sure if this would be better than your proposal, nevertheless it may be more general.

I would welcome such addition.

Master slider per frame

Posted: Tue Oct 15, 2013 3:21 pm
by Massimo Callegari
Guys, I think the best solution here is to add a "special" mode to sliders where they can act as submasters.
In other words, when their value change, they will notify it to their parent widget and affect the intensity of all the running functions into it.
I guess this is what you want, right ?

Stefan did it right in his patch. My idea is a little bit more generic and not related to frames only. Dunno if this makes sense though.

Master slider per frame

Posted: Tue Oct 15, 2013 3:26 pm
by Jano Svitok
My idea was to create 3rd mode for sliders, independent of all other widgets - they would affect the functions directly. It's more work to configure since you ave to add all the functions from scratch, but gives more flexibility, like you can e.g. split buttons in a frame in parts and control each one separately.

Master slider per frame

Posted: Tue Oct 15, 2013 3:31 pm
by Jano Svitok
Stefan, I like your idea of using adjustIntensity() for this thing - for submasters, I would try to duplicate grand master mechanisms in engine/src/universearray.cpp, that are more complicated, more fragile and less efficient.

Master slider per frame

Posted: Tue Oct 15, 2013 3:31 pm
by Massimo Callegari
@Jano: Yeah, that can be a solution too.
I would say there might be two options (like what I did in DMX dump):
- manually select functions
- all functions in this frame

What do you think ?

Master slider per frame

Posted: Tue Oct 15, 2013 3:37 pm
by Massimo Callegari
Noooo please universearray nooooo :)
I prefer much more to go through adjustIntensity

Master slider per frame

Posted: Wed Oct 16, 2013 10:14 am
by Stefan Riemens
Right that sounds like a plan as well. It's probably even easier to implement that way as well. I do wonder if it is as intuitive though. (disclaimer: I'm the technical who started doing lighting. I have virtually no experience with other software or lighting desks). Logically, I'd expect this to be part of a frame, rather than a random slider.
On the other hand, frames are gaining features quickly already, so it might become to heavy a tool if all you need the frame for is this dimmer functionality.

In any case, I'd be happy to implement this either way (and I'll keep clear of UniverseArray :)

Stefan

Master slider per frame

Posted: Wed Oct 16, 2013 4:20 pm
by George Qualley
Looking forward to this!

Master slider per frame

Posted: Wed Oct 16, 2013 4:27 pm
by Massimo Callegari
Stefan, can I already merge and evaluate your changes or do you want to improve them ?
Makes sense for the slider to be a part of the frame (like what I did on VC cue lists) but I'm 99% sure that some user in the future will ask "is it possible to control the intensity only of 3 of my 15 widgets in the frame?" :)

I'm kinda getting used to this... :P

Master slider per frame

Posted: Tue Dec 03, 2013 9:53 pm
by Stefan Riemens
Finally gotten around to this... https://github.com/mcallegari/qlcplus/pull/210

I have added a new mode to sliders, namely submaster. A submaster slider, will submaster channel groups. If multiple submasters are assigned to a channel group, they will both perform their submaster duty.
Example:
channel group red is set to 255
first submaster over red is set to 200 -> channel group red output is 200
second submaster over red is set to 25 -> channel group red output is 20

Hope that makes sense :)

Stefan

Master slider per frame

Posted: Wed Dec 04, 2013 2:13 pm
by Joep Admiraal
Nice, I am going to use this as soon as it gets merged in.

Master slider per frame

Posted: Wed Dec 04, 2013 2:52 pm
by Massimo Callegari
I'm sorry but I don't think I will merge this huge change.
A while ago we discussed about this functionality and I thought it was clear to act on intensity, either of the current frame or on manually selected functions.

Now you come up with this solution, which is great, but quite limited in my opinion. I believe what QLC+ users want more than anything else, is flexibility during live shows. If you need to "hardcode" channels before hitting "play", then you will surely run into a case where you have to hit "stop" and reconfigure. Then hit "play" again. (with all the related blackouts)

Intensity, on the contrary is a generic attribute that almost every QLC+ function has and that can be controlled during live performances.
The most flexible example I can think of is DMX dump on a VC button. In that case the function running on a button will always be different (you can determine 'live' which fixtures/channels to use), and intesity will still work on top of that.

I'm really sorry about this misunderstanding as I looked at your code and I like your style but I cannot help thinking about all the cases a user might run into during a live show.

Master slider per frame

Posted: Wed Dec 04, 2013 5:48 pm
by Stefan Riemens
Hi Massimo,

Thanks for the feedback, I probably (especially in hindsight :) should have proposed this change before going ahead and implementing it.
Ironically, the reason I decided to go ahead in this direction is for flexibility. It might help if I state the use cases I see for this:
1) Like stated before, I have a solo frame with a bunch of buttons enabling color scenes. I'd like to have slider to dim my LED fixtures, regardless of which button/scene happens to be active.
2) I have a bunch of pars for band lighting, which I'd like to assign to individual level-mode sliders plus a submaster slider.

Case 1 is perfectly doable via function intensity
Case 2 would get very convoluted via function intensity, especially if there are a decent number of fixtures involved

So, this got me to wanting to submaster channels. Channel groups seemed like a convenient choice, because frankly I didn't feel like manually selecting 50 channels by hand (again). I was already a heavy user of channel groups, to speed up scene creation (no need to select 20 fixtures by hand). Which reminds me, there's a bug there I still need to file.

I do realise (now), that for setups with only a few fixtures, creating channel groups might be overkill.

So basically, using channel groups this way encourages the creation of them. Once defined, the flexibility isn't really dropped much (I think).

If need be, it probably wouldn't be a big issue to allow channel groups to be defined in live mode? I could even envision a "put channels in this scene into a channel group" sort of functionality.

Master slider per frame

Posted: Wed Dec 04, 2013 5:49 pm
by Stefan Riemens
PS, regarding the code style: I've just tried to mimick the existing code as much as possible :)

Master slider per frame

Posted: Wed Dec 04, 2013 11:30 pm
by Davey Daytona
I think this is a great idea... had come across a situation like this during a show where i had a number of scenes running with pars for ambient light while an effect chase was going. that new function would come in handy being able to control the intensity of the scenes separately..

Master slider per frame

Posted: Thu Dec 05, 2013 9:06 am
by Stefan Riemens
BTW, a great reason for having level sliders for the default pars is to prevent blackout during show programming. Level sliders will keep their value even in design mode.

Master slider per frame

Posted: Thu Dec 05, 2013 9:54 am
by Massimo Callegari
Ok, I would like to hear other opinions before proceeding with this.
Basically I need to know what users expect from this functionality.

EDIT: Let's do this and see what happens. I'm gonna create a new topic with a poll so users can vote the solution they like the most

Master slider per frame

Posted: Thu Dec 05, 2013 12:22 pm
by Stefan Riemens
Thanks for being so constructive, really appreciate it. I'm very curious what the results will be!

Master slider per frame

Posted: Thu Dec 05, 2013 1:57 pm
by Massimo Callegari
No problem Stefan ! I just want to make sure what users want