support vst instrument (vsti) ?

Started by vento,

vento

Hey,

How can I play a midi through a vsti (vst instrument like chip32 or fm8, or ...) ? Is Bass authorized it ?
I currently use c# and bass.net; it works fine and it's very simple to use. But at this point, i found nothing on help and forum. Is it possible ?

My code looks like:

            int m_stream = BassMidi.BASS_MIDI_StreamCreateFile(Application.StartupPath + "/c.mid", 0, 0, BASSStream.BASS_SAMPLE_FLOAT, 44100);
            Bass.BASS_ChannelPlay(m_stream , false);

// That works fine if i place a soundft with the same file name (c.sf2).

// But that following line looks like non-sense  :-\ and not working
            int m_vst1 = BassVst.BASS_VST_ChannelSetDSP(0, m_VstInstrument, 0, 1);

Thanks for help!


radio42

As far as I know with BASS_VST you can only use VST DSP - I am not sure, if VSTi together with Midi is actually supported - but I guess not.

vento

Quote from: radio42As far as I know with BASS_VST you can only use VST DSP - I am not sure, if VSTi together with Midi is actually supported - but I guess not.

It's clearly specified (that i did not read before)

"VST effects that have no input channels (so called "Instruments") are not loaded by BASS_VST. So you can assume chansIn and chansOut to be at least 1."  :-\


Franck REVOLLE

I've made a sample in C++ Windows, using VSTi.
The sample includes BASS-ASIO, a BASS-MIXER (to mix other streams like BASS-MIDI SF2 in the sample), and a VSTi "baby-host" linked to the mixer. It plays 2 notes on the VSTi and on the SF2, through ASIO or Windows sound driver.
I've made basic test with some VSTi (e.g. the fabulous pianoteq), with some SF2, and with some ASIO cards (e.g un4seen).
Warning : it's not a robust library at all !!! It's just a sample to show how to start, for beginners (like me ...).
If any bug, don't hesiatte to correct it.

Gamo

Franck REVOLLE ,
      Could you convert it to Delphi or VB?

Franck REVOLLE

No , I can't. Sorry. I don't have VB nor Delphi.
 :-\

bpetersen

Hello all,

I am the author of BASS_VST - and you all are right, currently, BASS_VST only supports VST effect plugins and does not support VST instrument plugins (VSTi).

However, I have looked at this stuff, and at a first glance, it seems as if VSTi can be added to BASS_VST easily.

So, with a 90% chance, BASS_VST will support VST instrument plugins the next days  :)

For this purpose, there will be a new function for creating a channel:

vstHandle = BASS_VST_ChannelCreate(DWORD freq, DWORD chans, const void* dllFile, DWORD flags);
The returned handle can be used with any other useful BASS_Channel*() and BASS_VST_*() function then.

Finally, another function to trigger MIDI events should be implemented - but that should be all, shouldn't it?

Any comments to this are welcome.

Regards - and a good night from Hamburg,
Bjoern

firemen

#7
bpetersen  Super!!!
update please for bass 2.4

bpetersen


firemen


bpetersen

Quote from: firemenI about   BASS_VST_ChannelCreate (:

Ok - as mentioned above, if it will come, it will come soon. For 2.4, of course.

bpetersen

Hello -

VST instruments (VSTi plugins) are supported now ;D Click for details...

Best regards,
Bjoern