Ian, could it be possible to allow multiple decoding tracks to be loaded at the same time, but if its not decoding then to prevent it??
What i mean is, only one playing track, but be able to have extra tracks loaded as Decoding channels??
Creating a CD stream/channel is very fast, so there's no real need to have multiple tracks "loaded" - you can quickly switch tracks when you want to play/decode another.
Another small questions, using the BASS_CD_GetId, how do i retrieve the ID used in cdplayer.ini??
You can calculate the "cdplayer.ini" ID from either the CDDB or CDDB2 ID. Here's how you could do it in C...
void GetCDPlayerID(DWORD drive, char *idbuf)
{
DWORD id=0;
char *cddb2=BASS_CD_GetID(drive,BASS_CDID_CDDB2);
int t,tracks=BASS_CD_GetTracks(drive);
for (t=0;t<tracks;t++) {
DWORD s=atoi(cddb2);
id+=((s/75)/60)<<16;
id+=((s/75)%60)<<8;
id+=s%75;
cddb2=strchr(cddb2,' ')+1; // move onto next value
}
sprintf(idbuf,"%X",id); // convert id to hex string
}
I guess a new "CDID" option to do this could be added in the next BASSCD release
