Bonjour,
Mon idée est la suivante:je veux balayer une image avec ou sans couleur d'un triangle par exemple et que en retour j'ai un son qui monte avec la pente d'un coté du triangle puis ce même son qui va changer de tonalité et qui va nous informer qu'il entrain de descendre la pente.
J'ai trouvé une vidéo qui explique en quelque sorte ce que je veux et j'ai retrouvé le code dans l'un de vos forums mais je suis débutante dans processing, et je sais vraiment pas comment le changer.
Merci en tout cas à ceux qui vont me répondre
http://www.youtube.com/watch?v=cgjPGs3d … r_embedded
Hors ligne
Tu peux commencer par lire ceci : http://fr.flossmanuals.net/processing/
ça te donneras toute les bases pour processing
Ensuites je te recommande de parcourir tout les exemples concernant minim dans processing, ils sont livrés avec processing. La doc de minim est la : http://code.compartmental.net/tools/minim/
Hors ligne
Merci pour ton aide mais je recherche plus de la doc qui va m'aider à réaliser directement mon projet.
Hors ligne
Bonjour Lala et bienvenue,
Le principe pour toi va être de balayer l'écran colonne par colonne, de faire la moyenne de la luminosité des pixels de chaque colonne et de modifier la fréquence du son selon cette valeur. En arrivant au bord droit de l'écran, on recommence un balayage depuis le début.
Dans une discussion récente, Juan nous a gracieusement fait cadeau de son code qui a servi à faire la vidéo que tu as vu. Ca devrait beaucoup beaucoup t'aider.
http://codelab.fr/3114
Fais nous part de l'avancée de ton projet, ou si tu bloques sur des questions de code!
Hors ligne
Merci pour ta réponse,
justement j'ai récupéré le code à Juan,j'ai voulu l'adapté à mon image de triangle mais
franchement je ne vois pas ou je peux changer le son?
et il y a également des lignes que je ne comprends pas à quoi elles servent
Hors ligne
Le plus simple est que tu commentes ton code au partie que tu comprends pas et le postes sur le forum. Si tu débutes dans processing les liens que je t'ai donné t'aideront dans ton projet
Hors ligne
Voici e code de juan,
Hors ligne
Lala,
le principe du forum, c'est de t'aider si tu rencontres une difficulté, mais on ne peut pas le faire entièrement à ta place, à moins que quelqu'un soit très disponible et intéressé de rester devant son écran, mais tu comprendras que cette conjonction soit difficile à réunir
Dans le programme de Juan ce sont les objets sinewave de minim qui créent le son, tu peux commencer avec un seul dont tu fixes la fréquence à chaque lecture d'une colonne comme je l'expliquais plus haut. Pour lire la valeur des pixels, tu peux utiliser get() et brightness()
L'idéal serait que tu réduises le code de Juan, jusqu'à avoir une base que tu maîtrises, qui te servira de point de départ.
Hors ligne
Je comprends mais même en le réduisant j'arrive pas à faire le son que je veux!!!
Hors ligne
C'est dans quel optique que tu souhaites réaliser cela, étude, projet personnel, projet d'assoce ?
Le problème d'un triangle c'est que si tu le lis, tu auras toujours le son du coté qui sert de base qui sera constant, et ne variera pas.
citation :
le principe du forum, c'est de t'aider si tu rencontres une difficulté, mais on ne peut pas le faire entièrement à ta place, à moins que quelqu'un soit très disponible et intéressé de rester devant son écran, mais tu comprendras que cette conjonction soit difficile à réunir
Tout est question d'argent
Hors ligne
C'est pour mon projet d'étude,j'ai vraiment besoin de votre aide
Hors ligne
Voilà,
Minim,en ce moment,ça m'intérresse...
Donc j'ai fait ça:
un cube qui monte et qui descend le long des cotés d'un triangle avec un son "qui monte et qui descend".
Je bloque quand même sur deux trucs:
-ramener mon cube à son point de départ.
-caler le panoramique juste sur la base du triangle au lieu de l'avoir sur la largeur du dessin.
import ddf.minim.*; import ddf.minim.signals.*; Minim minim; AudioOutput out; SineWave sine; cube monCube; void setup(){ size(400,400); monCube = new cube(97,297,0.3,0.6); background(255); noFill(); minim = new Minim(this); out = minim.getLineOut(Minim.STEREO); sine = new SineWave(50, 0.5, out.sampleRate()); sine.portamento(50); out.addSignal(sine); } void draw(){ background(255); monCube.drive(); monCube.display(); } class cube{ float xpos; float ypos; float speedx; float speedy; cube(float tempXpos,float tempYpos,float tempspeedx,float tempspeedy){ xpos = tempXpos; ypos = tempYpos; speedx = tempspeedx; speedy = tempspeedy; } void display(){ noFill(); triangle(100,300,200,100,300,300); shapeMode(CENTER); rect( xpos, ypos, 6, 6); float freq = map(ypos, 0, height, 1500, 50); sine.setFreq(freq); float pan = map(xpos, 0,width, -1, 1); sine.setPan(pan); } void drive() { if(xpos < 197) { xpos = xpos +speedx; ypos = ypos -speedy; } else if(xpos < 297) { xpos = xpos +speedx; ypos = ypos +speedy; } } } void stop() { out.close(); minim.stop(); super.stop(); }
Hors ligne
Merci beaucoup nitefish
ça va beaucoup m'aider
Hors ligne
bonjour,
avec beaucoup de retard, je poste içi le code de Juan, légèrement adapté (programmation orientée objet)
Hors ligne