Carte SC et son WAV

Bonjour, Je voudrais lire en boucle un fichier WAV. Exemple le bruit d'un ruisseau alors qu'une noria tourne. Je n'ai pas trouvé le code qui permet d'effectuer cette boucle.

le code ** tmrpcm.isPlaying()** renvoit le code 0 à la fin du fichier mais comment relancer la lecture de ce dernier ?

Quelqu'un pourrait-il éclairer ma lanterne ?

Merci d'avance.

vous avez regardé la documentation ?

TMRpcm audio; audio.play("filename"); plays a file audio.play("filename",30); plays a file starting at 30 seconds into the track audio.speakerPin = 11; set to 5,6,11 or 46 for Mega, 9 for Uno, Nano, etc. audio.disable(); disables the timer on output pin and stops the music audio.stopPlayback(); stops the music, but leaves the timer running audio.isPlaying(); returns 1 if music playing, 0 if not audio.pause(); pauses/unpauses playback audio.quality(1); Set 1 for 2x oversampling audio.volume(0); 1(up) or 0(down) to control volume audio.setVolume(0); 0 to 7. Set volume level audio.loop(1); 0 or 1. Can be changed during playback for full control of looping.

sinon au prix du DFPlayer-Mini (1€ en Asie) c'est la solution la plus simple si votre arduino doit faire autre chose que jouer le son

Oui, j'ai regardé la documentation et c'est avec cette dernière que j'ai mis en œuvre le code ci-dessous :

** if (! tmrpcm.isPlaying())** ** {** ** tmrpcm.loop(1);** ** }**

et au début pour lancer la lecture :

*tmrpcm.play("0996.wav"); *

A moins qu'il y ait une info que je n'ai pas vu. Pour ce qui est du développement, je ne suis pas un débutant..... hélas :o

RE "sinon au prix du DFPlayer-Mini (1€ en Asie) c'est la solution la plus simple si votre arduino doit faire autre chose que jouer le son" Merci pour cette info, je viens de commander ce module, en espérant être livré, peur-être, un jour compte tenu des évènements actuels.....

DFPlayer-Mini : DAC 24bits. Par rapport à 8 bits, c'est le jour et la nuit. Ne pas hésiter à investir dans un ampli si les 2W du DFPlayer ne suffisent pas.

https://github.com/DFRobot/DFRobotDFPlayerMini.git

Rol38: Oui, j'ai regardé la documentation et c'est avec cette dernière que j'ai mis en œuvre le code ci-dessous :

if (! tmrpcm.isPlaying()) { ** tmrpcm.loop(1);** }

et au début pour lancer la lecture :

*tmrpcm.play("0996.wav"); *

A moins qu'il y ait une info que je n'ai pas vu. Pour ce qui est du développement, je ne suis pas un débutant..... hélas :o

je n'ai jamais essayé mais ce n'est pas comme cela que je comprends la doc.

là vous attendez que le son soit fini de jouer pour passer en mode boucle, mais il n'a plus rien sur quoi boucler

Essayez de faire tmrpcm.loop(1); avant de lancer le son (dans le setup() ) si vous n'êtes pas en multi-mode.

préférez aussi des fichiers audio sans meta-data, si je me souviens bien de trucs que j'avais lu je ne sais plus trop où, ça évite un petite attente au moment de lancer une lecture (donc pas de blanc trop long pour recommencer la lecture dans votre boucle).

Merci J-M-L

Essayez de faire tmrpcm.loop(1); avant de lancer le son (dans le setup() ) si vous n'êtes pas en multi-mode.

Parfait ça fonctionne parfaiteent OUF !

Je n'y aurais pas pensé. Après réflexion (c'est facile après) c'est tout à fait logique Encore merci je vais pouvoir avancer dans ce projet....

Ce fil est terminé.......

cool :slight_smile:

(vous pouvez éditer le premier message et modifier le titre pour rajouter [résolu] devant)

OK

Rol38: OK

c'est sur le premier post qu'il faut faire l'édition :)