Bonjour,
je suis nouvelle a utiliser PD. Pour mon cours, je reproduis le travail d'une artiste qui a utilisée un lecteur code-barres pour faire de la musique. Ainsi, les chiffres modifient le son (le 1er le volume, le 2e fait la note, le 3e la durée, etc)
Mon professeur prétend que des patchs pour ce type de travail existe déjà et qu'il serait plus simple de les trouver que les produires, moi simple néophyte.
Quelqu'un peut m'aider??
Merci!
Marie-Pier
Hors ligne
Bonjour Marie-Pier et bienvenue sur codelab,
Je ne connais pas de patch pour pure-data mais il me semble qu'il y a 2 étapes dans ton projet : la lecture et l'interprétation des codes barres : souhaites tu utiliser un appareil dédié (une "douchette") ou utiliser un système de webcam ?
Si tu utilises une douchette, elle transmettra les informations décodées sous forme de suite de chiffres, à pd de les récupérer. Sinon, il faut utiliser un logiciel pour décoder l'image.
Avant tout, est ce que tu souhaites utiliser des codes barres existants, du type de ceux qu'on trouve sur les rayons des magasins ou créer tes propres codes ? Il y a plusieurs types de code-barre : à 1 dimension (avec des barres verticales!), ou des codes barres 2 dimensions (type qr-code, datamatrix, etc.).
Sinon, un lien, un peu hors-sujet pour décoder des codes barres (type code128) avec processing : http://www.local-guru.net/blog/2009/09/ … processing
(message déplacé dans la catégorie pure-data)
Hors ligne
Allo,
Je vais recevoir mon appareil à lecture code barre bientôt, comme dans la magasin. Pour le brancher, je devrais y arriver ainsi qu'à la réception des chiffres.
Mon problème se situe au niveau de la réelle programmation. PAr exemple, le 1er chiffre donne la note, le 2e la fréquence et le 3e le volume. Cependant, je ne sais pas comment faire lr programme pour intégrer ces 3 variables dans une seule programmation.
J'ai tenté d'obtenir une patch random de création de musique pour ensuite y substituer les randoms par les chiffres obtenus par le lecteur et fixer les limites... Sans grand succès. Je ne sais donc pas trop où me lancer!
MArie-Pier
Hors ligne
citation :
le 1er chiffre donne la note, le 2e la fréquence et le 3e le volume
Mmm... la note et la fréquence ce sont un peu les mêmes choses non...
Par fréquence, peut-être voulais-tu parler d'octave...
Toutefois, il y a 12 notes par octave...
...et avec un nombre à un chiffre, tu n'as que 10 choix possibles.
Sans répondre exactement à ta question la boite [makenote] présente trois entrées :
- celle des notes (il y en a 128 ).
- celle de la vélocité (le volume).
- celle de la durée de note (en milliseconde)
A mon avis tu peux rapidement arriver à tes fins avec cela...
Utilise [noteout 1] en sortie pour écouter les notes produites (le 1, c'est pour le canal 1 sur lequel il y souvent le piano sous windows)
Dernière modification par Olivier (2009-10-12 14:02:08)
Hors ligne
Bonjour
MPier a écrit:
Je vais recevoir mon appareil à lecture code barre bientôt, comme dans la magasin. Pour le brancher, je devrais y arriver ainsi qu'à la réception des chiffres.
Il faut que tu voies de quelle manière ces chiffres vont être transmis à pure-data, ça dépend de ton appareil et du logiciel qui le fait fonctionner.
MPier a écrit:
J'ai tenté d'obtenir une patch random de création de musique pour ensuite y substituer les randoms par les chiffres obtenus par le lecteur et fixer les limites... Sans grand succès. Je ne sais donc pas trop où me lancer!
Pour pouvoir t'aider sur ton patch, il faudrait que tu l'envoies sur le forum. Tu peux aussi jeter un oeil sur ce patch à 3 randoms :
Hors ligne
Merci à vous, déjà ca me donne une base intéressante pour songer à mon travail.
J'essai de mettre un random sur le métro afin que les notes changent de durée, mais ca ne semble pas fonctionner. Je recherche toujours dans les "help", à moins que vous puissiez me guider.
Dans un second temps, je recherche comment donner une cote à une valeur, je m'explique.
Mon lecteur optique va me donner des chiffres en 0 et 9. Alors, j'essaie de dire "0 = X volume, 9 = Y volume" et ainsi de suite. Comme ca, je donnerais des valeurs réelles aux chiffres reçus.
MPier
P.S. Merci de votre aide en passant, c'est très apprécié!
Hors ligne
Pour que la durée change aléatoirement à chaque note, je ferais comme cela...
La boite [t b b] impose un ordre dans les envois des bang (b)...
La durée ( entre 40 et 200 ms) est d'abord déterminée...
Puis c'est au tour de la note...
Mais je ne pense pas que tu en aies besoin pour ce que tu souhaites faire...
Pour attribuer des actions ou des nombres spécifiques pour chacune de tes valeurs de 0 à 9 je te suggère d'utiliser la boite [select] ou [sel]...
A toi de déterminer le contenu des boites [messages( en fonction de ce que tu souhaites (volume, note, durée...)
Hors ligne
tiens ça me fait penser que la pub commence à utiliser ce genre de techno, du type reconnaissance de forme.
Regardez ceci :
www.5gum.fr
Après ce qu'ils en font c'est facile mais sur le principe technique c'est intéressant
Hors ligne
faut que je fabrique des fichiers PureData qui viendraient modifier le volume, la fréquence et la durée d’un son de manière systématique. J’ai recherché sur internet diverses manières de construire des synthétiseurs qui influenceraient ces valeurs. À l’aide du professeur, j’ai fabriqué une «patch» pour transformer le code ASCII du clavier en « son midi », ce qui va provoquer des sons lors d’une numérisation. J’ai ensuite acheté un « scanneur USB » afin de numériser des codes-barres. Le plus difficile est d’isoler chaque chiffre numérisé en groupe pour lui donner une valeur précise. Dans cette optique, je veux qu’au premier chiffre affiché sur le code EAN13 me rende un volume situé entre 20 à 40Hz. En deuxième position, je veux obtenir une fréquence comprise entre 261,625 et 493, 883 Hz qui inclus de la note Do au Si. Puis, le troisième chiffre indique une durée en temps entre 0.5 et 1 seconde. Ensuite, je procèderai par boucle jusqu’à la treizième données. Alors, ma question est comment je réussis à isoler et à modifier chacune des données?
Je vous envoie mes patchs en même temps. Merci de votre aide!
M.Pier
Dernière modification par MPier (2009-10-18 06:51:39)
Hors ligne
Puis, voilà mon shéma de départ pour l'isolation des valeurs:
0 1 2 3 4 5 6 7 8 9 10 11 12
0=volume [10 et 20 Hz] 3 même chose
1=fréquence [261 à 493] 4 même chose
2= durée/temps [0.5 à 1 seconde] 5même chose etc...
Dernière modification par MPier (2009-10-18 06:58:48)
Hors ligne
J'avais du temps ce dimanche donc voilà ce que j'ai fait pour répondre à ta requête...
Par contre, 13 n'étant pas un multiple de 3 (note, volume, durée), je n'ai utilisé que 12 valeurs.
Soit une mélodie de 4 notes par codes-barres.
Chez moi, ça crachotte un peu entre les notes.
C'est sûrement dû à ma carte son, mais si des pros de [osc~] peuvent jeter un oeil ça ne serait pas de trop...
Les messages tout en haut sont des exemples tests qui correspondent à ce que les codes barres sont censés renvoyer.
Il suffit de cliquer dessus pour écouter la mélodie...
Je pense que c'est une bonne base pour commencer.
Bon courage.
Dernière modification par Olivier (2009-10-18 18:57:40)
Hors ligne
Je me demandais pourquoi l'ojet [note] ne fonctionne pas sur ma version. Dois-je downloader une nouvelle saveur que vanille de Hans Christophe? Si oui, laquelle?
Merci
M.Pier
PS: Merci beaucoup pour tout le travail! Vous êtes vraiment génial monsieur Olivier!
Dernière modification par MPier (2009-10-19 00:19:13)
Hors ligne
L'objet [note] est une abstraction que j'ai faite... elle est jointe dans le post précédent...
Pour l'utiliser, il suffit qu'elle soit dans le même répertoire que codeb-synth.pd
Si cela ne fonctionne pas, je ne vois vraiment pas pourquoi car il n'y a rien de très exotique dans ce patch...
Pour info, je suis sur une 0.42.5-extended
Y a-t-il un message d'erreur dans la console ?
citation :
PS: Merci beaucoup pour tout le travail
Pas de souci...
Dernière modification par Olivier (2009-10-19 03:28:46)
Hors ligne
Bonjour, je tente de comprendre exactement ce que vous avez fait. J'ai mis des 'comment' à côté des éléments de vos 'patch'. J'aimerais que vous y jetiez un coup d'oeil pour vérifier si je me trompe, si je comprend de travers... J'essais comprendre le schéma afin d'être capable de réutiliser ces objets dans une autre oeuvre éventuellement.
Je ne comprend pas vraiment les objet [inlet] et [outlet]...je ne comprend pourquoi ils sont positionnés ainsi...
Merci beaucoup de votre aide!
M.Pier
Dernière modification par MPier (2009-10-19 20:44:51)
Hors ligne
Pages: 1 2