Enregistrement audio en direct à partir de l'entrée micro et enregistrer simultanément
J'essaie de développer un enregistreur de Voix en C#. J'ai essayé de nombreuses façons, comme NAudio, DirectX, Microsoft.Xna.Cadre.Audio, etc.
Tout donne le même résultat. Après nous arrêter l'enregistrement, le fichier de sortie mp3/wav enregistrés.
Le fichier mp3/wav créés au début elle-même (et sans contenu - 0 octets)
Je suis en train de créer une application qui peut enregistrer de l'audio en direct/simultanément.
private void StartRecording() {
this.WaveSource = new WaveInEvent { WaveFormat = new WaveFormat(44100, 1) };
this.WaveSource.DataAvailable += this.WaveSourceDataAvailable;
this.WaveSource.RecordingStopped += this.WaveSourceRecordingStopped;
this.WaveFile = new WaveFileWriter(@"C:\Sample.wav", this.WaveSource.WaveFormat);
this.WaveSource.StartRecording();
}
private void StopRecording() {
this.WaveSource.StopRecording();
}
void WaveSourceDataAvailable(object sender, WaveInEventArgs e) {
if (this.WaveFile != null) {
this.WaveFile.Write(e.Buffer, 0, e.BytesRecorded);
this.WaveFile.Flush();
}
}
void WaveSourceRecordingStopped(object sender, StoppedEventArgs e) {
if (this.WaveSource != null) {
this.WaveSource.Dispose();
this.WaveSource = null;
}
if (this.WaveFile != null) {
this.WaveFile.Dispose();
this.WaveFile = null;
}
}
OriginalL'auteur Sarin Vadakkey Thayyil | 2015-05-07
Vous devez vous connecter pour publier un commentaire.
J'ai résolu le problème avec NAudio bibliothèque elle-même.
Peu de modification du code existant.
OriginalL'auteur Sarin Vadakkey Thayyil
Vous pouvez faire cela avec DirectShow.
Jetez un oeil à La documentation de Microsoft et la projet de code des échantillons d'apprendre la meilleure façon de le configurer en fonction de vos besoins.
OriginalL'auteur Thiago Sá
- Tu essayer de BASS NET?
Il y a un code complet pour vous la tâche Comment enregistrer le son et de l'encoder en mp3? (C#!)
OriginalL'auteur Leon Pro