Sujet de la discussionPosté le 19/03/2009 à 19:17:08Patch qui analyse la voix en temps réel. MERCI
Bonjour à tous
J'aurais besoin de votre aide sur la création d'un patch pour Pure Data!
En effet, je cherche à faire en sorte qu'une voix chanté dans un micro déclenche selon une hauteur prédéfinit un signal (bang).
Donc je pense que pour cela il faut que j'arrive par un patch à analyser spectralement la voix. Puis de cette analyse PD doit réussir à détecter la fondamentale. Et finalement, une fois la fondamentale atteinte cela engendre un bang.
J'espère avoir été clair. J'attends maintenant vos réponses et si par hasard vous connaissez un patch de ce genre...je suis preneur!
Merci d'avance
Gobbi
177
Posteur·euse AFfiné·e
Membre depuis 19 ans
2Posté le 19/03/2009 à 19:57:44
Salut,
Sur le papier ça a l'air pas mal du tout, faut voir en pratique si ça marche bien mais ça vaut un test.
J'imagine deux manières de faire ça :
- un peu comme pour un compresseur en dé-esseur, tu peux utiliser une série de filtrages passe-bande en parallèle, calés sur les fondamentales que tu veux détecter. Un petit threshold~ derrière chaque tranche et tu pourra déclencher ce que tu veux en fonction de la note.
je viens de voir l'objet filterbank~ qui pourrait te permettre de gérer ça mais je l'ai jamais utilisé. Sinon les filtres de iemlib iront bien
- Sinon via une décomposition de fourrier tu devrait pouvoir tracer en temps-réel la composition fréquencielle de ton son, et trouver quelle est la fréquence dominante par une petite recherche des pics dans ta décomposition. Mais ça me semble déjà du plus haut niveau que l'autre solution qui devrait largement faire l'affaire.
Pour celle-là tu peux toujours regarder dans les exemples, 3.audio.examples/i10.Fourier.Analysis
Et il faudra encore repasser tout ça en amplitude/phase, il existe un objet qui fait ça direct mais je me rappelle plus lequel
Mais bon ça dépend aussi des conditions dans lesquelles tu veux faire tout ça.
Ou encore plus simple tu tape fiddle~ dans pure data et/ou google et tu cliques sur help
fiddle~ fais exactement ce que tu recherche
il est capable de te renvoyer un bang lors d'un changement de note et d'envoyer la frequence de cette note ( voire plus )