vst~ instrument woes

    Feb 22 2006 | 11:45 pm
    Hi all, Having some trouble here with VST~ and vst instruments. I keep getting the following error:
    • error: vst~: midievent: effect doesn't want events
    I know this is SUPPOSE to appear when audio is not one, but it IS on. My biggest frustration is that I can't seem to pinpoint the problem. If I load the VST instrument in the help patch (or something similar)...no problems. But once I put it into an abstraction, or (gasp) a poly~ (as part of a much larger patch), I get this error. But not always. Sometimes I'll have two abstractions with just the VST~, one will work, one won't, but once the one that will work makes a sound, the one that didn't starts to work?!?! 8 hours I've been trying to track this problem down...
    So before I continue down the road of despair spending more time tracking down this problem (or present a patch the shows the problem consistently), are there any known issue I should be aware of wrt using vst instruments in vst~s in poly~s or abstractions?
    Thanks, David

    • Feb 23 2006 | 12:44 am
      I had the same problem. Tried narrowing down what was causing it and never did. Found a work around though.
      I made a very basic VSTi plugin called VSTiHolder - bare bones - doesn't actually do anything. Do remember to use the plugconfig object with the line
      #C synth;
      in it.
      I then made this VSTi the default plugin in the VST object.
      VST VSTiHolder instead of VST none
      This seems to have fixed the problem. Now you can load any VSTi into the VST object and it will work.
    • Feb 23 2006 | 1:24 am
      Hi Stefan, Thanks for the reply. Problem is that I am not the one making the instruments...only using them.
      So a bit more work has narrowed the problem down to vst~ inside a poly~ causing the problems. There are two patches below: first is the main patch with the poly~, second, which needs to be named "tmd.playbank" is the abstraction for the poly~. Instructions in the patch.
      My guess is that the vst~ object is not getting the message that audio is on somehow, and therefore generating the error.
      Hope this helps.
      --main patch
      --to be saved as tmd.playbank
    • Feb 23 2006 | 1:31 am
      Stefan...I re-read your message and missed the last part! So if I initially give the vst~ object an argument of a vst~ instrument, it will work for all plugins and vst~ instruments. Thanks for the tip! It does solve the problem in the short term...but I think this is pointing to a bug of some sorts. Maybe the fine folks at cycling74 can illuminate the problem for us ;)
      Thanks again, David
    • Feb 23 2006 | 9:11 am
      I've been experiencing this problem for some time, in a patch which has 4 VSTi players which are identical sub patches, but whereas three of them _usually_ play ok, one of the _usually_ produces this error. I tried to to document this in detail, but could never get the damn thing to behave consistently. Sometimes it could be dealt with by paste-replacing the offending patch, sometimes it would work in a standalone, but not the patch, sometimes.... You get the picture. (The 'mail is sitting in my Draft's folder with the title "Weird as tits on a Bishop").
      Suffice it to say that this problem has been around for some time, and I will now try Stefan's work around, (big thanks in advance if it works) cheers Roger
    • Feb 23 2006 | 9:22 am
      Sorry to pour cold water on this theory, but it sounds just like the problem that I've been experiencing and I'm not using poly~ ( if you're suggesting that poly~ is the source of the problem) cheers Roger
      > So a bit more work has narrowed the problem down to > vst~ inside a poly~ causing the problems.
    • Feb 23 2006 | 9:34 am
      well regardless, Stefan's solution is working for me ;) just modified a vst plugin i made that simply passed audio thru and added the line that he suggested: #C synth;
      i've had the same problem in abstractions as well. just seems like the vst object is not getting the note that audio is on if it is not in the main/parent patch.
      have you seen this error when the vst~ has not been in an abstraction? or subpatch even?
    • Feb 23 2006 | 11:31 am
      Now you mention it, I can't say I have seen this outside of a sub-patch.
      Having a slight problen with Stefan's workaround: it works fine in the patch (ie. running in Max), but i can't get the dummy plug to load in a standalone. I've tried including it as a file when building the app, tried dropping it in the same folder as the app, and dropping it in various locations within the app's package, but I just get '�error: vst~: dumbplug: error -1 opening plug-in'.
      What's worse, in the standalone I can't even load a plug into the vst~s; sending them a 'plug' message gives not so much as an error message :(
      The dummy plug is no more than a plugout~ and a plugconfig with the all importantl #C synth; added. Any suggestions ? cheers Roger
    • Feb 23 2006 | 4:31 pm
      Guess I wrote that first post too fast. There is one other bit of info you need. If you are making your own pluggins you need to have the latest version of Pluggo or the free Pluggo Jr. installed. That should fix the problem.
      In case anyone is interested - here is my VSTi dummy patch. (It actually uses the AU DLS Synth to play GM sounds. Note this is only a MIDI out to the Synth so this VSTi does not actually output the audio into Max/MSP, but it does let you test if the VST~ object is getting MIDI data.)
    • Feb 23 2006 | 6:43 pm
      I have the latest Pluggo installed. Like I said your fix works fine in Max, for which I'm very grateful, but I can't understand why vst~ can't load it in a standalone. Anyone? cheers Roger
    • Feb 23 2006 | 8:22 pm
      This reminds me of a question I had a while ago...
      How to make an instrument that will act like a synth (VSTi), yet still allow audio input? Like a filter whose cutoff is controlled with a midi notes.
      It seems that as soon as I put #C synth; into the plugconfig, the audio input is shut off - and then without it, it doesn't like midievents.
    • Feb 23 2006 | 9:42 pm
      > It seems that as soon as I put #C synth; into the > plugconfig, the audio input is shut off - and then > without it, it doesn't like midievents.
      unfortunately you can still not use plugmidiin for effects, my guess is that is has something to do with the fact that any of the possible host apps treats midi differently. would be great if it would work at least in steinberg apps..
    • Feb 23 2006 | 9:46 pm
      > > It seems that as soon as I put #C synth; into the > > plugconfig, the audio input is shut off - and then > > without it, it doesn't like midievents. > > > unfortunately you can still not use plugmidiin for > effects
      sorry, second post.
      it is relatively simple to make yourself a synth type plug-in which can recieve any midi you want and wires the midi data to plugsends which can be referenced from custom effects. so if you need it bad just do it this way.
    • Feb 24 2006 | 9:46 am
      You can get round this by making two plugs - one to process audio and one ('synth') to receive the midi. You can then communicate between the two using the usual send/receive, send~/receive~ or even plugsend/plugreceive. It's a bit of a pain and depending on which sequencer you use, you have to give some thought to how to set it up, but it certainly can be done. cheers Roger
    • Feb 24 2006 | 11:03 am
      OK, so I've managed to get it working in a standalone by loadbanging 'plug dumbplug' into the vst~, with dumbplug in the package's Contents/MacOS/Support folder. Still curious as to why it doesn't work if I simply put dumbplug as an argument to vst~ though. Thanks again for the fix, Stefan; I spent so long tearing my hair out over this one! cheers
    • Aug 16 2006 | 6:11 pm
      Let's try and get to the bottom of this.
      First off - there's nothing we can do in 4.6 because there is no compatible pluggo. So we'll all need to be using 4.5.7 and the 3.5.4 Pluggo runtime.
      I shall try and recreate the problem - if anybody has any further clues for me I'd be most grateful - like version/platform info for starters.