Hi Forum-Members,
actually i try to do a little lightshow using Virtual DJ, Artnet-DLL and QLC+. Everything is configured and also working i think, because i can set POIs as a marker and do an action like "set PAR010 255". Within Artnet then on one channel the configuration looks like
is_audible deck active ? & var PAR010 ? set $VDJartnetsend PAR010 : set $VDJartnetsend 0 : set $VDJartnetsend 0
At QLC+ the button reacts and the lamp switches to on, everything ok. At this point the variable PAR010 in Virtual DJ has still the value 255 and i have to do a "set PAR010 0" to unset.
My personal problem here are the chaining commands, my idea is to set the variable PAR010 back to 0 AFTER the "signal" has been send through Artnet, so there is no need for another POI to set the variable back to Zero before i can set it back on again. Is this possible with Virtual DJ scripting?
I have tried something like this, but didn't work:
is_audible deck active ? & var PAR010 ? set $VDJartnetsend PAR010 & set PAR010 0 : set $VDJartnetsend 0 : set $VDJartnetsend 0
or
is_audible deck active ? & var PAR010 ? set $VDJartnetsend PAR010 ? set PAR010 0 : set $VDJartnetsend 0 : set $VDJartnetsend 0 : set $VDJartnetsend 0
I have to do this on next sunday on a little sport-event ... :-(
bye
Roger
actually i try to do a little lightshow using Virtual DJ, Artnet-DLL and QLC+. Everything is configured and also working i think, because i can set POIs as a marker and do an action like "set PAR010 255". Within Artnet then on one channel the configuration looks like
is_audible deck active ? & var PAR010 ? set $VDJartnetsend PAR010 : set $VDJartnetsend 0 : set $VDJartnetsend 0
At QLC+ the button reacts and the lamp switches to on, everything ok. At this point the variable PAR010 in Virtual DJ has still the value 255 and i have to do a "set PAR010 0" to unset.
My personal problem here are the chaining commands, my idea is to set the variable PAR010 back to 0 AFTER the "signal" has been send through Artnet, so there is no need for another POI to set the variable back to Zero before i can set it back on again. Is this possible with Virtual DJ scripting?
I have tried something like this, but didn't work:
is_audible deck active ? & var PAR010 ? set $VDJartnetsend PAR010 & set PAR010 0 : set $VDJartnetsend 0 : set $VDJartnetsend 0
or
is_audible deck active ? & var PAR010 ? set $VDJartnetsend PAR010 ? set PAR010 0 : set $VDJartnetsend 0 : set $VDJartnetsend 0 : set $VDJartnetsend 0
I have to do this on next sunday on a little sport-event ... :-(
bye
Roger
Inviato Tue 19 Feb 19 @ 1:15 pm
You can try something like this:
set 'PAR10' 1 & repeat_start 'TOffPar10' 100ms 1 & set 'PAR10' 0
The above script is actually 2 parts. First part sets a variable. The second part starts a repeating action (named 'TOffPar10') that repeats every 100ms for 1 time(s)
Effectively this means that the action of the second part will get executed only once 100ms after the action of the first part.
In other words your 'PAR10' variable will get the value '1' for 100ms and then it will go back to 0
There are other ways to achieve that as well, but this is the most clean.
set 'PAR10' 1 & repeat_start 'TOffPar10' 100ms 1 & set 'PAR10' 0
The above script is actually 2 parts. First part sets a variable. The second part starts a repeating action (named 'TOffPar10') that repeats every 100ms for 1 time(s)
Effectively this means that the action of the second part will get executed only once 100ms after the action of the first part.
In other words your 'PAR10' variable will get the value '1' for 100ms and then it will go back to 0
There are other ways to achieve that as well, but this is the most clean.
Inviato Tue 19 Feb 19 @ 1:41 pm
Hi again,
sounds good, thank you, i will try it this evening ... but am i right, that will be the script at the POI, not at the Artnet-Plugin, correct?
But .. when i want to set PAR010, PAR011 and PAR012 within one POI, then this script will not work, right?
I thought about a "set PAR010 255 & set PAR011 255 & set PAR012" at the POI and then the Script at the Artnet-Channel should reset the variable, wouldn't this be better?
Bye
Roger
sounds good, thank you, i will try it this evening ... but am i right, that will be the script at the POI, not at the Artnet-Plugin, correct?
But .. when i want to set PAR010, PAR011 and PAR012 within one POI, then this script will not work, right?
I thought about a "set PAR010 255 & set PAR011 255 & set PAR012" at the POI and then the Script at the Artnet-Channel should reset the variable, wouldn't this be better?
Bye
Roger
Inviato Tue 19 Feb 19 @ 3:33 pm
Hi,
you better use something like this:
is_audible deck active ? & var PAR010 ? set $VDJartnetsend `get_var PAR010` & set PAR010 0 : set $VDJartnetsend 0 : set $VDJartnetsend 0
if wour var PAR010 is not only 0 255
however if PAR010 is only an on/off switch better use something like that :
is_audible deck active ? & var PAR010 ? set $VDJartnetsend 255 & toggle PAR010 : set $VDJartnetsend 0 : set $VDJartnetsend 0
Note: If the vdjartnet.dll is one of those i compiled / have this mod, you can use some set $VDJartnet -1 on a way to keep light as is too
is_audible deck active ? & var PAR010 ? set $VDJartnetsend 255 & toggle PAR010 : set $VDJartnetsend 0 : set $VDJartnetsend -1
you better use something like this:
is_audible deck active ? & var PAR010 ? set $VDJartnetsend `get_var PAR010` & set PAR010 0 : set $VDJartnetsend 0 : set $VDJartnetsend 0
if wour var PAR010 is not only 0 255
however if PAR010 is only an on/off switch better use something like that :
is_audible deck active ? & var PAR010 ? set $VDJartnetsend 255 & toggle PAR010 : set $VDJartnetsend 0 : set $VDJartnetsend 0
Note: If the vdjartnet.dll is one of those i compiled / have this mod, you can use some set $VDJartnet -1 on a way to keep light as is too
is_audible deck active ? & var PAR010 ? set $VDJartnetsend 255 & toggle PAR010 : set $VDJartnetsend 0 : set $VDJartnetsend -1
Inviato Tue 19 Feb 19 @ 3:59 pm
I don't use Artnet nor an associated plugin.
Therefore my answers are generic.
However, in order to set and reset multiple parameters at once this code should work:
set 'PAR010' 255 & set 'PAR011' 255 & set 'PAR012' & repeat_start 'resetParams' 100ms 1 & set 'PAR010' 0 & set 'PAR011' 0 & set 'PAR012' 0
This action sets 3 variables to desired values and resets them after 100ms (and it's all done within one action)
Therefore my answers are generic.
However, in order to set and reset multiple parameters at once this code should work:
set 'PAR010' 255 & set 'PAR011' 255 & set 'PAR012' & repeat_start 'resetParams' 100ms 1 & set 'PAR010' 0 & set 'PAR011' 0 & set 'PAR012' 0
This action sets 3 variables to desired values and resets them after 100ms (and it's all done within one action)
Inviato Tue 19 Feb 19 @ 7:31 pm
Anyway there are only some VDJ script "syntax errors" in the scripts:
1st : variable names needs quotes - what I forgot in previous post, without quotes it rely to variable name itself - see forward
"set $VDJartnetsend PAR010 " won't work because it is erroneous My "set $VDJartnetsend `get_var PAR010`" is erroneous as well ... lazyness.. copy past and i didn't saw it
in your POI command must be written like this : set "PAR010" 255
2nd : in a way to copy a variable in another one you must read it executing get_var within backquotes
must be :'set "$VDJartnetsend" `get_var "PAR010"`
3rd: "is_audible deck active ? & var PAR010 ? ..." do not work as it seems you guess it does - and have an error
Without quotes:
"var PAR010 ? ..." is testing whenever the variable PAR010 does exist
With quotes :
"var 'PART010' ? ..." will test whenever PART010 is not null
"var 'PART010' 0 ? ..." will test whenever PART010 is null and any other value instead of zero can be used
4th : ampersand & stand for " and " and is used to link verbs thus no need of it here
5th: default deck is active deck so far "deck active" is not needed
Your final FULL script would be - if i don't make another error again... would look like:
is_audible ? var "PAR010" ? set "$VDJartnetsend" `get_var "PAR010"` & set "PAR010" 0 : set "$VDJartnetsend" 0 : set "$VDJartnetsend" -1
You can do more:
---------------------------
VDJ will do nothing when no alternate is given to "?"
As VDJArtnet.DLL is needing to internally reset by itself its $VDJartnetsend variable, you may ignore the last parts of both command "?"
giving the following short script :
s_audible ? var "PAR010" ? set "$VDJartnetsend" `get_var "PAR010"` & set "PAR010" 0
MORE WITH IS BETTER:
--------------------------------------
If you only do an on/off switch and put yourself PAR010 to 255 in your POI or wanna be able to control a slider in QLC+ by setting PAR010 to any value between 0 and 255
then second test is useless
s_audible ? set "$VDJartnetsend" `get_var "PAR010"` & set "PAR010" 0
would be more than enough
1st : variable names needs quotes - what I forgot in previous post, without quotes it rely to variable name itself - see forward
"set $VDJartnetsend PAR010 " won't work because it is erroneous My "set $VDJartnetsend `get_var PAR010`" is erroneous as well ... lazyness.. copy past and i didn't saw it
in your POI command must be written like this : set "PAR010" 255
2nd : in a way to copy a variable in another one you must read it executing get_var within backquotes
must be :'set "$VDJartnetsend" `get_var "PAR010"`
3rd: "is_audible deck active ? & var PAR010 ? ..." do not work as it seems you guess it does - and have an error
Without quotes:
"var PAR010 ? ..." is testing whenever the variable PAR010 does exist
With quotes :
"var 'PART010' ? ..." will test whenever PART010 is not null
"var 'PART010' 0 ? ..." will test whenever PART010 is null and any other value instead of zero can be used
4th : ampersand & stand for " and " and is used to link verbs thus no need of it here
5th: default deck is active deck so far "deck active" is not needed
Your final FULL script would be - if i don't make another error again... would look like:
is_audible ? var "PAR010" ? set "$VDJartnetsend" `get_var "PAR010"` & set "PAR010" 0 : set "$VDJartnetsend" 0 : set "$VDJartnetsend" -1
You can do more:
---------------------------
VDJ will do nothing when no alternate is given to "?"
As VDJArtnet.DLL is needing to internally reset by itself its $VDJartnetsend variable, you may ignore the last parts of both command "?"
giving the following short script :
s_audible ? var "PAR010" ? set "$VDJartnetsend" `get_var "PAR010"` & set "PAR010" 0
MORE WITH IS BETTER:
--------------------------------------
If you only do an on/off switch and put yourself PAR010 to 255 in your POI or wanna be able to control a slider in QLC+ by setting PAR010 to any value between 0 and 255
then second test is useless
s_audible ? set "$VDJartnetsend" `get_var "PAR010"` & set "PAR010" 0
would be more than enough
Inviato Tue 19 Feb 19 @ 9:22 pm
Hi again,
sorry for the delay, but thank you all very much for your fast and detailed answers.
Not really all worked here and by virtue of the short time i get the following working, at this point it does what i wanted, but i will follow this topic in the near future.
Plugin:
is_audible deck active ? var "PAR001" ? set $VDJartnetsend 255 : set $VDJartnetsend 0
Poi,
set "PAR001" 1 & repeat_start "TOffPar001" 150ms 1 & set "PAR001" 0
Bye
Roger
sorry for the delay, but thank you all very much for your fast and detailed answers.
Not really all worked here and by virtue of the short time i get the following working, at this point it does what i wanted, but i will follow this topic in the near future.
Plugin:
is_audible deck active ? var "PAR001" ? set $VDJartnetsend 255 : set $VDJartnetsend 0
Poi,
set "PAR001" 1 & repeat_start "TOffPar001" 150ms 1 & set "PAR001" 0
Bye
Roger
Inviato Mon 25 Feb 19 @ 3:34 pm
As a complete newby I try to send bmp over artnet, but in groups.
So I wrote get_bmp $ param_greater 100 ? set $VDJartnetsend 100 : set $VDJartnetsend 80, tried
param_greater get_bmp 100.0 ? set $VDJartnetsend 100 : set $VDJartnetsend 80 and
get_bmp & param_cast 'int_trunc' & set $VDJartnetsend
Doesn´t work.
Can someone help me out ?
Thx
So I wrote get_bmp $ param_greater 100 ? set $VDJartnetsend 100 : set $VDJartnetsend 80, tried
param_greater get_bmp 100.0 ? set $VDJartnetsend 100 : set $VDJartnetsend 80 and
get_bmp & param_cast 'int_trunc' & set $VDJartnetsend
Doesn´t work.
Can someone help me out ?
Thx
Inviato Mon 05 Aug 19 @ 1:43 pm
first of all it's get_bpm after what everything will go better
get_bpm & param_greater 100 ? set $VDJartnetsend 100 : set $VDJartnetsend 80
will set 100 if bpm > 100 and 80 in bpm < 100
param_greater get_bpm 100.0 ? set $VDJartnetsend 100 : set $VDJartnetsend 80
will set 100 if bpm < 100 and 80 if bpm > 100
set $VDJartnetsend `get_bpm`
will set truncated value of bpm
What version of VDJArtNet do you trying to use ?
get_bpm & param_greater 100 ? set $VDJartnetsend 100 : set $VDJartnetsend 80
will set 100 if bpm > 100 and 80 in bpm < 100
param_greater get_bpm 100.0 ? set $VDJartnetsend 100 : set $VDJartnetsend 80
will set 100 if bpm < 100 and 80 if bpm > 100
set $VDJartnetsend `get_bpm`
will set truncated value of bpm
What version of VDJArtNet do you trying to use ?
Inviato Mon 05 Aug 19 @ 3:41 pm
Well, think I worked it out: despide what VDJPedia says it is NOT get_bpm & param_cast 'integer' & set $VDJartnetsend but
get_bpm & param_cast integer & set $VDJartnetsend (without the ampersands)
And what version I´m using ? Don´t know exactly, it´s a DLL build from your sources by myself, dated 10.April 2019, 17:54
get_bpm & param_cast integer & set $VDJartnetsend (without the ampersands)
And what version I´m using ? Don´t know exactly, it´s a DLL build from your sources by myself, dated 10.April 2019, 17:54
Inviato Mon 05 Aug 19 @ 4:07 pm
get_bpm & param_greater 100 ? set $VDJartnetsend 100 : set $VDJartnetsend 80
I´ll check this out... thx
I´ll check this out... thx
Inviato Mon 05 Aug 19 @ 4:10 pm