How can I figure out which MIDI CC controls which VST knob?

Post Reply
River Cricket
Posts: 136
Joined: Sat Dec 20, 2014 6:53 am

How can I figure out which MIDI CC controls which VST knob?

Post by River Cricket »

Stayed up until 2am last night Googling this, to no avail.

I have several VST synths with lots and lots of knobs and sliders.

I also have hardware controls which can be defined as any MIDI CC#.

Everything works in Buzz - I load up Polac VSTi, load a VST .dll, open up the machine, move the hardware, and I see a knob or slider or dial move on the GUI. Redefine the CC#, a different knob or slider or, yes, even dial (hell, sometimes even on/off switches!) moves.

Now: is there any way to figure out what CC# a given knob/slider/dial is "listening" on, outside of trial and error? I can think of many things I'd rather be doing than stepping through 127 different settings hoping to stumble upon the one that moves the dial I actually want to be moving! :)

I tried "Learn All" in Polac VSTi, but the numbers it assigned were completely irrelevant - it'll say a slider is on 12 (or hex 000C), I set the hardware to that, then it ends up controlling something on 05/0005 instead.
ags
Posts: 171
Joined: Sat Nov 26, 2011 4:06 pm

Re: How can I figure out which MIDI CC controls which VST kn

Post by ags »

Hope they've followed table 3 found here: http://www.midi.org/techspecs/midimessages.php#3
Or read the manual.
River Cricket
Posts: 136
Joined: Sat Dec 20, 2014 6:53 am

Re: How can I figure out which MIDI CC controls which VST kn

Post by River Cricket »

ags wrote:Hope they've followed table 3 found here: http://www.midi.org/techspecs/midimessages.php#3
That was my first hope, but nope - completely random. Doesn't even have a logical progression within the .GUI (like having 00 = leftmost, 01 being to the right of that, etc).
ags wrote:Or read the manual.
Hahahaha a manual? :lol: With lots of these synths, I'm lucky if the author included a boilerplate "install by double-clicking the .exe" readme.txt.

But seriously, there's no way to just click a GUI element and see "CC 19", or even just extract that data from the .dll in raw text form? Somehow I doubt that.
User avatar
szaszhareen
Posts: 527
Joined: Wed Nov 23, 2011 1:15 am
Location: deep beneath the earths crust

Re: How can I figure out which MIDI CC controls which VST kn

Post by szaszhareen »

I'd approach this one of two ways:

1 (relatively easy): pick the params you want to control and manually assign the knobs/sliders on your controller to the switches/widgets/whatsits on the vst. you can do this by clicking midi learn in polac vst, moving the desired whatsit on the vst, then right click the vst in machine view and click parameters, which brings up a buzzmachine-style interface with basic left-right sliders. right click a slider and assign it to one of the knobs/faders/sprockets on your controller.

2 (rabbit-hole complicated): use midiox or loopmidi to detect the cc values being sent or received by your vst, make an exhaustive list of these. then use midiox or loopmidi to figure out which cc values are sent by each of the thingamajigs on your controller, make an exhaustive list of those. then cross reference the list and find out that you'll need to use approach #1 anyway, though now with a feeling of futile satisfaction.

I should note that there is a prestep to approach #1: you'll have to go to preferences>midi input, select your controller, and define each knob/slider/thingamabob by clicking add and then twiddling it a bit.

:geek:
River Cricket
Posts: 136
Joined: Sat Dec 20, 2014 6:53 am

Re: How can I figure out which MIDI CC controls which VST kn

Post by River Cricket »

szaszhareen wrote:I'd approach this one of two ways:

1 (relatively easy): pick the params you want to control and manually assign the knobs/sliders on your controller to the switches/widgets/whatsits on the vst. you can do this by clicking midi learn in polac vst, moving the desired whatsit on the vst, then right click the vst in machine view and click parameters, which brings up a buzzmachine-style interface with basic left-right sliders. right click a slider and assign it to one of the knobs/faders/sprockets on your controller.
I've never quite "gotten" this - maybe I have some plugin that automates this, but I don't seem to have to click "midi learn" (or "learn MIDI CC") - the knob labels are automatically available in the Parameters GUI from the start. For instance, here's a machine I just downloaded, first time ever loaded in Buzz:
Image

Anyway, this is one way, but then I have to re-do it each time I start a new song, and the Buzz GUI is pretty finicky - it's like the "Param" slider (EG #1 Attack in the screenshot) is numbered 1-1024, so I have to click, hold, and use the mouse-wheel to scroll through the parameters (since even a tiny bit of dragging brings it into the "no mans land" in the middle). I would much rather set my hardware to CC #16 (or whatever) and know that it'll always control the LFO Depth (or whatever) on a particular synth.
szaszhareen wrote:2 (rabbit-hole complicated): use midiox or loopmidi to detect the cc values being sent or received by your vst, make an exhaustive list of these.
This sounds much more like what I want - but how exactly would I go about doing that? I'm guessing set the machine to output to system MIDI somehow, then sniff that (computer) MIDI device in midi-ox while tweaking knobs?
szaszhareen wrote:then use midiox or loopmidi to figure out which cc values are sent by each of the thingamajigs on your controller
See, this part I wouldn't need to do - I can (and do) set the controller thingamajigs to any CC value I like. So instead of using Buzz as the middle-man to convert hardware CC x into VST CC y, I can just set the hardware to send CC y right from the start - makes it easy to hop into a new song without setup, and in theory would make it simpler to hop from Buzz into Ableton/REAPER/whatever, except I've never had a reason to leave Buzz in the first place! :D

Hope I don't sound too picky or impossible to please here - trust me, I appreciate you taking the time to help out.
Post Reply