5 Stimmen

SoundPlayer: Wie wähle ich das Ausgabegerät?

Wie kann ich das Ausgabegerät für meine Anwendung auswählen? Ich verwende das SoundPlayer Klasse zum Abspielen von wav-Dateien.

6voto

Neverbirth Punkte 1044

Sie sollten den SoundPlayer für so etwas nicht mehr verwenden (und auch nicht für alles andere, was über das Abspielen allgemeiner Systemklänge hinausgeht). Ich schlage vor, Sie verwenden NAudio erlaubt es, was Sie suchen, und mehr.

1voto

tigrou Punkte 3871

Ich benötigte dieselbe Funktionalität. Hier ist meine Lösung mit NAudio (wie von Neverbirth vorgeschlagen)

Um alle Geräte aufzulisten:

for (int n = -1; n < WaveOut.DeviceCount; n++)
{
    var caps = WaveOut.GetCapabilities(n);
    Console.WriteLine($"{n}: {caps.ProductName}");
}

Wave-Datei abspielen:

WaveFileReader wav = new WaveFileReader("somefile.wav");
var output = new WaveOutEvent { DeviceNumber = 0 };
output.Init(wav);
output.Play();

Vergessen Sie nicht, die Ressourcen zu säubern:

wav.Dispose();
output.Dispose();

Weitere Informationen aquí y aquí

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X