BASSCD only one track playing

Started by Irrational86,

Irrational86

QuoteWhile it's technically possible to read different parts of the CD "at the same time", it is not practically possible. The problem is the seek-time involved in all the jumping back and forth... I tried playing 2 tracks from the same CD at the same time, and even with a fast drive (48x), both streams were constantly stalling.
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??



Another small questions, using the BASS_CD_GetId, how do i retrieve the ID used in cdplayer.ini??

Ian @ un4seen

#1
QuoteIan, 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.

QuoteAnother 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 :)

Irrational86

#2
QuoteCreating 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.
Its not to play another, but instead to get track info

QuoteI guess a new "CDID" option to do this could be added in the next BASSCD release :)
yup, it would be great if you added one ;D

Ian @ un4seen

QuoteIts not to play another, but instead to get track info
You don't need to create a stream to get track info - all the CD info functions take drive and track number parameters.

Quoteyup, it would be great if you added one ;D
I'll send you an update to try.

Irrational86

#4
QuoteI'll send you an update to try.
Thank you...and yup, works 100%...thansk a lot, Ian