Enregistrer le Microphone [Résolu]

Signaler
Messages postés
132
Date d'inscription
mercredi 18 février 2004
Statut
Membre
Dernière intervention
1 septembre 2014
-
Messages postés
14757
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
14 janvier 2021
-
Je suis a la recherche d'un code qui permettrais d'enregistrer le microphone en format wav.

<hr />
Aller voir ces sites  ou http://www.papebleu.net.

7 réponses

Messages postés
132
Date d'inscription
mercredi 18 février 2004
Statut
Membre
Dernière intervention
1 septembre 2014

Teste ca!

Public

Class Form1

Private
Declare
Function mciSendString
Lib
"winmm.dll"
Alias
"mciSendStringA" (
ByVal lpstrCommand
As
String,
ByVal lpstrReturnString
As
String,
ByVal uReturnLength
As
Integer,
ByVal hwndCallback
As
Integer)
As
Integer

Private
Sub Button1_Click(
ByVal sender
As System.Object,
ByVal e
As System.EventArgs)
Handles Button1.Click

' record from microphonemciSendString(

"open new Type waveaudio Alias recsound", vbNullString, 0, 0)mciSendString(

"record recsound", vbNullString, 0, 0)

End
Sub

Private
Sub Button2_Click(
ByVal sender
As System.Object,
ByVal e
As System.EventArgs)
Handles Button2.Click

' stop and save mciSendString(

"save recsound c:\record.wav", vbNullString, 0, 0)mciSendString(

"close recsound", vbNullString, 0, 0)

End
Sub

Private
Sub Button3_Click(
ByVal sender
As System.Object,
ByVal e
As System.EventArgs)
Handles Button3.Click

' play audio

My.Computer.Audio.Play(
"c:\record.wav", AudioPlayMode.WaitToComplete)

End
SubEnd

Class<hr />
Aller voir ces sites  ou http://www.papebleu.net.
Messages postés
966
Date d'inscription
samedi 3 avril 2004
Statut
Membre
Dernière intervention
4 mars 2010
4
Regarde les APIs du type waveInOpen etc...
Messages postés
132
Date d'inscription
mercredi 18 février 2004
Statut
Membre
Dernière intervention
1 septembre 2014

Merci ca marche.

<hr />
Aller voir ces sites  ou http://www.papebleu.net.
Messages postés
39
Date d'inscription
jeudi 3 février 2005
Statut
Membre
Dernière intervention
23 août 2017

Bonjour,
ça marche avec :
 save recsound c:\record.wav
Mais pas avec:
 save recsound  C:\Documents and Settings\Michel Come\Mes documents\Ma musique\rec.wav

SendString  ne marche pas quand le chemin d' accès du fichier contient des blancs (spaces). Comment faire ?
Messages postés
39
Date d'inscription
jeudi 3 février 2005
Statut
Membre
Dernière intervention
23 août 2017

Cherchez plus, j'ai trouvé:

Pour la chaine de caractères représentant le chemin et le nom du fichier:
il faut mettre la chaine entre double-cotes : "

ça donne le code suivant:





Public
Sub


Enregistrer()
' ROUTINE POUR DEBUTER L' ENREGISTREMENT DU WAVE




' Fermeture (au cas où)


mciSendString("close all", vbNullString, 0, 0)

 

' Ouverture du périphérique MCI


mciSendString("open new type waveaudio alias Son ", vbNullString, 0, 0)



' Préparation de la capture


mciSendString("seek Son to start", vbNullString, 0, 0)



' Qualité du son: cadencement


mciSendString("set Son samplespersec 44100", vbNullString, 0, 0)



' Nombre de bit


mciSendString("set Son bitspersample 16", vbNullString, 0, 0)



' Nombre de canaux (stéréo)


mciSendString("set Son channels 2", vbNullString, 0, 0)



' Capture


mciSendString("record Son", vbNullString, 0, 0)




End




Sub






Public
Sub Sauver(ByVal Fichier AsString

)
' ROUTINE POUR ARRETER L' ENREGISTREMENT
' Encadrer le nom de fichier par des cotes


Fichier = """" & Fichier & """"




' Arrèter l'enregistrement, sauvegarder dans le fichier, et fermer le MCI


mciSendString("stop Son", vbNullString, 0, 0)

mciSendString("save Son " & Fichier, vbNullString, 0, 0)

mciSendString("close son", vbNullString, 0, 0)




End
Sub
Messages postés
39
Date d'inscription
jeudi 3 février 2005
Statut
Membre
Dernière intervention
23 août 2017

OUI MAIS ...
Le code ci dessous marche. C'est à dire qu' il enregistre bien un son cadencé à 44100 Hz en stéréo 16 bits... Mais la qualité du son est très dégradée.

Je ne comprend pas pourquoi.
Que faire ?

Quelqu'un a-t-il des infos là dessus ? : Pourquoi MCI enregistre aussi mal ?
Messages postés
14757
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
14 janvier 2021
151
Bonjour

Perso j'ai utiliser cette source :
http://www.codeproject.com/csharp/Streaming_wave_audio.asp

Mais il y a ce sujet aussi :
http://www.vbfrance.com/infomsg_CAPTURE-MICRO-WAV_1141139.aspx#6

Le fer à souder a besoin d'une panne pour fonctionner.
VB (6, .NET1&2), C++, C#.Net1