Actually, I found a way to play the next song. When position = length of song, I have an iteration that goes through all my songs in the playlist and it will automatically play the next indexed song. index += 1. It is working very well.
Sure you can do like that, but if your timer somehow miss the time your next song may not start. BASS_ChannelSetSync triggers an event when the song ends. In the the event you do your stuff with index+=1.
You can also use BASS_ChannelSetSync to get when the song is 5 seconds from end (or any other position) so you can start next song and mix it into the current song, just an idea...
Have a look in BASS manual for BASS_ChannelSetSync. Good luck!