OVH Cloud OVH Cloud

[VC++] Pb enregistrement wav et affichage simultané (par fonctions proprio)

1 réponse
Avatar
Anonyme
Bonjour,

Je reprends un projet qui affiche un fichier wav pour traitements
ultérieurs. J'essaie d'enregistrer un son au micro, de sauver le buffer
dans un fichier wav pendant l'enregistrement pour l'afficher dans une
fonction spéciale.

Je n'ai eu aucun problème pour l'ajout d'une fonction de record au micro
via les mci :
mciSendString("open new type waveaudio alias mysound wait",NULL,0,NULL);
mciSendString("set mysound format tag pcm bitspersample 16
samplespersec 22050 wait",NULL,0,NULL);
mciSendString("record mysound from 0 overwrite",NULL,0,NULL);
m_bRecording=TRUE;

avec dans une fonction OnLButtonDown() :
mciSendString("stop mysound",NULL,0,NULL);
mciSendString("save mysound test.wav",NULL,0,NULL);
mciSendString("close mysound",NULL,0,NULL);
m_bRecording=FALSE;

Mais impossible de faire des sauvegardes partielles et d'afficher le
fichier au fur-et-à-mesure pendant l'enregistrement. J'ai essayé avec
des tempos, avec des thread, avec des sémaphores mais soit il n'affiche
rien et bloque, soit l'enregistrement est coupé lors de la première
sauvegarde partielle.

Toutes les fonctions du projet sont basées sur un pointeur fichier. Donc
je ne peux pas tout modifier à ce niveau.

Je peux aussi rediriger le pointeur fichier vers le pointeur buffer du
son en cours d'enregistrement puis reloader le fichier final une fois
l'enregistrement terminé mais je ne vois pas comment faire.

Merci de votre aide

1 réponse

Avatar
Fabien LE LEZ
On Tue, 27 Jan 2004 16:12:15 +0100, Anonyme
wrote:

mciSendString("open new type waveaudio alias mysound
wait",NULL,0,NULL);



C'est du ressort de fr.comp.os.ms-windows.programmation, mais AMHA ce
que tu veux faire n'est pas possible par cette méthode.