Jump to content

Program changes on VST


Leighton Cooper

Recommended Posts

Is it possible to make program changes on most VST's or do you have to convert your patch to an audio file?  When I look at the insert program change on the Insert menu, it doesn't seem to list my VST's as an option?  Do I have to create a new midi track everytime I want to change a sound with a new vst?

Thanks so much

Link to comment
Share on other sites

Is the synth or VSTi physically modelled or does it use samples.  Also, does the VSTi actually repond to program change events.

If the VSTi is physically modelled and it responds to program changes (like Applied Acoustic Systems VSTis for eg), then the patch changes are responded to  pretty much instantly.

If the VSTi uses sample and it responds to program changes, then there will be significant delay while the sample is being loaded.  In that case, maybe freezing the track might be in order.

Regarding the list of patches. 

There are some VSTs that populate this list - otherwise you have to read the manual for that VSTi to know what program change commands to send.

If you're using a hardware synth and you have correctly loaded the appropriate Instrument definition file (INS), then the patch list will be populated with the correct patches for that hardware synth. This is assuming the INS file contains the names.

Bottom line is that it depends entirely on the VSTi or synth.

  • Like 1
Link to comment
Share on other sites

I don't change presets within one instance of a VST, in the middle of a track.  Instead, I set up a different instance of the VST with its own audio and midi tracks, and it is just easier that way - each can have their own effects chains, EQ, panning, etc.

Here is a link to CbB documentation on doing an insert of a bank/patch change:

http://www.cakewalk.com/Documentation?product=Cakewalk&language=3&help=Playback.24.html

And as noted in the @Promidi  reply above mine, each VSTi will have its own implementation of how to perform midi bank/program changes, so what information you would be selecting would be entirely dependent on finding out that information from the VSTi you are trying to do this for.

Further, again as noted in the prior reply, sample-based instruments will take some period of time to load, if you were to insert a bank/patch (or bank/program means same thing), and that makes it really hard to have that happen properly.

Because of the complexity and practical reasons listed above, (to do an insert Bank/Program change), instead, I just load up a new instance of the VSTi, and get it set up with whatever the new sound is going to be loaded up for it, and then start recording midi data on the new midi track for that new VSTi instance, and it keeps it all simple.  Please note that this does waste a bit of memory, because I have an extra loaded VSTi module for every synth I do this for, AND, if sample-based, having the sample file(s) also loaded into memory, AND, if I am never going to go back to use the first instance of that plugin, and its sound, then it is going to use that memory for the duration of the project.

I do not concern myself with the amount of memory I may end up using, because my main DAW has 128 GB of memory, but you can safely load a large number of synths (and duplicate loads of several of them - to use new sounds from the same VSTi like I do, with 16 GB or even 8 GB - though these days I think 16 GB would be the minimum target amount of memory for any DAW I would set up for myself).

I hope the above helps some - I suggest you try just setting up the additional instance of the VSTi you are asking about doing the bank/program change for, and see if that works for you.  I think it a much easier approach.

Bob Bone

 

 

  • Like 1
Link to comment
Share on other sites

Hi, Leighton - I urge you to go back and read my earlier reply to this thread, where I go into some detail as to why I set up a new instance of the same plugin, with its own synth instance, its own audio and midi tracks.  It is just easier to deal with, for the reasons I explained.

You certainly CAN insert bank/program changes, I just don't think it works as well as treating each preset as a separate entity all by itself.

Bob Bone

 

  • Meh 1
Link to comment
Share on other sites

17 hours ago, Leighton Cooper said:

Is it possible to make program changes on most VST's . . . ?  Do I have to create a new midi track everytime I want to change a sound with a new vst?

As has been pointed out, it varies from soft synth to soft synth.

Just some footnotes regarding program changes in VST3s. I was doing some research based on your question(s) and found these which might interest you:

(1) Discussion board at Steinberg from February lamenting "No Program Changes in VST3."

(2) from the 2019.09 "Features Overview" here (emphasis added--"for plug-ins that expose . . . program changes"):
 

Quote

 

Support for VST3 Program Changes

Cakewalk now supports changing programs for VST3 plug-ins via a new Program change parameter. There is now a Preset value at the end of the automation parameter list that will change plugin preset values for plugins that support it. NOTE: This Preset parameter is only displayed for plug-ins that expose VST3 program changes to the host. (It may not always be named “Preset”)

Waves plug-ins support the new program change parameter.

The new Preset parameter can be automated via envelopes. 

For supported VST3 plug-ins, program changes can be done during playback via MIDI messages. To do that you must enable Translate Program Changes in the plug-in properties first and then restart the app.

For some plug-ins, program changes can be expensive. Don’t use sweeps to automate the program change parameter. Instead use jump events or linear sections.

 

Hope this helps.

  • Like 2
Link to comment
Share on other sites

As the thread says VST3 does support program changes but it is very poorly supported by plug-in vendors. Most don't implement it at all and many who try and implement it do it poorly.

In 2019.09 we added support for program changes via a new Preset parameter that can be automated. This is unique to CbB since other DAW's don't allow this. You can even assign this to a widget in the inspector to change the program change value from CbB. This will only work if the plugin actually implements VST3 program changes properly.

  • Like 3
  • Thanks 1
Link to comment
Share on other sites

I don't think I've embedded a program change in a MIDI track in this century.

When I was using hardware synths exclusively and limited to 4 tracks, program changes (and sysex dumps) were essential. But when you can have nearly unlimited instances of software synthesizers and your DAW remembers everything for you, there's really no reason to bother.

 

  • Like 3
  • Great Idea 1
  • Meh 1
Link to comment
Share on other sites

I have run across many VST plug-in instruments that do not expose their presets to the host, and instead use a proprietary internal preset manager/browser that does not use the legacy MIDI bank/patch method.

In these cases, using a separate MIDI track/plug-in instance for each preset in the project seems to be a preferred workflow.

But if this gets too "expensive" with resource usage, then freezing the tracks is a great option! That converts the track to a wave file with minimal resource requirements, and is easily reversible if a change is desired. Just unfreeze the track! :)

  • Like 1
Link to comment
Share on other sites

  • 1 year later...
On 10/18/2019 at 10:18 PM, Robert Bone said:

Hi, Leighton - I urge you to go back and read my earlier reply to this thread, where I go into some detail as to why I set up a new instance of the same plugin, with its own synth instance, its own audio and midi tracks.  It is just easier to deal with, for the reasons I explained.

You certainly CAN insert bank/program changes, I just don't think it works as well as treating each preset as a separate entity all by itself.

Bob Bone

 

No No No !

There is nothing wrong with doing it and nothing wrong mentioning it (once).

BUT: Please do NOT promote laziness. Don't urge people to chose the stupid way. Please let the smart stuff flood this forum instead.

Some vendors implemented solid solutions for switching patches via MIDI.  Some vendors listen to their customers, when they request the MIDI program change feature. Sometimes you can figure out undocumented behavior and sometimes there are ways to translate MIDI program changes to *.fxp switching. For the VSTi designer it isn't that difficult to implement MIDI program changes. It was there on the old 8 bit hardware synths in the late 80ies ... And it worked. Flawless. For decades.

"Forgetting" convenient and reliable features is a poor move of the VSTi designers. Instead of supporting their ignorance by using to the most stupid/primitive way of adding a new track for every bell and whistle, people should carry on requesting the MIDI program change feature !  Write an email. Request it. They  can  do it. Urge people to be smart, not stupid. Pleeease ...

It is resource-friendly in every way, and the way to go if you want to play live.  With a proper MIDI program change you can use your master keyboard to switch sounds on the fly.

It is ridiculous to rely on MIDI note/off but ignore its other capabilities at the same time.  Luckily Cakewalk _always_ had better MIDI implementation than its competitors.  But even there bad habits started:   while  z3ta+  has a flawless MIDI program change behavior  Z3TA+2  is a step down.  Immediately switched back ... 

Let's put the focus from shiny interfaces back to smart features ! 

 

Edited by Richie_01
Link to comment
Share on other sites

11 hours ago, Richie_01 said:

Some vendors implemented solid solutions for switching patches via MIDI. 

You do realize that you are responding to a thread over a year old?

Besides it's up to the VSTi vendor. Cakewalk supports the feature if the plug-in is capable.

Link to comment
Share on other sites

On 11/16/2020 at 7:41 PM, Richie_01 said:

No No No !

There is nothing wrong with doing it and nothing wrong mentioning it (once).

BUT: Please do NOT promote laziness. Don't urge people to chose the stupid way. Please let the smart stuff flood this forum instead.

Some vendors implemented solid solutions for switching patches via MIDI.  Some vendors listen to their customers, when they request the MIDI program change feature. Sometimes you can figure out undocumented behavior and sometimes there are ways to translate MIDI program changes to *.fxp switching. For the VSTi designer it isn't that difficult to implement MIDI program changes. It was there on the old 8 bit hardware synths in the late 80ies ... And it worked. Flawless. For decades.

"Forgetting" convenient and reliable features is a poor move of the VSTi designers. Instead of supporting their ignorance by using to the most stupid/primitive way of adding a new track for every bell and whistle, people should carry on requesting the MIDI program change feature !  Write an email. Request it. They  can  do it. Urge people to be smart, not stupid. Pleeease ...

It is resource-friendly in every way, and the way to go if you want to play live.  With a proper MIDI program change you can use your master keyboard to switch sounds on the fly.

It is ridiculous to rely on MIDI note/off but ignore its other capabilities at the same time.  Luckily Cakewalk _always_ had better MIDI implementation than its competitors.  But even there bad habits started:   while  z3ta+  has a flawless MIDI program change behavior  Z3TA+2  is a step down.  Immediately switched back ... 

Let's put the focus from shiny interfaces back to smart features ! 

 

It is all quite subjective, as to how we all view things, when there are multiple ways to accomplish things.  Both approaches are valid, for different reasons.  I used to insert bank/program changes into the MIDI data, we all did, because we had to.  There were not enough computer resources, generally, to support having multiple instances of a given synth.  The limitations of memory/horsepower has been largely mitigated by the amazing advances in technology, as well as the ever dropping cost for memory, storage, and CPU muscle/speed.  For me, and for many, many, years, I have had zero need to worry about resource consumption through multiple instances of a given plugin (usually a non-sample based synth), and have cheerfully enjoyed treating the multiple synth instances completely separately.

In addition to resources and ease of dealing with the multiple synth instances separately, by doing so, I am completely free to swap out any of those plugin instances for a completely different plugin, to better dial in the best sound for that bit of the song, without having to give any thought, whatsoever, about it.  

 In any case, the above, and my earlier comments, are how I have approached the notion of  multiple sounds from a given synth - I happen to have chosen my approach, and it works, and I don't sweat it.  My primary music production desktop, has 128 GB of memory, a processor with 32 cores, two 2TB NVME dries, and six 2TB SSD's.  Even on my laptop, resoures are not an issue, as it has an i7 processor, 32 GB of memory, two 2TB NVME drives, and a 2TB SSD. 

 Your approach is just as valid, if you, or anyone, wishes to choose that approach.  I just have chosen my approach, and am quite happy with it, and have been, for 15+ years, out of the 30 years I have been doing this.  :)

Bob Bone

  • Like 1
Link to comment
Share on other sites

  • 4 weeks later...

@abacab   "You do realize that you are responding to a thread over a year old?"

Yes. I am not stupid.  BTW you also respond to a thread over a year old ... without adding any new information ...

 

@Bob Bone   Well you explained that already. No need to repeat the obvious ... all of that is understood.

What I dislike is the "I urge you to ..."  when there are more intelligent solutions.  A smart question should bring up smart ideas. Those who play live might want to make use of their not-so-powerful old laptop. You can. If you act smartly.  E. g.

https://github.com/surge-synthesizer/surge/issues/576#issuecomment-721955716

Link to comment
Share on other sites

As I have written in another thread, VST2 is obsolete and VST3 does not support "program changes" directly, it is forced to be "preset change" possibly (auto) bound to incoming PC MIDI messages (by host, messages are not delivered to plug-ins). So that idea is closed: in case of VST (which is VST3 only since 2018) PCs make no sense.

Even before, while some soft synths can switch presets in "real-time", most can't. They have to access the disk to load the preset and other related info (f.e. samples). In real-time with "modern" latency that has to happened within 1-2ms. That doesn't work even with i9+M2+50M file, while usual drum synth has to load 1-5GB. So, instant switching in general can work stable with "preloaded" presets only, and that in turn can be done with parallel tracks only.

 

  • Like 1
Link to comment
Share on other sites

Well in your world VST2 may be obsolete.

In my world, where musicians play live, keyboards and sequencers have the rock solid MIDI interface, VST3 is obsolete. All of the plugins I came across up to now have a working VST2 version.  Steinberg can keep their crappy VST3. There is  no  technical reason to rely on MIDI for note on/off, pitch bend and modulation and at the same time scrap the quite simple and solid pc and cc functionality. This is nothing but company politics.

In my setup most VSTi   can  change their presets via MIDI. If you can't figure it out, doesn't mean it can't be done. Actually most of the time it  does  work. Which song needs to reload a 5 GB drum set while playing ?  Who would have come up with such a ridiculous idea in the old days when we used hardware samplers ?  Why do people present such Mr. obvious nonsense examples to argue against smart solutions ?

For every problem-solving posting there is at least 10 postings with non helpful guesswork, biased opinions, technically incorrect claims ...

Someone said we live in the time of smart phones and stupid people ... 

Edited by Richie_01
Link to comment
Share on other sites

“We live in an era of smart phones and stupid people.... Go figure.”

― Ziad K. Abdelnour, Economic Warfare: Secrets of Wealth Creation in the Age of Welfare Politics

then again, maybe people just want to make music and not be technicians? so many companies are trying to create thing which help people make music. and for people liking to dive under the hood and tweak, there's still that. however in the 21st century, the Jetsons promised us flying cars, universal happiness, and cool hairdos... still waiting... oh, and MIDI 2.0 someday... 🙂 

Link to comment
Share on other sites

7 hours ago, Richie_01 said:

Well in your world VST2 may be obsolete.

In my world, where musicians play live, keyboards and sequencers have the rock solid MIDI interface, VST3 is obsolete. All of the plugins I came across up to now have a working VST2 version.  Steinberg can keep their crappy VST3. There is  no  technical reason to rely on MIDI for note on/off, pitch bend and modulation and at the same time scrap the quite simple and solid pc and cc functionality. This is nothing but company politics.

In my setup most VSTi   can  change their presets via MIDI. If you can't figure it out, doesn't mean it can't be done. Actually most of the time it  does  work. Which song needs to reload a 5 GB drum set while playing ?  Who would have come up with such a ridiculous idea in the old days when we used hardware samplers ?  Why do people present such Mr. obvious nonsense examples to argue against smart solutions ?

For every problem-solving posting there is at least 10 postings with non helpful guesswork, biased opinions, technically incorrect claims ...

Someone said we live in the time of smart phones and stupid people ... 

Let's take it easy on the labeling of 'stupid'. 

Firstly, a perfectly valid way of accomplishing changing sounds, but different than your perfectly valid way of accomplishing changing sounds, was labeled, by you, as being 'the stupid way', of accomplishing having a different sound for a synth.

Secondly, you have now added a reference, citing someone's comment about there being 'smart phones and stupid people', in response to one of the most recent responses to one of your recently-posted comments, which moves into an unacceptable kind of comment to post in these forums.

It is fine to disagree with each other, any of us, on which method for accomplishing something, is the 'best' way of doing something, however it is not fine to start labeling/inferring posts or people, as stupid, in these forums.

I will ask you politely, once, to refrain from those sorts of comments in your posts, in these Cakewalk user forums, as they violate the terms of service for posting.

Thanks, 

Bob Bone

  • Thanks 1
Link to comment
Share on other sites

Hilarious to dig up an old post, the OP never responded. We are giving advice to the air in other words, and then some one with a post count of 8 decides this topic has been poorly answered and the topic is sort of redundant in this day and age. I've used midi since 1984 and I like Dave have not used a  PG since ?? bet its 12 years. I use a lot of midi and I'm not lazy. 

The only use I can think of is to control outboard synths.

It's actually the first thing I do if I open one of my own midi files or a download is delete the PG and Bank info so it doesn't screw up my plans. 

  • Like 3
Link to comment
Share on other sites

13 hours ago, Richie_01 said:

Yes. I am not stupid.  BTW you also respond to a thread over a year old ... without adding any new information ...

Not true. I added that "it's up to the VSTi vendor. Cakewalk supports the feature if the plug-in is capable".

  • Like 1
Link to comment
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
×
×
  • Create New...