JOUONS AVEC LA STÉRÉO

stadja Messages postés 16 Date d'inscription mercredi 23 mars 2005 Statut Membre Dernière intervention 1 juillet 2007 - 4 avril 2005 à 21:02
1gima1 Messages postés 7 Date d'inscription jeudi 3 novembre 2005 Statut Membre Dernière intervention 18 mars 2007 - 3 mars 2007 à 21:51
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/30531-jouons-avec-la-stereo

1gima1 Messages postés 7 Date d'inscription jeudi 3 novembre 2005 Statut Membre Dernière intervention 18 mars 2007
3 mars 2007 à 21:51
Bonjour,

J' ai 8 images(frame, en flash) dont chacune a sa propre musique.
Chaque son était sur la première image clé du calque son de chaque frame et cela fonctionnait bien mais je dois à présent utiliser action script pour réaliser la même chose.
Lorsque je clique sur le bouton pour changer d' image il faut que le son qui lui est attribué joue...et arrête le son précédent!
Malgré mes effots rien ne marche...à l' aide SVP
Merci
1gima1 débutant en peine....
cs_peter_p Messages postés 1 Date d'inscription vendredi 2 février 2007 Statut Membre Dernière intervention 4 février 2007
4 févr. 2007 à 12:46
Excellent code merci !!! il marche à merveille et donne un bel effet ;)
SuperDevy Messages postés 842 Date d'inscription dimanche 24 novembre 2002 Statut Membre Dernière intervention 2 juillet 2007
1 mai 2005 à 12:37
http://developpeur.journaldunet.com/tutoriel/fla/040108fla_mouse_setpan.shtml

Flash : accrocher un son à la souris
Une méthode pour modifier la balance d'un son en fonction de la position de la souris. (8 janvier 2004)

Forums
* Discutez en sur les forums
En fait de réellement "accrocher" le son à le souris, ce qui peut sembler absurde, nous allons ici vous montrer comment faire en sorte que le son puisse "suivre" le mouvement de la souris. La plupart des ordinateurs n'étant dotés que d'un système stéréo, nous nous limitons aux deux canaux. Nous pouvons donc simplement faire en sorte que, lorsque la souris se rapproche du coté gauche de l'animation, le volume augmente sur l'enceinte gauche, et vice-versa.
Nous faisons pour cela appel à la commande setPan(x). Celle-ci prend pour argument x une valeur comprise entre -100 et 100 : 0 correspond au "centre", -100 à la gauche (volume à 0% pour l'enceinte droite), et 100 à la droite (volume à 0% à l'enceinte gauche).
Nous partons ici du principe que le son a été directement importé dans la bibliothèque : n'oubliez donc pas de l'exporter pour ActionScript (clic droit dans la bibliothèque, "Liaison" et "Exporter pour ActionScript") et de lui donner le bon identifiant. Le code est posé sur la première image de la timeline pour cet exemple...
Nota Bene : Pour tester correctement cette fonctionnalité dans l'environnement Flash (avec ctrl+Envoi, par exemple), n'oubliez d'ajouter au début la ligne Stage.scaleMode "noBorder" ou Stage.scaleMode "exactFit", sans quoi Flash ne saura pas où se trouve la limite droite de l'animation...

Le code
monSon = new Sound();
monSon.attachSound("TheMicrosoftSound.wav");
monSon.start();

ecouteur = new Object();
ecouteur.onMouseMove = function()
{
x = _root._xmouse;
largeur = Stage.width;
_root.monSon.setPan((x - largeur/2)/(largeur/2)*100);
};
Mouse.addListener(ecouteur);
Splacheur Messages postés 69 Date d'inscription jeudi 8 mai 2003 Statut Membre Dernière intervention 9 octobre 2005
12 avril 2005 à 22:24
ah là je suis d'accord.
Mais ton code n'était ni dans un prototype ni dans une classe ^^
SuperDevy Messages postés 842 Date d'inscription dimanche 24 novembre 2002 Statut Membre Dernière intervention 2 juillet 2007
12 avril 2005 à 18:35
Splacheur, effectivement, ton code marche très bien. Il marche même avec Flash 5. Mais ta méthode reste "préhistorique".
Tu es obligé d'utiliser un MovieClip pour utiliser l'évènement onMouseMove : tu ne peux pas utiliser plusieur fois ce même code sur un même clip ... Ou même intégrer cette fonction dans un prototype ou une classe.
Splacheur Messages postés 69 Date d'inscription jeudi 8 mai 2003 Statut Membre Dernière intervention 9 octobre 2005
12 avril 2005 à 08:34
du addListener tu veux dire ?
Je vois pas à quoi il sert, mon code marche très bien
BananaTree Messages postés 337 Date d'inscription vendredi 15 octobre 2004 Statut Membre Dernière intervention 2 novembre 2010
11 avril 2005 à 22:51
oui, mais questce que tu fais de removeListener() splacheur ? ;-)
Splacheur Messages postés 69 Date d'inscription jeudi 8 mai 2003 Statut Membre Dernière intervention 9 octobre 2005
8 avril 2005 à 21:25
Wé c'est cool mais c'est quand même plus simple comme ça :

monSon = new Sound();
monSon.attachSound("son");
monSon.start();

this.onMouseMove = function() {
monSon.setPan((_root._xmouse - Stage.width/2)/(Stage.width/2)*100);
};
threep21 Messages postés 69 Date d'inscription samedi 27 décembre 2003 Statut Membre Dernière intervention 29 décembre 2006
5 avril 2005 à 23:05
C'est tout bete mais fallait y penser :D
SuperDevy Messages postés 842 Date d'inscription dimanche 24 novembre 2002 Statut Membre Dernière intervention 2 juillet 2007
4 avril 2005 à 23:22
Excellent, merveilleux, génial ...
Brillantissime idée ! Voici un moyen simple et efficace de créer de l’interactivité. Là où on ne s’y attend pas, en plus.

Merci pour cette idée.
Ca vaudrait bien [11/10] !!!
stadja Messages postés 16 Date d'inscription mercredi 23 mars 2005 Statut Membre Dernière intervention 1 juillet 2007
4 avril 2005 à 21:02
j'adore :) c tout con mais c bien ... euh ah oui si ça marche pas chez vous parce que votre droite et a gauche il suffit de changer la ligne _root.monSon.setPan((x - largeur/2)/(largeur/2)*100); par _root.monSon.setPan((-x + largeur/2)/(largeur/2)*100);
Rejoignez-nous