Ich habe mir das Ganze noch mal durch den Kopf gehen lassen, das einfachste um ein Crossfade zu realisieren ist wohl ein simples "Channelblending".
dazu im Demo verwendet:
BASS_ChannelSetAttributes(DWORD handle, int freq, int volume, int pan);
BASS_ChannelSlideAttributes eignet sich nur zum Ausblenden.
Im Anhang ist dazu eine einfache Demo (Source) es benötigt die Bass.pas und Bass.Dll.
Man kann dies auch umgehen und von der TBassDLLPlayer Komponente die Dateien Bass_Dynamic.pas und DLLLoader.pas in das Verzeichnis kopieren, und in der uMain.pas die
Unit Bass(.pas) in der Uses-Klausel durch die Bass_Dynamic(.pas) zu ersetzen damit die Bass.Dll in das Programm mit eingebunden wird.
Die MP3-Dateinamen müssen im Code angepasst werden (kein OpenDialog...) und sie sollten ungefähr gleichlang sein, weiterhin ist das Crossfade nur manuell.
Will man nun Song1 automatisch zu Song2 blenden gibt es eine einfache Lösung im Forum von
www.un4seen.com/ >>>--->
Threaded Fade unit
Leider konnte ich wegen Zeitmangel momentan kein besseres Demo schreiben, Sorry.