Hi again,
I added the option in the .bas file, like this:
' BASS_ASIO_Init flags
Global Const BASS_ASIO_THREAD = 1 ' host driver in dedicated thread
Global Const BASS_ASIO_JOINORDER = 2 ' order joined channels by when they were joined
Global Const BASS_ASIO_ALLOUTPUTS = 16 ' pre-enable all output channels
Global Const BASS_ASIO_ALLINPUTS = 8 ' pre-enable all input channels
and replaced the .dll by your last provided.
Here is the code in the dropdown list (ComboBox) :
Call BASS_ASIO_ChannelEnable(BASSFALSE, ASIOChanOut, 0, 0) 'disable old channels
ASIOChanOut = cmbASIOChanOut.ListIndex
Call BASS_ASIO_ChannelEnableBASS(BASSFALSE, ASIOChanOut, MixerMain, BASSTRUE)
It's OK when I open the dropdown list and click on channels I want, but if I scroll with the mousewheel, I sometimes get speed stuttering on "old channels". SO I tested with adding a small pause:
Call BASS_ASIO_ChannelEnable(BASSFALSE, ASIOChanOut, 0, 0) 'disable old channels
hb_sleep (50)
ASIOChanOut = cmbASIOChanOut.ListIndex
Call BASS_ASIO_ChannelEnableBASS(BASSFALSE, ASIOChanOut, MixerMain, BASSTRUE)
and it looks no more stuttering
I also added the disable old channels and hb_sleep line before freeing the device on exit software, and it does not repeat the last data if audio was playing.
Now, I have to manage ASIO inputs, I would send the input to a splitter (and splitted streams to each Main and Aux mixers). I'm digging in the examples but I did not foudn what I search yet lol