No not so
BASS_Mixer_ChannelGetLevel will have in Net 3 overloads
BASS_Mixer_ChannelGetLevel(Int32)
BASS_Mixer_ChannelGetLevel(Int32, Single, BASSLevel)// will need only one single Variable // will use a length = 0,02f
BASS_Mixer_ChannelGetLevel(Int32,Single[], Single, BASSLevel) // array of Single // with your own length
The last 2 overloads are a Pseudonyms for Bass_ChannelGetLevelEx
so i think i see the error in your source because the error comes not from the Length Param it come from the wrong Level Flags.
BASSLevel is a Enumeration of the Levelflags and you have declare a array of 2 Floats so
BassMix.BASS_Mixer_ChannelGetLevel(MainModule.streamfx(WhichDeck - 1), peak, 0.1, MyFlag Or BASSLevel.BASS_LEVEL_STEREO)
that cannot work because your are mixing BASS_LEVEL_STEREO with BASS_LEVEL_ALL.
so
try it with
BassMix.BASS_Mixer_ChannelGetLevel(MainModule.streamfx(WhichDeck - 1), peak, 0.1F, BASSLevel.BASS_LEVEL_STEREO)
by the way do you set the mixer Channel without BASS_ATTRIB_BUFFER ?
remember
the source channel must have buffering enabled via the BASS_MIXER_CHAN_BUFFER flag.