Page 1 of 1

Chaser Strobe - timing precision

Posted: Mon Jun 06, 2022 7:35 am
by fisfis
Hello,

I am new to QLC, but I am learning.

I am trying to achieve a strobe effects on RGBW lights without shutter so I just created two scenes, full color / black (didn't even know my lights are able to generate blackness ;) ) and added these two scenes to the chaser with 50ms hold time. When I start the chaser it works, but the effect looks strange as duration of each step varies in time (they are not timed precisely). I would like to ask if there is a solution for this or I have to live with it. I am afraid I have to as I think that the chaser is Qt timer driven instead of infinite loop with precise timer checking (as a rendering loop in games is usually done).

Out of that I would like to thank to developers they made something like this available for free. Although some things are hard to implement and basically all tabs and features of the software must be used (loopbacks, profiles, whatever), it is nice.

Thanks

Re: Chaser Strobe - timing precision

Posted: Mon Jun 06, 2022 9:20 am
by janosvitok
The issue is, that with strobes you begin to hit limits of DMX.

The first limit is DMX refresh frequency - theoretically up to 44 Hz for full DMX frame (512 non-null channels), which may be lowered by QLC configuration or by output device,
or it may be higher for shorter frames, depending on the output device.

Second limit is QLC+ internal frequency - there's a loop that computes a frame 50 times per second (this can be configured as well) and another loop for each output driver (USB-DMX, artnet,...).

So: there's jitter if DMX and QLC frequencies are not aligned, and even DMX frequency may fluctuate if the output device is configured to not send trailing zeroes.

Also your chaser times must be aligned. e.g. for 50 Hz QLC loop one frame is 1000/50 = 20 ms. If you set hold time to 50 ms, you get 2,5 frames per chaser step. You get ON ON ON OFF OFF ON ON ON OFF OFF pattern in the ideal conditions...

Jano

Re: Chaser Strobe - timing precision

Posted: Mon Jun 06, 2022 10:16 am
by fisfis
Thanks, for response. Where can I configure the QLC+ internal loop? I can't find this setting anywhere.

EDIT: Ok, I got it. Its in documentation (registry on Win, files on Mac and Linux)

Computer\HKEY_CURRENT_USER\Software\qlcplus\Q Light Controller Plus\mastertimer

I'll try to change QLC master timer frequency and will see but I don't expect so much.

Just to add, the biggest problem I can see is that the timer is used. So the jitter comes from the timer itself (it is not fired precisely each 1/50s) and thats basically reason why games are using a loop and timing everything using the high precision timer data. Of course, the jitter is also there as all time slices of the loop are not uniform, but in sync with monitor this works well. I am gonna to try to set the internal timer, we will see if this can help.

Re: Chaser Strobe - timing precision

Posted: Tue Jun 07, 2022 8:54 am
by GGGss
IMHO if you need strobe, use fixtures with inbuilt strobe or shutter channels. And even then all fixtures will react differently. If you need a synched strobe over all fixtures, you quickly will get into timing troubles. And even before you ask: GrandMa uses a default 30Hz DMX output frequency. Go figure ;-)

Re: Chaser Strobe - timing precision

Posted: Thu Jun 09, 2022 9:55 am
by fisfis
IMHO, who cares. It works somehow. And the current behavior can’t be simply changed, because it would be a lot of effort to rework it with small benefits. Using of timers like QT ones is not ideal as they are not firing equaly, especially not on time sharing operating systems. But in QLC, it works for 99.9% of usecases, so no need to change.

But please note, that FPS is the less important factor here.