Sequencer (Cuelist) With Individual Step Times

299 views
Skip to first unread message

Mathieu

unread,
May 24, 2015, 9:58:52 AM5/24/15
to ligh...@googlegroups.com
Here's a sample project showing how to create a sequencer by specifying the time of each step. For example, you may want to activate the 1st effect for 10 seconds, the 2nd effect for 20 seconds, the 3rd for 1 minute...

The idea is to specify the time using source power. For each step, there's a source and its power in percent corresponds to the time in seconds. Then the source moving around (the playhead) uses the grid.powerAt function to read the step time.

Mathieu
sequencer-individual-step-time.ljp

Dunno DoYou

unread,
Aug 13, 2016, 8:55:42 AM8/13/16
to Lightjams

G'Day Mat,
  I just found this forum. Im sure in time I will have a few contributions to the forum. This is an Awesome piece of software. Just have to learn how to tap into it. Chad and I have been able to do some tests. Like connecting a Wii controller and receiving signals via other DMX software, MIDI. Chad also has a windows tablet he can send signals with somehow. Controlling various light sources.

Im sure he told you what we have. 1311 LEDs basically in one string around the perimeter of a large room. Though every 150 leds a tail goes up the wall by 20 leds. A very small 15x11 matrix and a even smaller 10x7.

I havent found yet, I need to work out how to sequence or trigger things. Ive seen the 'activation fx' thing. But how to use it I dont know yet.

Ive just been able to work on some of the maths functions. This should be fun :)

Anyway, Thanks again

Mathieu

unread,
Aug 13, 2016, 11:16:39 AM8/13/16
to Lightjams
Hi,

To trigger Lightjams via DMX, look at the DMX Triggers project: http://www.lightjams.com/tutorial.html#projectsSection

abwchan

unread,
Aug 14, 2018, 2:28:46 PM8/14/18
to Lightjams
Hi Mathieu,

I have tried to file/import the sample as well as duplicate what has been done in the sample, but can't really have the fade time executed. (file attached). may i know what's wrong with my file?

Nonetheless, I am also hoping to manually trigger cues with designated fade time other than an automatically-run sequence with effect-activation timing~ any suggestions? 

Thanks!
Amy


Mathieu於 2015年5月24日星期日 UTC+8下午9時58分52秒寫道:
fade time test.ljp

Mathieu

unread,
Aug 14, 2018, 4:07:26 PM8/14/18
to ligh...@googlegroups.com
Hi,

If you want to pre-program different fade in/out times for each step, this is one way of doing it: https://groups.google.com/d/msg/lightjams/csNiY8yPddU/IUB7I-ZhpkUJ

Sorry if I told you to look at this sample project as it it for individual step time, not fade.

If you want to manually go to the next step, you need to replace the x formula for the blue source (the one moving). Your formula should look like:

 xtopercent(counter(0, grid.lastX, onbeat(osc(17)), 0, grid.onactivated))

where you replace osc(17) by the input you want to use.

 There are many examples: 

abwchan

unread,
Aug 17, 2018, 5:19:38 AM8/17/18
to Lightjams

Thanks for the tips! 
Amy 
 

Mathieu

unread,
May 12, 2023, 9:02:47 AM5/12/23
to Lightjams
As a reference, the automated tradeshow sample project shows a real example of using different step time in a sequencer. Here's the post: https://groups.google.com/g/lightjams/c/A-xK9dek-3Q/m/xcxfl3Q3BgAJ

In the grid named 'sequencer', you'll find the sources following the sequence. There's a configurable time for each step and there's also a transition step with a fixed time between each step. During the transitions, various animations are played while the visitors are moving to the next kiosk.

The formula that is used to make the source move forward is:

xtopercent(
counter( 0,
grid.lastx,
delta(timer(if(x%2==0,slider(19)*slider(20),slider(x/2+1)*slider(20)), grid.onactivated))<0,
0,
grid.onactivated
)


The interesting part is the formula to increment the counter (to move to the next step) which is:

delta(timer(if(x%2==0,slider(19)*slider(20),slider(x/2+1)*slider(20)), grid.onactivated))<0

Having different times for the odd and even steps adds a bit of complexity. But the general idea without this odd and even difference would be:

delta(timer(slider(x+1), grid.onactivated))<0

Basically, the timer function is used to compute the elapsed time for the current step. The desired step time is determined in the sliders. The 1st step time in seconds is in the slider 1. The 2nd step time is in the 2nd slider, etc. When the timer reached the desired time, it resets. When this happens, the delta function, which computes the difference between the last and new value, return a negative value since the timer function which was counting up suddenly reset to 0. At this point, the condition with the <0 becomes true, which finally increment the counter and makes the source moves to the next step.

Using the grid.onactivated variable as the reset parameter of the timer function makes sure the timer resets if we reset the sequence grid.

In the original formula, the step time is multiplied by the slider(20). This is a handy way to speed up or down the sequencer when running tests by only having to adjust the slider number 20.
Reply all
Reply to author
Forward
0 new messages