German Soundausgabe

sx64

Member
Licensed User
Longtime User
Hallo,
ich habe ein kleines Problem mit der Soundausgabe.
Wenn ich mit dem Sound-Befehl ein Wave abspiele
und gleich darauf ein anderes, wird das Erste völlig übergangen.
Was ist der Trick um Basic4ppc zu sagen, dass ich das Erste erst mal anhören möchte?
Aus der Not heraus, habe ich bisher das Programm einfach mit Sleep "schlafen gelegt".
Das funktioniert aber nur, wenn man vorher weiß, wie lange.
Das kann es ja sicher nicht sein, oder?

mfG
SX64
 

specci48

Well-Known Member
Licensed User
Longtime User
Hallo sx64,

der Sound-Befehl wird immer als paralleler Thread ausgeführt, d.h. die Soundausgabe wird nur angestoßen, damit dass Programm währenddessen nicht "einfriert". Da aber immer nur ein Sound abgespielt werden kann überlagert/ersetzt der zweite den ersten.

Da Du Dir bisher mit der Sleep-Funktion geholfen hast, nehme ich einmal an, dass während des Abspielens des ersten Sounds in Deinem konkreten Fall kein weiterer/paralleler Programmablauf notwendig ist. In diesem Fall sein Dir die WavFileGen.dll von Agraham ans Herz gelegt.
Mit der Methode "PlaySync" wird eine .wav-Datei abgespielt, dass Programm aber bis zum Ende des Sounds nicht weiter fortgeführt. Damit entfällt die Notwendigkeit, die genaue Länge der Datei zu kennen.

Willst Du jedoch mehrere Sounds hintereinander abspielen, und den Programmablauf trotzdem fortführen, so geht das mit der FMOD.dll. Allerdings habe ich das selbst noch nicht ausprobiert, daher kann ich leider kein passendes Beispiel liefern. :sign0013:


Gruß
specci48
 

sx64

Member
Licensed User
Longtime User
Danke specci48,
für die superschnelle Hilfe!
Ich werde das dann mal ausprobieren.
Ich hatte vor Basic4ppc ein wenig mit MORT-SCRIPT "gespielt".

mort.sto-helit.de - Main page

Da ist das übrigens kein Problem, deswegen war ich ein wenig überrascht.
Aber M-S ist natürlich nicht mit B4ppc vergleichbar, obwohl man letzten Endes sicher noch versuchen könnte die Soundausgabe an M-S zu übergeben.
Wäre dann völlig unabhängig vom weiteren Programmablauf.

mfG
sx64
 
Top