Hi, I can't use JOG_WHEEL to smoothly change the position of the end of the loop section. Is there any option? Thanks
geposted Sat 20 Apr 24 @ 11:19 pm
see the wheel_mode script
geposted Sat 20 Apr 24 @ 11:24 pm
wheel_mode 'loop_out' ? wheel_mode 'loop_out,jog' : loop ? wheel_mode 'loop_out,jog' : loop_out
Already solved. Bye.
Already solved. Bye.
geposted Sat 20 Apr 24 @ 11:27 pm
I'm trying to modify Touchdan's Title (Video Skin) to work for my needs.
I'd noticed that the title didn't always appear, or seemed to favour one deck over the other, so I investigated...
The original code looks like it checks the crossfader position to determine whether to show or not:
I don't use the crossfader (so it sits centrally) which I guess is why the titles are inconsistent.
I found is_audible being used in another videoskin so borrowed the code:
That works, but I've been trying to add a delay so that the text appears after 5 seconds of play rather than immediately, but so far have failed in all attempts.
(no idea what the 'or scratch' is doing)
I'd noticed that the title didn't always appear, or seemed to favour one deck over the other, so I investigated...
The original code looks like it checks the crossfader position to determine whether to show or not:
visibility="pulse 25000ms '`param_equal get_crossfader_result 0 ? deck left load_pulse : param_equal get_crossfader_result 1 ? deck right load_pulse : fadeout 1000ms 750ms`'"
I don't use the crossfader (so it sits centrally) which I guess is why the titles are inconsistent.
I found is_audible being used in another videoskin so borrowed the code:
visibility="is_audible 'or scratch' & fadeout 1000ms 500ms"
That works, but I've been trying to add a delay so that the text appears after 5 seconds of play rather than immediately, but so far have failed in all attempts.
(no idea what the 'or scratch' is doing)
geposted Sun 21 Apr 24 @ 9:43 am
Try load_pulse_active
visibility="load_pulse_active 2000ms 5000ms & fadeout 1000ms 500ms"
geposted Sun 21 Apr 24 @ 12:03 pm
Thank you locodog. I just did a quick mod to make it stay on screen a little longer, and we're away!
geposted Sun 21 Apr 24 @ 1:11 pm
Another user wish, the concept is interesting as instruction to how to scale a dial.
User wanted a fine detailed key change on a dial.
So key_smooth is the script, but key_smooth goes from -6.0 key to +6.0 key so we need to reduce the range a bit.
As is from centre [key natural] key_smooth goes -6.0 to +6.0 so 12 divisions. We only want a range of -1.0 key to +1.0 key so 1/6th of the full range. Then we want to ignore the first 5/12ths of the range.
A dial usually goes from 0.0 to 1.0, so
( dial val * 0.166666 [a 6th] ) + 0.416666 [5/12ths] = val =>0.416666 & <=0.583333
That as script you'd use on a dial
That would be ±100 cents across a whole dial
This would be ±10 cents across a whole dial
User wanted a fine detailed key change on a dial.
So key_smooth is the script, but key_smooth goes from -6.0 key to +6.0 key so we need to reduce the range a bit.
As is from centre [key natural] key_smooth goes -6.0 to +6.0 so 12 divisions. We only want a range of -1.0 key to +1.0 key so 1/6th of the full range. Then we want to ignore the first 5/12ths of the range.
A dial usually goes from 0.0 to 1.0, so
( dial val * 0.166666 [a 6th] ) + 0.416666 [5/12ths] = val =>0.416666 & <=0.583333
That as script you'd use on a dial
param_multiply 0.166666 & param_add 0.416666 & key_smooth
That would be ±100 cents across a whole dial
param_multiply 0.016666 & param_add 0.491666 & key_smooth
This would be ±10 cents across a whole dial
geposted 2 days ago @ 11:26 am
Another interesting user request that involves implicit manipulation.
User wanted a more increment kind of pitch slider, to some it might not make sense but I get it, instead of having infinity values between 2 contiguous integers you have just 10, so from 120 to 121 bpm you just have 121.0, 121.1, 121.2 ... etc
part of it is showing off, part of it is cheating, part of it is how digital sliders work when you look closely at X num of bit precision.
The dancefloor doesn't really care as long as you don't trainwreck.
A rare use case but an interesting script to learn from
So the dial implicit is 0.0 - 1.0
we need to turn implicit into ±1.0
so multiply by 2, now our implicit is 0.0 - 2.0
so add -1, now our implicit is -1.0 to +1.0
multiply implicit by pitch range, pitch range returns a value between 0.01 to 1.00 [1% pitch range to 100% pitch range]
so implicit == -pitch range to +pitch range
add 1 so our implicit is (1 - pitch range) to (1 + pitch range)
multiply implicit by bpm absolute
param_cast '0.0' to limit digits to one decimal place
param_cast as beats because we're passing a beat value to the pitch verb
pitch
User wanted a more increment kind of pitch slider, to some it might not make sense but I get it, instead of having infinity values between 2 contiguous integers you have just 10, so from 120 to 121 bpm you just have 121.0, 121.1, 121.2 ... etc
part of it is showing off, part of it is cheating, part of it is how digital sliders work when you look closely at X num of bit precision.
The dancefloor doesn't really care as long as you don't trainwreck.
A rare use case but an interesting script to learn from
So the dial implicit is 0.0 - 1.0
we need to turn implicit into ±1.0
so multiply by 2, now our implicit is 0.0 - 2.0
so add -1, now our implicit is -1.0 to +1.0
multiply implicit by pitch range, pitch range returns a value between 0.01 to 1.00 [1% pitch range to 100% pitch range]
so implicit == -pitch range to +pitch range
add 1 so our implicit is (1 - pitch range) to (1 + pitch range)
multiply implicit by bpm absolute
param_cast '0.0' to limit digits to one decimal place
param_cast as beats because we're passing a beat value to the pitch verb
pitch
param_multiply 2 & param_add -1 & param_multiply pitch_range & param_add 1 & param_multiply 'get_bpm absolute' & param_cast '0.0' & param_cast beats & pitch
geposted 2 days ago @ 12:30 pm