Enregistrement audio

NiicoDu42 Messages postés 157 Date d'inscription   Statut Membre Dernière intervention   -  
 Utilisateur anonyme -
Bonjour,

Je voudrais réaliser un petit programme, qui permettrait d'enregistrer la sortie audio de la carte son en .WAV, puis de la lire.
J'arrive pour l'instant à enregistrer le fichier. J'arrive également à le lire.
MAIS pas durant la même exécution du projet. C'est-à-dire que lorsque j'enregistre le fichier .wav et que je veux le lire (l'enregistrement est bien terminé) durant l’exécution du programme celui ci m'indique que le fichier est déjà en cours d'utilisation.
Voici le code :

        private WasapiCapture capture = null;
        private WaveWriter w = null;

Démarrage de l'enregistrement :
capture = new WasapiLoopbackCapture();
capture.Initialize();
w = new WaveWriter("rec//rec1.wav", capture.WaveFormat);
capture.DataAvailable += (s, capData) =>
{
          w.Write(capData.Data, capData.Offset, capData.ByteCount);
};
capture.Start();


Arret :

if (w != null && capture != null)
{
                            //stop recording
                            capture.Stop();
                            capture.Dispose();
                            capture = null;
                            w.Dispose();
                            w = null;
                            //Close();
                            button28.BackColor = System.Drawing.Color.Orange;//Changement de couleur
}

A voir également:

1 réponse

Utilisateur anonyme
 
w.Close()
avant le dispose?
0
NiicoDu42 Messages postés 157 Date d'inscription   Statut Membre Dernière intervention   10
 
Il ne me le prend pas, erreur ...
0
Utilisateur anonyme
 
Quelle erreur?
0
NiicoDu42 Messages postés 157 Date d'inscription   Statut Membre Dernière intervention   10
 
Celle-ci :

'WaveWriter' ne contient pas de définition pour 'Close' et aucune méthode d'extension 'Close' acceptant un premier argument de type 'WaveWriter' n'a été trouvée (une directive using ou une référence d'assembly est-elle manquante ?)
0
Utilisateur anonyme
 
ok, il sort d’où ce WaveWriter?
EDIT c'est celui là?
https://www.streamcoders.com/products/msdoc/html/T_StreamCoders_Container_WaveWriter.htm
0
Niicodu42
 
Il sort de là, c'est le type de w :

private WasapiCapture capture = null;
private WaveWriter w = null;
0