Greetings!
I'd like to use BASS to develop a small sound engine for a personal project, where I need to know when a sound has finished playing (in order to play the next one, as they come in sequence), but it should also be possible to interrupt the currently playing sound on request (which may come at any time).
The former seems like a perfect use case for BASS_ChannelSetSync with type BASS_SYNC_END, while the latter can be achieved with BASS_ChannelStop (NB: not ChannelFree as it may be necessary to play the same sound again at some later point in time).
Now, suppose playback reaches the end so that the SYNCPROC set by BASS_ChannelSetSync starts executing, but just a bit later BASS_ChannelStop is called. In this particular scenario, is there any guarantee that the SYNCPROC will complete before the call to BASS_ChannelStop completes, or is there no such guarantee? If not, then is it possible in this case to somehow await completion of the SYNCPROC, provided that it was actually called in the first place?
Note that the SYNCPROC is not mixtime (as it is used to signal when playback has really finished and nothing is playing anymore).
Thank you very much.