c# Wie kann ich Spiele mehrere .wav-Dateien, und stellen Sie die Lautstärke der einzelnen
Ich bin derzeit rund um das Spiel in c#, und ich würde gerne einige Musik-Wiedergabe im hintergrund und andere kleine Geräusche auftreten, wenn ein Nutzer auf eine Schaltfläche, oder wenn andere kleine Aktionen stattfinden. (genauer gesagt, ich mache ein kleines Spiel, mit mogre3d, und ich bin nur zu dem Punkt, die ich brauche, um fügen Sie ein wenig sound).
1) gibt es eine Möglichkeit bereits integriert, um c# zu spielen Sie mehrere wav-Dateien zur gleichen Zeit? Ich habe versucht mit System.Media.SoundPlayer, aber das können nur die Wiedergabe einer wav-Datei zu einem Zeitpunkt (und ich kann nicht die Lautstärke, in der es gespielt wird).
2) Was ist der beste/einfachste Weg, um zu spielen mehrere sounds gleichzeitig und in der Lage sein, um jede der Klänge, Lautstärke?
Ich bin schrecklich neu in C#, und ich bin sicher, Ihr müssen eine einfache Lösung, das ich einfach nicht sehen. Es muss nicht sein, wav -, kann es leicht sein, mp3/et al. aber je einfacher die Lösung, desto besser.
Danke herzlich für Ihre Zeit!
- WinForms oder WPF?
- Konsole, denke ich. Also von den beiden, die Sie aufgelistet, an mich denkt WinForms (?) Dank
Du musst angemeldet sein, um einen Kommentar abzugeben.
Schnell
Ändern Sie die Gesamtlautstärke mit dieser Methode: http://social.msdn.microsoft.com/Forums/en-US/csharpgeneral/thread/42b46e40-4d4a-48f8-8681-9b0167cfe781 und Sie können spielen .wav-Dateien gleichzeitig mit separaten SoundPlayer-Instanzen.
Besser und seperate Volumes
Ich würde Bass.Net. Gute Dokumentation und einfach.
Können Sie spielen mehrere .wav-Dateien gleichzeitig mit der
System.Media.SoundPlayer
- Klasse: für diese, erstellen Sie einfach eine Instanz der soundPlayer für jeden .wav-Datei die Sie spielen möchten. Aber Sie können nicht die Lautstärke unabhängig voneinander auf diese Weise.Wenn Sie möchten mehr Funktionen, die mit audio-Dateien, empfehle ich Ihnen, überprüfen Sie die NAudio Bibliothek.
SoundPlayer
Objekte funktioniert nicht. Prüfen Sie es selbst