Here's a BASS_AAC update.
Many thanx, just playing around with the update.
That can be used with BASS_ChannelGetLength to get the number of tracks in the file
That works well for me. As a result i get 5 (= my 5 Stereo Channels, 1 Stereo Sum + 4 Stereo Stem tracks :-) Great!
with BASS_ChannelSetPosition to change the current track
That works for me as well.
BASS_ChannelSetPosition(hStream, 0, BASS_POS_TRACK) plays the 1 Stereo Sum,
BASS_ChannelSetPosition(hStream, 1, BASS_POS_TRACK) plays the 1st Stereo Stem track,
BASS_ChannelSetPosition(hStream, 2, BASS_POS_TRACK) plays the 2nd Stereo Stem track,
BASS_ChannelSetPosition(hStream, 3, BASS_POS_TRACK) plays the 3rd Stereo Stem track,
BASS_ChannelSetPosition(hStream, 4, BASS_POS_TRACK) plays the 4th Stereo Stem track
Note this still only allows one track to be decoded/played at a time, so
if you want to play multiple tracks from a file simultaneously
then you will need to create multiple streams (one for each track).
Okay, does this mean i have to call
hStem1 = BASS_StreamCreateFile(FALSE, waveFile, 0, 0, BASS_SAMPLE_LOOP | BASS_STREAM_DECODE | BASS_SAMPLE_FLOAT);
BASS_ChannelSetPosition(hStem1, 1, BASS_POS_TRACK);
hStem2 = BASS_StreamCreateFile(FALSE, waveFile, 0, 0, BASS_SAMPLE_LOOP | BASS_STREAM_DECODE | BASS_SAMPLE_FLOAT);
BASS_ChannelSetPosition(hStem2, 2, BASS_POS_TRACK);
... and so on?
And how do i play all the Stem-Tracks in sync? And does this mean that file/disk traffic will be 4 times of normal playback when using 4 stem tracks?
Regards
Martin