Quick Sign In:  

Forum: VirtualDJ Plugins

Topic: "Echo Out" Plugin - Page: 2

This part of topic is old and might contain outdated or incorrect information

locoDogPRO InfinityModeratorMember since 2013
& effect_slider 'echo' 2 0.78
the fx by name or slot number the param number the dial value
somewhere near the start
 

Posted Sun 14 Feb 16 @ 3:58 pm
lincol2PRO InfinityMember since 2011
@locodog
Great!
 

Posted Sun 14 Feb 16 @ 5:09 pm
locoDogPRO InfinityModeratorMember since 2013
PhantomDeejay wrote :

PS: I will explain the code one of the following days that I will have some more free time


i'll gladly explain it if you'd take a minute to look back at my previous questions

get_beatpos & param_add 1 & param_cast & set 'EndBeat' 



ok first we get the beat position right now, [let's say beat 15]
and then we add one to it [16]
now we want to use this value so we 'cast' [tell vdj we want to use it for something]it
then we have a value ready to be used for something and we set a variable called 'endbeat' to that value.

& set 'AutoEchoOutFX' 1 



turn a variable flag to on or 1 un-needed in this script but useful for expansion]



& effect_slider 'echo' 1 0.8 


now we want to hear the echo so param 1 [strength] needs to be at a level you can hear,
so we call effect_slider, vdj wants to know which fx name or which fx slot number
then vdj wants to know which slider as echo has a few [slider/param 1]
then vdj wants to know the value [0.8, 80 percent]

& effect_button 'echo' 2 on 


a similar story as the slider except the value of a button is either 1/0 or on/off

& effect_active 'echo' on 


ok so we have a number in the variable 'endbeat' and all the sliders are in place so we can turn the fx on [remember zero time has passed since pressing the button it is instant]

& repeat_start_instant "AutoEchoOff" 1ms & 


repeat_start_instant scripts are scripts that repeat until they are told to stop, you give it a name [AutoEchoOff] then how often you want it to happen [in ms] then how many times you want it to happen [phantom didn't include a number after the time so he wants no repeat limit] and then you need to give it a script to repeat

ok the first bit all happened at once, now you have to remember every millisecond vdj is calling a script

get_var 'EndBeat' & param_smaller get_beatpos ? effect_active "echo" off & pause & set 'AutoEchoOutFX' 0 & repeat_stop "AutoEchoOff" : nothing



ok so want to check that the current beatpos isn't greater than the 'EndBeat' variable we made, while it isn't bigger we want to do nothing, when it is bigger we want to turn the echo effect off, so we ask this question every millisecond.

get_var 'EndBeat' &
we have hold of the variable
param_smaller
we want to check it against something else, namely
get_beatpos ?

[ok here is were i would work differently, phantom chose param_smaller so the yes reply is turn everything off and the no reply is nothing, i would have chosen param_bigger and had the replies the other way round, i just like having the change of state linked to a no reply]

get_var 'EndBeat' & param_smaller get_beatpos ? effect_active "echo" off & pause & set 'AutoEchoOutFX' 0 & repeat_stop "AutoEchoOff" : nothing



ok so every millisecond we are asking is 'EndBeat' smaller than beatpos, and to start with the answer is
no - do nothing
no - do nothing
no - do nothing

eventually the answear is yes,
effect_active "echo" off & pause & set 'AutoEchoOutFX' 0 & repeat_stop "AutoEchoOff"



so we turn the effect off [to trail away] pause [as we don't want to hear the source anymore] turn a variable flag to zero [un-needed in this script but useful for expansion]
and the important bit turn the repeating script off from asking the question every millisecond

repeat_stop "AutoEchoOff"


wow that was involved
 

Posted Sun 14 Feb 16 @ 5:23 pm
Loco did a fine job explaining the code.

Some remarks:
I used the above code for my own custom mapper and I just copy/paste it here, forgetting to mention three things:
1) I always have the trail on 'Echo' and 'Reverb' activated.
2) I always use 'Echo' with 1 beat timing.
3) Since this script is used on a controller it also turns on/off a led for the FX ( the 'unused' variable Loco found on script)

Now for the script itself:
You can adjust the length of echo by using effect_slider 'echo' 2 and_a_value
However you would want to adjust the 'EndBeat' as well, because otherwise you would stop the deck before you feed the echo with all beats.

SO, the full code for 1 beat echo out should be:
get_beatpos & param_add 1 & param_cast & set 'EndBeat' & set 'AutoEchoOutFX' 1 & effect_slider 'echo' 1 0.8 & effect_slider 'echo' 2 0.65 & effect_button 'echo' 2 on & effect_active 'echo' on & repeat_start_instant "AutoEchoOff" 1ms & get_var 'EndBeat' & param_smaller get_beatpos ? effect_active "echo" off & pause & set 'AutoEchoOutFX' 0 & repeat_stop "AutoEchoOff" : nothing

For 2 beats it should be:
get_beatpos & param_add 2 & param_cast & set 'EndBeat' & set 'AutoEchoOutFX' 1 & effect_slider 'echo' 1 0.8 & effect_slider 'echo' 2 0.75 & effect_button 'echo' 2 on & effect_active 'echo' on & repeat_start_instant "AutoEchoOff" 1ms & get_var 'EndBeat' & param_smaller get_beatpos ? effect_active "echo" off & pause & set 'AutoEchoOutFX' 0 & repeat_stop "AutoEchoOff" : nothing

For 4 beats it should be:
get_beatpos & param_add 4 & param_cast & set 'EndBeat' & set 'AutoEchoOutFX' 1 & effect_slider 'echo' 1 0.8 & effect_slider 'echo' 2 0.85 & effect_button 'echo' 2 on & effect_active 'echo' on & repeat_start_instant "AutoEchoOff" 1ms & get_var 'EndBeat' & param_smaller get_beatpos ? effect_active "echo" off & pause & set 'AutoEchoOutFX' 0 & repeat_stop "AutoEchoOff" : nothing

Finally for the led of the button you need to simply use:
var 'AutoEchoOutFX'
 

Posted Mon 15 Feb 16 @ 4:31 am
lincol2PRO InfinityMember since 2011
@PhantomDeejay


Now I find that these scripts does not allow you to paste in POI editor after you copy it. Worked fine before.

Help.
 

Posted Sun 24 Jul 16 @ 3:38 am
lincol2PRO InfinityMember since 2011
PhantomDeejay wrote :
get_beatpos & param_add 4 & param_cast & set 'EndBeat' & set 'AutoEchoOutFX' 1 & effect_slider 'echo' 1 0.8 & effect_slider 'echo' 2 0.85 & effect_button 'echo' 2 on & effect_active 'echo' on & repeat_start_instant "AutoEchoOff" 1ms & get_var 'EndBeat' & param_smaller get_beatpos ? effect_active "echo" off & pause & set 'AutoEchoOutFX' 0 & repeat_stop "AutoEchoOff" : nothing



try copy and paste this, anyone?
 

Posted Sun 24 Jul 16 @ 1:37 pm
PachNPRO InfinityMember since 2009
working fine here
 

Posted Tue 26 Jul 16 @ 11:00 am
lincol2PRO InfinityMember since 2011
PachN wrote :
working fine here


I am disappointed it does not work for me. I really need to apply this script. Other scripts I am able to copy and paste in POI Macro Action no issue as the below pic shows. The script in question I even copy it and paste into a word document and then copy from the word document and try to PASTE it in the POI Macro Action .. when I right click on the mouse no paste option is available. Use different mice and computers .. same result.
 

Posted Tue 26 Jul 16 @ 1:32 pm
lincol2PRO InfinityMember since 2011


After trial and error I get it to work. This is how I had to do it: Copy line 1 paste, copy line 2 paste , copy line 3 paste and so on. Before I could have copy the whole script in one shot and paste it. Problem with this copy line by line is that if I miss it by a space when I paste it,I am $crewed!.
 

Posted Tue 26 Jul 16 @ 4:48 pm
lincol2PRO InfinityMember since 2011
There is a copy and paste bug in the current build.

Just roll back to a random build 2828.1112 and as you guess, copy the whole script and paste in Macro Action works smoothly.
 

Posted Tue 26 Jul 16 @ 7:08 pm
CTRL-V can be used instead of paste. Works perfectly here, many thanks.

 

Posted Tue 26 Jul 16 @ 10:09 pm
PachNPRO InfinityMember since 2009
So you just tried it with the mouse not with CTRL-V?
Because I only did CTRL-V.
 

Posted Wed 27 Jul 16 @ 9:50 am
lincol2PRO InfinityMember since 2011
yes!!

thanks guys, CTRL-V ... got it.
 

Posted Fri 29 Jul 16 @ 2:05 pm
krn3kiPRO InfinityMember since 2014
Where may I find more of such useful macros, without deeply investigating each thread? Would be nice to have them collected in one place.
 

Posted Mon 15 Aug 16 @ 12:38 pm
locoDogPRO InfinityModeratorMember since 2013
 

Posted Mon 15 Aug 16 @ 1:46 pm
djtucPRO InfinityMember since 2005
Using this automated echo efx script seems to be a nice alternative for a loop out effect. It's just after I make customize buttons for each deck using the script below in VDJ8. Each button then does not function independently after I assign each deck to two different keyboard short cut to activate the efx on deck A or deck B. How do I assign this efx to only activate deck A or B, and not affect them both simultaneously when using this automation script. Thanks in advance..
 

Posted Mon 02 Jan 17 @ 1:12 am
@ DJTUC

add the below script at the beginning while creating the mapper, the below scrit will allow each deck work independently, even when you assign the scripts for both decks on just one keyboard number or letter..

deck active select action_deck1 ? actionA : actionB' true

let me know if it works for you, if not, just send me the code like you have inserted and let me know what version of VDJ & Controller you have at the moment..
 

Posted Wed 04 Jan 17 @ 6:40 am
djtucPRO InfinityMember since 2005
@ Dj Nobel Prince

I tried your suggestion, when I append the script at the beginning of this automation scrpit it doesn't work. When I remove it the echo effect works & by the way the version I'm testing this effect on is VDJ 8. Here's how the scipt Im using looks...Thanks for your help..

deck active select action_deck1 ? actionA : actionB' true get_beatpos & param_add 1 & param_cast & set 'EndBeat' & set 'AutoEchoOutFX' 1 & effect_slider 'echo' 1 0.8 & effect_slider 'echo' 2 0.65 & effect_button 'echo' 2 on & effect_active 'echo' on & repeat_start_instant "AutoEchoOff" 1ms & get_var 'EndBeat' & param_smaller get_beatpos ? effect_active "echo" off & pause & set 'AutoEchoOutFX' 0 & repeat_stop "AutoEchoOff" : nothing
 

Posted Wed 11 Jan 17 @ 1:50 am
@ djtuc

Ok.. I will try out something this weekend and update you with a solution... one love
 

Posted Thu 12 Jan 17 @ 9:03 pm
putting d deck number infront of d code helps specify d deck I wanna trigger d echo out on instead of active deck......deck 1 THE CODE works for me______Thanks for solving dz ish
 

Posted Fri 13 Jan 17 @ 7:52 am
83%