typedef struct {
FILE *fp;
bb_result_t result;
+ int number;
int vol;
int repeats;
} EFFECT;
float *bleepbuffer;
int bleepchannels;
int bleeprate;
+int bleepcount;
+int bleepnum;
int musiccount;
-int bleepcount;
myeffect.result = resource;
myeffect.vol = volume;
myeffect.repeats = repeats;
+ myeffect.number = number;
pthread_attr_init(&attr);
pthread_attr_setdetachstate(&attr, PTHREAD_CREATE_DETACHED);
void os_stop_sample (int number)
{
- if (bleep_playing) {
+ if (bleep_playing && number == bleepnum) {
bleep_stop = TRUE;
}
return;
sem_post(&playaiff_okay);
sf_info.format = 0;
+ bleepnum = myeffect.number;
filestart = ftell(myeffect.fp);
lseek(fileno(myeffect.fp), myeffect.result.data.startpos, SEEK_SET);