Good to all,
I am analyzing many songs with multiple bpm
the program creates a poi called BEAT ANCHOR .
I have tried to add an action poi at that point with the following script.
"beatlock on & wait 500ms & beatlock off"
With this I get him to keep the mix paired
But I would like to know if it could be automated so that when making the beatanchor this action is included, either in the Poi itself or creating a new one of action.
Thank you
I am analyzing many songs with multiple bpm
the program creates a poi called BEAT ANCHOR .
I have tried to add an action poi at that point with the following script.
"beatlock on & wait 500ms & beatlock off"
With this I get him to keep the mix paired
But I would like to know if it could be automated so that when making the beatanchor this action is included, either in the Poi itself or creating a new one of action.
Thank you
Mensajes Wed 27 Dec 23 @ 12:52 pm
İs it possible to down the volume slowly for one of the stems. İ'm using rane four. For exanple i want to down the volume of the melody. What do i have to do
Mensajes Thu 28 Dec 23 @ 4:30 pm
@ongunbuke check the first post of this thread, there's a topic on repeating scripts [rsi], you'll be manipulating
stem melody
@agadj2
not possible; a beatanchor can't hold an action, probably best to use a APOI at the start of grid unevenness and one at the end.
@EGR
It's on a tag, so you can check the tag and add to the tag with
param_contains 'HASHTAG' `get_browsed_song 'TAG'` ?
if false you can add with
browsed_song 'TAG' 'HASHTAG'
If true, removing part of a tag is not possible with script, but I do have a windows plugin that can do this.
stem melody
@agadj2
not possible; a beatanchor can't hold an action, probably best to use a APOI at the start of grid unevenness and one at the end.
@EGR
It's on a tag, so you can check the tag and add to the tag with
param_contains 'HASHTAG' `get_browsed_song 'TAG'` ?
if false you can add with
browsed_song 'TAG' 'HASHTAG'
If true, removing part of a tag is not possible with script, but I do have a windows plugin that can do this.
Mensajes Thu 28 Dec 23 @ 6:03 pm
hi! is there a script in “hotcues” pad that assign an hotcue color yellow if pad is holding 1 second or color “get_deck_color ‘absolute’ “ if pad is pressed without holding?
Thanks a lot
Thanks a lot
Mensajes Sat 30 Dec 23 @ 10:34 pm
I thought you'd have been capable of that yourself.
hot_cue 1 & holding ? cue_color 1 "yellow" : get_deck_color 'absolute' & param_cast text & cue_color 1
that works for setting, but fails when you call, which I guess you got to then got stuck.
so this issue is, the order things happening; holding - either reply case does the cue exist ? exists call the cue, not exist create the cue and colour it.
holding ? has_cue 1 ? hot_cue 1 : hot_cue 1 & cue_color 1 "yellow" : has_cue 1 ? hot_cue 1 : hot_cue 1 & get_deck_color 'absolute' & param_cast text & cue_color 1
hot_cue 1 & holding ? cue_color 1 "yellow" : get_deck_color 'absolute' & param_cast text & cue_color 1
that works for setting, but fails when you call, which I guess you got to then got stuck.
so this issue is, the order things happening; holding - either reply case does the cue exist ? exists call the cue, not exist create the cue and colour it.
holding ? has_cue 1 ? hot_cue 1 : hot_cue 1 & cue_color 1 "yellow" : has_cue 1 ? hot_cue 1 : hot_cue 1 & get_deck_color 'absolute' & param_cast text & cue_color 1
Mensajes Sun 31 Dec 23 @ 12:08 am
your script is perfect 👌 thanks!
Mensajes Mon 01 Jan 24 @ 7:30 pm
Hi
I have programmed my track button to do different things depending on where the cursor is, so when on the 'Ask The DJ' folder I can't check
browser_window "sideview" ? sideview "askthedj://" ? search "`get_browsed_song 'message'`"
to get Virtual DJ to search music for the song highlighted.
However there is also the "Recommended Next" & "Similar Songs" folders within Sideview, and also now we have "Charts" under Folders.
All these folders allow searching so is there any way to detect when I in a searchable folder, or to specifically test for these folders (and subfolders where Charts is concerned) to trigger search when browsing them.
I know the easiest thing would be to program a dedicated button or key to search no matter where you are, but I wondered if this was possible.
Thanks anway.
I have programmed my track button to do different things depending on where the cursor is, so when on the 'Ask The DJ' folder I can't check
browser_window "sideview" ? sideview "askthedj://" ? search "`get_browsed_song 'message'`"
to get Virtual DJ to search music for the song highlighted.
However there is also the "Recommended Next" & "Similar Songs" folders within Sideview, and also now we have "Charts" under Folders.
All these folders allow searching so is there any way to detect when I in a searchable folder, or to specifically test for these folders (and subfolders where Charts is concerned) to trigger search when browsing them.
I know the easiest thing would be to program a dedicated button or key to search no matter where you are, but I wondered if this was possible.
Thanks anway.
Mensajes Sat 06 Jan 24 @ 11:34 pm
using
get_sideview_title & debug
would have given you hints for the sideview
they return the string "remixes" no matter which it is (next, similar....)
then looking for something common for chart listings, like filepath is always empty, let's look what it really returns
get_browsed_filepath & debug
they all return "search://SOMECATALOGUENUMBER"
so first 9 chars are always "search://"
we can, param_cast text 9
to get just the first 9 chars then make that part of a test for equivalency
get_sideview_title & debug
would have given you hints for the sideview
they return the string "remixes" no matter which it is (next, similar....)
then looking for something common for chart listings, like filepath is always empty, let's look what it really returns
get_browsed_filepath & debug
they all return "search://SOMECATALOGUENUMBER"
so first 9 chars are always "search://"
we can, param_cast text 9
to get just the first 9 chars then make that part of a test for equivalency
browser_window sideview ? sideview "askthedj://" ? search "`get_browsed_song 'message'`" : sideview remixes ? search "`get_browsed_song title`" : : browser_window songs ? param_equal `get_browsed_filepath & param_cast text 9` "search://" ? search "`get_browsed_song title`" : load
Mensajes Sun 07 Jan 24 @ 12:48 am
Ok so you are absolutely amazing, I am gonna have to sit down & think about what you’ve said in the morning after work but the fact that you are able to offer a solution so quickly is mind blowing, I am gonna play in the morning & thank you so much
Mensajes Sun 07 Jan 24 @ 3:31 am
locodog wrote :
native fx are limited to one instance of that effect per deck. Truth be told so are non native fx BUT you can rename them to dodge that limitation.
SBDJ has a solid filter fx available
https://forum.sbdj.co.uk/topic/2/sbdj-filter-v2-0-released
install, make several copies, give each a name that makes sense like
filterRhythm
then call them like so
effect_active rhythm filterRhythm
and control like so
effect_slider rhythm filterRhythm 1 20%
or show the gui
effect_show_gui Rhythm filterRhythm
SBDJ has a solid filter fx available
https://forum.sbdj.co.uk/topic/2/sbdj-filter-v2-0-released
install, make several copies, give each a name that makes sense like
filterRhythm
then call them like so
effect_active rhythm filterRhythm
and control like so
effect_slider rhythm filterRhythm 1 20%
or show the gui
effect_show_gui Rhythm filterRhythm
Thank you for this information! I am now finally in progress building my custom revolutionary DJ controller.
I assume this applies to my problem that the FX locks up when I use several of them on same song but on different stems?
For testing purposes I use the native FX Echo, Reverb and Flanger.
I have looked after the installation folder for all FX to rename and duplicate a few for testing, but I can't find them!? In documents I only see *.ini files for the audio effects. In folders, "AppData" or in "Program Files" I found nothing relevant to rename.
The plan is to use a name scheme for the actual files, something like this:
Echo_Deck1_Vocals.exe
Echo_Deck1_Instruments.exe
Echo_Deck2_Vocals.exe
Echo_Deck2_Instruments.exe
Reverb_Deck1_Vocals.exe
Reverb_Deck1_Instruments.exe
Reverb_Deck2_Vocals.exe
Reverb_Deck2_Instruments.exe
And so on.
I uninstalled all FX I do not use in case it takes unnecessary resources, because there will be MANY instances of same FX loaded now (from different files) since I will have 3 FX on every stem on both decks, lol.
Could maybe Locodog once more bring clarity in my challenges? :-)
Mensajes Mon 08 Jan 24 @ 2:21 pm
native fx are built in, you can't make duplicate copies, the only thing there is to see is .ini
As for making copies of external fx/vst, which are .dll, not .exe, you don't need per deck copies that wouldn't help and make mapping harder.
One named copy for each stem slot is what you need.
As for making copies of external fx/vst, which are .dll, not .exe, you don't need per deck copies that wouldn't help and make mapping harder.
One named copy for each stem slot is what you need.
Mensajes Tue 09 Jan 24 @ 5:11 am
Ok, then I will install third party FX's.
When I for example add an FX on the vocals on the Deck 1 when I stem-mix it out, I want it to trail into the next song (post stem-fader) without the vocals on Deck 2 song being affected, so I need to have the effects separated for every deck also I assume.
If it is not possible to allocate the same *.dll FX file in separate memory for different stems and decks...
Mensajes Sat 13 Jan 24 @ 2:52 pm
decks don't need their own copies, just stems
5 stems, 5 copies of the fx named differently, number of decks does not matter.
5 stems, 5 copies of the fx named differently, number of decks does not matter.
Mensajes Sat 13 Jan 24 @ 3:45 pm
Something of not much, but I've been thinking about this for a while and I actually made it today so here it is.
Beat detection, all software pretty much does the same thing, look for a regular peak and that's your beat marker.
And that works, but I'm picky and for me, that kind of detection marks the "UMP" of the "THUMP"
sure there's smart cue and quantize, all that stuff that means it marks the "UMP" but press at the right time and you get the whole "THUMP"
but I'm picky [and a glutton for punishment] so I very regularly end up moving the CBG that tiny fraction earlier, not always but very often.
So I have reference tracks that I say the CBG is perfect, all my samples sync perfect to them, anything I've cued is in agreement, anything I've cued is a reference track.
So on my new track I set my first beat visually then I'd mix into a reference track to test how it sounds when using sync.
If it's good [and it usually is] then all's well.
if it's a fraction off then it's a bit of a pain, poke the cbg a tiny fraction with adjust_cbg +0.001 , press sync, listen again, do that several times till I'm happy.
Not a productive workflow and I've done it for years :| so today I made this [after thinking about it for nearly as long] , it's my "these are audibly synced - now sync the CBGs" button
get_beatdiff returns 0.5 when 2 cbgs are sync'd, approaches 0.0 when cbg approaches 1/2 beat early, approaches 1.0 when cbg approaches 1/2 beat late.
It only gives grid difference for beat to beat, if you can't figure the position in the bar then you have your own problems [and some techno do be like that]
We have a measurement, do a little math to make it a value that works for a cbg adjustment then param_cast relative it [relative to keep the + sign for a positive adjust] to the adjust_cbg action.
There we go, a get_ action described, what it can be used for and some filler info on adjusting the cbg
Beat detection, all software pretty much does the same thing, look for a regular peak and that's your beat marker.
And that works, but I'm picky and for me, that kind of detection marks the "UMP" of the "THUMP"
sure there's smart cue and quantize, all that stuff that means it marks the "UMP" but press at the right time and you get the whole "THUMP"
but I'm picky [and a glutton for punishment] so I very regularly end up moving the CBG that tiny fraction earlier, not always but very often.
So I have reference tracks that I say the CBG is perfect, all my samples sync perfect to them, anything I've cued is in agreement, anything I've cued is a reference track.
So on my new track I set my first beat visually then I'd mix into a reference track to test how it sounds when using sync.
If it's good [and it usually is] then all's well.
if it's a fraction off then it's a bit of a pain, poke the cbg a tiny fraction with adjust_cbg +0.001 , press sync, listen again, do that several times till I'm happy.
Not a productive workflow and I've done it for years :| so today I made this [after thinking about it for nearly as long] , it's my "these are audibly synced - now sync the CBGs" button
get_beatdiff returns 0.5 when 2 cbgs are sync'd, approaches 0.0 when cbg approaches 1/2 beat early, approaches 1.0 when cbg approaches 1/2 beat late.
It only gives grid difference for beat to beat, if you can't figure the position in the bar then you have your own problems [and some techno do be like that]
param_bigger 0.5 get_beatdiff ? param_multiply -1 `get_beatdiff & param_add -0.5` & param_cast 'relative' & adjust_cbg : param_smaller 0.5 get_beatdiff ? param_add 0.5 `param_multiply -1 get_beatdiff` & param_cast 'relative' & adjust_cbg :
We have a measurement, do a little math to make it a value that works for a cbg adjustment then param_cast relative it [relative to keep the + sign for a positive adjust] to the adjust_cbg action.
There we go, a get_ action described, what it can be used for and some filler info on adjusting the cbg
Mensajes Thu 18 Jan 24 @ 3:56 pm
When I have the stem crossfader in the middle it seems like the curve is on "smooth" or something similar since I do not get full stem-volume on both decks, so I need the "full" curve at least. Is this possible to fix with scripting?
I am currently using your otherwise excellent script for this:
nothing & nothing & param_invert & param_multiply 0.5 & deck 1 filter & param_multiply 2 & param_invert & param_multiply 0.5 & deck 2 filter
I am currently using your otherwise excellent script for this:
nothing & nothing & param_invert & param_multiply 0.5 & deck 1 filter & param_multiply 2 & param_invert & param_multiply 0.5 & deck 2 filter
Mensajes Sun 21 Jan 24 @ 2:39 pm
It's not "smooth", it's linear. smooth is an approximation of a constant power curve.
you have one input and 2 outputs,
full is described like this with vdj crossfader notation
input smaller than 0.5 control the right side directly proportional to the input [I say directly as the output 1's are really 0.5s for a centre based dial], input bigger than 0.5 control the left side inversely proportional to the input, if input bang on 0.5 both outputs set to where you want them
you have one input and 2 outputs,
full is described like this with vdj crossfader notation
0=[1,0]/0.5=[1,1]/1=[0,1]
input smaller than 0.5 control the right side directly proportional to the input [I say directly as the output 1's are really 0.5s for a centre based dial], input bigger than 0.5 control the left side inversely proportional to the input, if input bang on 0.5 both outputs set to where you want them
nothing & nothing & param_smaller 0.5 ? deck 2 filter : param_bigger 0.5 ? param_invert & deck 1 filter : deck 1 filter 0.5 & deck 2 filter 0.5
Mensajes Sun 21 Jan 24 @ 3:21 pm
Oh, It does work as I intended....Thank you a lot!
Mensajes Mon 22 Jan 24 @ 2:04 pm
Is it not yet possible to have full resolution on the faders/knobs only for stem-volume 0-100%?
Mensajes Tue 23 Jan 24 @ 1:55 pm
It's completely possible, script has been arithmetically complete for years now.
figure out what you want mathematically with x as an input and y1 y2 as outputs.
The script won't be all that different.
with a hardware dial [or custom button slider type] you have to wrestle with the implicit, but the rest is + - * /
figure out what you want mathematically with x as an input and y1 y2 as outputs.
The script won't be all that different.
with a hardware dial [or custom button slider type] you have to wrestle with the implicit, but the rest is + - * /
Mensajes Tue 23 Jan 24 @ 2:39 pm
Uhm lol, thank you again for your infinite knowledge about scripting VDJ, contrary to my infinite ignorance about it, lol. I am afraid I need some examples to edit though. Yes, I plan to use high resolution motorized faders for all 5 stems. Is it possible for you to make an example script I can edit? Thank you anyway for your time!
Example script from Bass fader I use now:
nothing & nothing & param_smaller 0.5 ? deck 2 filter : param_bigger 0.5 ? param_invert & deck 1 filter : deck 1 filter 0.5 & deck 2 filter 0.5
Example script from Bass fader I use now:
nothing & nothing & param_smaller 0.5 ? deck 2 filter : param_bigger 0.5 ? param_invert & deck 1 filter : deck 1 filter 0.5 & deck 2 filter 0.5
Mensajes Wed 24 Jan 24 @ 5:12 pm