Changing VST instrument patches live?

Started by That BioMechanical Dude, May 06, 2016, 19:49:34

Previous topic - Next topic

That BioMechanical Dude

I could say I'm still a bit of a noob, when it comes to VST instruments. One thing that really bothers me is that there doesn't seem to be a way to change patches/presets using any kind of Parameter Controls of MIDI CC events (or is there?) Any kind of parameter controls are out of the picture simply because no VST has a parameter, through which you can select a patch. And I don't want to load a different VST for every single instrument. So is there a way to change the patches from within the patterns, using effects or control parameters?

LPChip

I haven't tested it, but MIDI CC 0 is for bank select.

See also: http://nickfever.com/music/midi-cc-list
"Heh, maybe I should've joined the compo only because it would've meant I wouldn't have had to worry about a damn EQ or compressor for a change. " - Atlantis
"yes.. I think in this case it was wishful thinking: MPT is makng my life hard so it must be wrong" - Rewbs

That BioMechanical Dude

#2
Well, this is embarrassing, but since I'm not finding it in OpenMPT's help... how exactly do you enter MIDI CCs without an actual keyboard? I don't have one, so I'm not sure what to enter. The Zxx macros seem to do their own thing... uh, what do I do exactly?

*EDIT: It seems that I can set up Zxx macros to include a MIDI CC message. Found the bank select... although how do I input a value for the bank? The Value comes up as Bc00z. What does it exactly mean (how do you break it down)?

LPChip

"Heh, maybe I should've joined the compo only because it would've meant I wouldn't have had to worry about a damn EQ or compressor for a change. " - Atlantis
"yes.. I think in this case it was wishful thinking: MPT is makng my life hard so it must be wrong" - Rewbs

That BioMechanical Dude

Unfortunately, the MIDI CC method doesn't seem to work. I try out the following:

SF0 (MIDI CC)
Z01
...
...
...
Z02

This should technically change the patch, but it doesn't do anything. If I'm doing anything wrong, let me know.

Saga Musix

Bank select alone will not change the patch. The MIDI macro to enter for patch select is Cc Z. A bank select must always be followed by a patch select message, but most synths only have one bank anyway.
However, a much easier way to do what you want is to create several instruments pointing to the same instrument plugin and assign a different MIDI program there.
» No support, bug reports, feature requests via private messages - they will not be answered. Use the forums and the issue tracker so that everyone can benefit from your post.

That BioMechanical Dude

But that's exactly what I'm trying to avoid. I'm gonna use a limited number of channels and assign a single plugin instance to each channel. That way it'd be easier to control them individually (there wouldn't be an instance, where a channel is using a certain instrument and I have to turn the volume down, but that would also turn the volume down on another channel, using the same instrument)
Also, can you explain the Cc Z thing? It's not an actual CC message. I'm I supposed to enter it into Value? Does Z represent anything? What do I do with that thing?

*EDIT: Nevermind. Figured it out.

Saga Musix

QuoteBut that's exactly what I'm trying to avoid
No, you said that you want to avoid duplicating plugins - Keep in mind that you can use more than one module instrument to control the same plugin instance!
The problem you describe is exactly the use case for assigning more than one instrument to a plugin instance!

QuoteAlso, can you explain the Cc Z thing? It's not an actual CC message. I'm I supposed to enter it into Value? Does Z represent anything? What do I do with that thing?
Correct, patch change is not a CC message. "Bc" is a MIDI CC, "Cc" is a MIDI patch change. The syntax simply follows the MIDI protocol, augmented by variables like "c" (which stands for the current MIDI channel) and "z" (which stands for the Zxx parameter.
All of these parameters are explained in the Macro configuration manual.
» No support, bug reports, feature requests via private messages - they will not be answered. Use the forums and the issue tracker so that everyone can benefit from your post.

That BioMechanical Dude

Quote from: Saga Musix on May 09, 2016, 10:46:31
QuoteBut that's exactly what I'm trying to avoid
No, you said that you want to avoid duplicating plugins - Keep in mind that you can use more than one module instrument to control the same plugin instance!
The problem you describe is exactly the use case for assigning more than one instrument to a plugin instance!

Yeah, but you can't use a plug-in for playing two patches at the same time, for instance. And if we go by my idea to have a single plug-in for each channel, this would mean I'd have to make a different instrument for every patch of every plug-in. That will get messy very quickly. I suppose, besides duplicating plug-ins, I should have mentioned I want to avoid duplicating instruments, but I thought this would be obvious to guess. The point is to make the most compact and yet robust instrument system I could create, with as little plug-ins and instruments as possible.

Saga Musix

QuoteThat will get messy very quickly
I'd actually say that having one instrument per instrument (as silly as it may sound) is actually more organized, since you see at all times which instrument is playing in the pattern, and when jumping around in the order list the currently used instrument will always be the correct one, which is not given with MIDI macros. Having one mod instrument per real instrument is just the more natural choice, but of course it's up to you how to organize them - but you won't get the tracker to handle the instrument changes for you anymore, as said.
» No support, bug reports, feature requests via private messages - they will not be answered. Use the forums and the issue tracker so that everyone can benefit from your post.