sound dateien überlagern, gleichzeitig abspielen
-
hallo,
ich habs so versucht:char* names[3] = {"bumm1.wav", "bumm2.wav", "bumm3.wav"}; char buf[3][80000]; int i; FILE* fp; for ( i = 0; i <3; i++ ) { fp = fopen(names[i], "rb"); fread(buf[i], 1, 80000, fp); fclose(fp); } for ( i=0; i<5; i++) PlaySound ( buf[i], NULL, SND_ASYNC | SND_MEMORY | SND_NODEFAULT | SND_NOSTOP );
funzt net, lässt sich nicht gleichzeitig abspielen.
hab auch die zeilePlaySound ( buf[i], NULL, SND_ASYNC | SND_MEMORY |
in extra thread ausgelagert, das selbe problem.
wie kann ich mehrere sound-dateien auf einmal abspielen und auch hören?!
danke.
-
Wartest du hinterher lange genug, bis der Sound fertig abgespielt ist?
Zur not kannst Du die samples ja aufaddieren und durch n teilen, so als billig-mixer
-
ja, ich warte lange genug.
-
Okay, PlaySound kann das einfach nicht. Ausgabe gibts nur einmal pro Prozess. Zumindest laut dem, was ich so online gefunden habe, durch eine google(tm)-Suche. In der MSDN habe ich das so aber nicht gefunden.