Hallo,
nochmals Danke!
Ich habe jetzt den gesamten Code umgebaut, da es Blödsinn ist, den Soundbuffer jedesmal neu einzulesen, denn nur so kann dieses Speicherleck entstehen, und außerdem verbraucht das Programm nur unnötig Rechnerleistung.
Jetzt habe ich es so gelöst:
Beim initialisieren werden meine 14 Wavesounds in Buffer eingelesen. Mit DuplicateSoundBuffer erstelle ich pro Sound weitere 4 Buffer, sodass einen einzelnen Sound gleichzeitig bis zu 5mal abspielen kann. (Insgesamt also 70 Buffer; Speicherverbrauch im Ram: konstant 2,5 MB nur für die Sounds ohne Restprogramm)
Damit ist das Speicherproblem gelöst!
ABER:
Ab ca. dem 35. Soundbuffer (zusammengerechnet die "originalen" von Wavedateien erstellen und die mit DuplicateSoundBuffer erstellen) wird der Sound nur noch in den beiden Front-Boxen meines 5.1 Systems wiedergegeben.
Wenn ich nur z.b. statt 5 nur 3 kopien der 14 buffer erstelle, tritt das problem auch beim ca. 35. Soundbuffer, aber bei einem anderen Wavesound als vorher auf. Es scheint, als ob DirectSound ab einer gewissen Größe im Ram den Sound auf die Frontboxen "kürzt"/beschränkt...