20 Jun '13 - 11:59 *
Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length
 
   Home   Help Search Login Register  
Pages: [1]
  Reply  |  Print  
Author Topic: C#, Bass.NET, BassASIO, BassVST  (Read 1749 times)
JJS
Posts: 102


« on: 25 May '08 - 16:38 »
Reply with quoteQuote

Hello All,

I'm experimenting with a virtual guitar effects rack module for my shareware application using Bass.NET, BassAsio and BassVst. I was able to put together a working demo application very quickly thanks to BASS and Bass.NET, but I do have a few questions:

I would like to load my VST effects and present the VST editor(s) to the user prior to starting ASIO. Is it possible to decouple the VST plugins from the Input channels? I don't want to have to unload and reload the VSTs if the user switches to a different ASIO input or output channel, or stops ASIO playback for some reason.

Second, My main app (which this effects module will eventually become part of) uses BassMidi to play MIDI files and Bass to play mp3/wma etc. Will there be a problem if both ASIO and non-ASIO playback is enabled for the same device? That is, can I play a MIDI file or a MP3 file using BASS, and have the user playing through the effects rack using BASS/ASIO on the same device?

Thanks








Logged
radio42
Posts: 4030


« Reply #1 on: 25 May '08 - 18:12 »
Reply with quoteQuote

Regarding your ASIO and non-ASIO question:
It is typically not possible to mix ASIO and non-ASIO on the same device. However, this depends on the drivers being used.
Regarding VST: you might use a VST even without a 'channel' - just leave it to zero.
Logged
JJS
Posts: 102


« Reply #2 on: 25 May '08 - 18:55 »
Reply with quoteQuote

Yes, I saw that you could load the VST without a channel, but how would you connect it to the channel once ASIO is started? I'm missing something... I'm just no sure what!
Logged
radio42
Posts: 4030


« Reply #3 on: 26 May '08 - 08:43 »
Reply with quoteQuote

In the 'end' you must of course set a VST to a channel, but you might use the scope to use unchanneled editors.
Here is a very good explanation how this works:
http://www.un4seen.com/forum/?topic=5559.msg56968#msg56968
Logged
JJS
Posts: 102


« Reply #4 on: 27 May '08 - 04:22 »
Reply with quoteQuote

Hmm... I'm not getting it... because I don't understand what "scope" means or does.

Consider that the user wants a chain of VST effects that goes like this EQ=>OVERDRIVE=>EQ

So in my editor display, I want to display an EQ editor, the OVERDRIVE editor and another EQ editor. I want to display those editors (in the order of priority) before starting ASIO, and I want to allow the user to load/save/tweak settings before starting ASIO.

Once I create the ASIO channels and assign the two EQ VSTs and the OVERDRIVE VST, how do I connect them to the previously displayed editors? 

Logged
radio42
Posts: 4030


« Reply #5 on: 27 May '08 - 09:23 »
Reply with quoteQuote

I am not the developer of the VST add-on.
But as far as I can see,
you can first create 'unchanneled' editors for your VSTs you want to use (just using 0 as the stream channel):
editor1a = BASS_VST_ChannelSetDSP(0, "sth1a.dll", ...);
BASS_VST_SetScope(editor1a, 123);
BASS_VST_EmbedEditor(editor1a, ...);

editor1b = BASS_VST_ChannelSetDSP(0, "sth1b.dll", ...);
BASS_VST_SetScope(editor1b, 123);
BASS_VST_EmbedEditor(editor1b, ...);
This enables you to open/close/edit all VST parameters at any time, independent from any real BASS/ASIO stream.

When you now want to create your real physical output stream, you of course need to setup the VST DSPs again for that real stream channel and then copy the params of the previous VSTs to the 'real' once:
editor2a = BASS_VST_ChannelSetDSP(stream, "sth1a.dll", ...);
BASS_VST_SetScope(editor2a, 123);
BASS_VST_SetParamCopyParams(editor1a, editor2a);

editor2b = BASS_VST_ChannelSetDSP(stream, "sth1b.dll", ...);
BASS_VST_SetScope(editor2b, 123);
BASS_VST_SetParamCopyParams(editor2a, editor2b);
Once this is done, you still can open/close/edit all parameters on the first VST editors...so here you should not open the editors on the second VSTs.
Logged
Pages: [1]
  Reply  |  Print  
 
Jump to:  

Powered by SMF 1.1.18 | SMF © 2013, Simple Machines