Retrieves a MIDI channel's stream handle, which can be used to set DSP/FX on it. Can also replace the default reverb and chorus processing.
HSTREAM BASS_MIDI_StreamGetChannel( HSTREAM handle, DWORD chan );
handle | The MIDI stream. | ||||||
chan | The MIDI channel... 0 = channel 1. Or one of the following special channels.
|
BASS_ERROR_HANDLE | handle is not valid. |
BASS_ERROR_ILLPARAM | chan is not valid. |
A MIDI channel stream receives the channel's dry mix, and its output is then sent through the normal reverb/chorus/userfx processing, but drum key reverb/chorus/userfx settings get ignored as it is impossible to apply different reverb/chorus/userfx levels to individual keys in this case (they have already been mixed).
MIDI channel streams can only be used to set DSP/FX on the channels. They cannot be used with BASS_ChannelGetData or BASS_ChannelGetLevel to visualise the channels, for example, but that could be achieved with a DSP function instead. A MIDI channel stream's sample format is always floating-point, regardless of the MIDI stream's sample format.
HSTREAM chan1 = BASS_MIDI_StreamGetChannel(midi, 0); // get a stream for MIDI channel 1 HFX fx = BASS_ChannelSetFX(chan1, BASS_FX_DX8_DISTORTION, 0); // set the DX8 distortion effect on it