Quick Sign In:  

Forum: General Discussion

Topic: Plugin Development - any further resources I can use?
Hey Team

I have a vague idea of a creative project where I get the current musical keys of each deck, send it on to max/msp and use that to say, set the scale of an autotune microphone. Or maybe set the scale of a keyboard to make it dummyproof to noodle along to. But more than that I'm just interested in knowing how to get information out of VDJ so I can use it on my own development turf.

Currently I have bits of that workflow mostly working, using os2l sending commands to a nodejs server, which can then send on commands to max/msp via midi or http or any other method (I'm assuming this part of the puzzle is more solvable so leaving it till later).

It doesn't look like it should work, but I've got this script running against ONINIT in mapping:

repeat_start "WaitTimer" 10000ms & get_key & param_cast "text" & param_equal Cm ? os2l_button Cm : os2l_button C#m

For whatever reason, it sends the key as a os2l button name, no matter what it is (the script suggests it should only send Cm or C#m but hey, it's working for now at least)

However, when I restart the nodejs server accepting the o2sl, the connection is severed and doesn't reconnect until I restart vdj. Not ideal at all.

What I'd like to do is get into plugin/extension development. I'm able to compile the provided examples and they work (or at least, the stuff that should work on my free version works). But now I've hit a bit of a wall where I would normally be depending on console logs to probe around. Being a nodejs developer, C is obviously quite a bit more complex and specific so I'm trying to learn that AND figure out how and what VDJ makes available in that context.

So obviously there's not a specific question in there - my question is more, how do yall do this? Whats your workflow for developing & debugging VDJ extensions? Are there some videos or articles somewhere I've been missing in my googling? Should I be trying a seperate C project as a starter, and if so, suggestions?

(M1 Macbook btw, using xCode for compilation)

Open to ideas here!

geposted Mon 25 Sep 23 @ 8:53 pm
ah pretty sure I put this in the wrong thread - can a mod delete please

geposted Wed 27 Sep 23 @ 7:13 am
locodogPRO InfinityModeratorMember since 2013
I believe param_cast 'text' & param_equal have issues.

your case you could

param_equal `get_key` "Cm" ? is equal : is not equal

geposted Wed 27 Sep 23 @ 3:35 pm