naudio Ton vom Mikrofon aufnehmen und speichern

8

Ich habe Probleme mit naudio und dem Speichern von Tonaufnahmen. Der Code, den ich derzeit habe, funktioniert bis zu dem Punkt, wo es die WAV-Datei speichert, aber wenn ich es öffne, gibt Windows Media Player einen Fehler zurück: "Windows Media Player hat beim Abspielen der Datei ein Problem festgestellt"

Ich habe zwei Tasten, eine "Record" -Taste, die nach dem Drücken zur Stopptaste wird. Und ich habe eine "Speichern" -Schaltfläche, die beim Klicken die Aufzeichnung in sample.wav speichert.

%Vor%     
Spencer 31.07.2013, 23:01
quelle

1 Antwort

19

Ihr recordButton_Click Code wird nicht aufgezeichnet, es werden Daten von einem WaveIn zu einem WaveOut geleitet, wodurch die Daten von Ihrer Quelle (Mikrofon) direkt zum Ausgang (Lautsprecher) wiedergegeben werden. Es speichert diese Daten nicht für spätere Verwendung, sondern leitet sie einfach von einem zum anderen. Wenn Sie diese Daten anschließend auf der Festplatte speichern möchten, müssen Sie sie selbst puffern.

Die saveResponse_Click andererseits ist start die direkte Aufnahme von Daten vom Mikrofon in eine Wave-Datei auf der Festplatte. Wenn du auf deine Save Response -Schaltfläche klickst, warte ein wenig, dann klicke auf deine Stop -Schaltfläche, du solltest eine aufgezeichnete Wave-Datei erhalten.

Wenn Sie direkt auf die Festplatte aufnehmen möchten, ist dies in Ordnung. Wenn Sie in den Speicher aufnehmen und dann optional auf die Festplatte schreiben möchten, müssen Sie die Daten so speichern, wie sie kommen. Verwenden Sie möglicherweise einen Speicherstream, um die Daten während der Aufzeichnung zu speichern, und schreiben Sie dann in die WaveFileWriter , wenn es an der Zeit ist um die Datei zu speichern.

Hier ist der Code, den ich zum Testen der direkten Aufnahme in eine Wave-Datei auf der Festplatte verwendet habe:

%Vor%     
Corey 01.08.2013, 01:39
quelle

Tags und Links