Lecture aléatoire de mp3

leyus Messages postés 20 Date d'inscription samedi 19 février 2005 Statut Membre Dernière intervention 19 avril 2005 - 21 févr. 2005 à 01:07
Blacknight91titi Messages postés 1732 Date d'inscription jeudi 17 juin 2004 Statut Membre Dernière intervention 9 mars 2015 - 2 mars 2005 à 10:22
bonjour,

je réalise une petite fonction son sur un site, j'ai deux boutons on et off et je souhaite lire de facon aléatoire 2 mp3. A chaque clic sur on, cela lit soit le 1.mp3 soit le 2.mp3, quand ca clic sur off ca stoppe le son.
je vois ce qu'il faut faire pour lire un seul mp3 (en sachant qu'il est chargé), mais la je sais po ...
je pense faire 2 clips, sur le bouton on chargé aléatoirement l'un des 2 si possibles et sur le bouton stop arreter les 2 sons.

merci pour votre aide

17 réponses

Blacknight91titi Messages postés 1732 Date d'inscription jeudi 17 juin 2004 Statut Membre Dernière intervention 9 mars 2015 2
21 févr. 2005 à 11:23
Ta méthode est possible.
Sinon :
valeur = Math.ceil(Math.random())
if (valeur == 0) {
//le son 1 est est choisit
} else {
//le son 2 est choisit
}

Malheuresement je ne suis pas sur de Math.random() car J'ai toujours l'impression qu'il choisit toujours la même valeur.
Sinon tu as le random()
Tout simplement

Mais ton idée n'est pas mauvaise

En espérant t'avoir aidé

Blacknight91Titi
Et comme chaque jour je t'aime davantage, aujourd'hui plus qu'hier mais bien moins que demain !
0
pegase31 Messages postés 6138 Date d'inscription dimanche 21 décembre 2003 Statut Modérateur Dernière intervention 4 septembre 2013 12
21 févr. 2005 à 12:48
désolé de te reprendre, cher ami, mais :


valeur = Math.ceil(Math.random())
donnera toujours 1 !

Peg'
0
Blacknight91titi Messages postés 1732 Date d'inscription jeudi 17 juin 2004 Statut Membre Dernière intervention 9 mars 2015 2
21 févr. 2005 à 12:51
Mille excuse
Je me suis trompé :S

valeur = Math.round(Math.random())
if (valeur == 0) {
//le son 1 est est choisit
} else {
//le son 2 est choisit
}

Voila la sa marchera
Encore désoler

Blacknight91Titi
Et comme chaque jour je t'aime davantage, aujourd'hui plus qu'hier mais bien moins que demain !
0
leyus Messages postés 20 Date d'inscription samedi 19 février 2005 Statut Membre Dernière intervention 19 avril 2005
21 févr. 2005 à 16:11
je vais tester cela

MERCI à vous 2 !
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
leyus Messages postés 20 Date d'inscription samedi 19 février 2005 Statut Membre Dernière intervention 19 avril 2005
1 mars 2005 à 21:33
après avoir essayé cela me lit a chaque fois le son2 !

j'ai essayé cela :

choixSon=3; //choix possibles => 3 musiques
monSon=new Sound(this);
aleatoire=Math.round(Math.random()*choixSon); //fonction aléatoire
monSon.attachSound(+aleatoire+".wav"); //mes fichiers sont nommés 1.wav, 2.wav, 3.wav

cela ne fonctionne pas non plus ... je soupconne le attachSound

merci pour votre aide
0
pegase31 Messages postés 6138 Date d'inscription dimanche 21 décembre 2003 Statut Modérateur Dernière intervention 4 septembre 2013 12
1 mars 2005 à 21:41
Pourquoi (+aléatoire+".wav") au lieu de (aléatoire+".wav") ?

Peg'
0
leyus Messages postés 20 Date d'inscription samedi 19 février 2005 Statut Membre Dernière intervention 19 avril 2005
1 mars 2005 à 21:52
okidoki je viens de tester cependant même en reprenant ta syntaxe peg cela ne fonctionne pas.
0
pegase31 Messages postés 6138 Date d'inscription dimanche 21 décembre 2003 Statut Modérateur Dernière intervention 4 septembre 2013 12
1 mars 2005 à 21:57
Tu es au courant qu'avec ta formule, aléatoire varie de 0 à 3 ?
Ensuite; pourquoi ne crées-tu pas 3 sons que tu jouerais aléatoirement au lieu de faire des attachSound ?

Peg'
0
leyus Messages postés 20 Date d'inscription samedi 19 février 2005 Statut Membre Dernière intervention 19 avril 2005
1 mars 2005 à 22:03
yes je viens de me rendre compte en faisant un trace(aleatoire); que cela varie de 0 à 3 donc je vais changer cela en choixSon=2 & renommer mes fichiers dans la bibliothèque.

Pour la suite je vois pas toute à fait ou tu veux en venir, je débute, j'utilise le script + des actions boutons :

on(press){
_root.monSon.stop();
gotoAndPlay("2");
_root.monSon.start("0","1000");
}

par exemple

je souhaite que monSon varie
0
pegase31 Messages postés 6138 Date d'inscription dimanche 21 décembre 2003 Statut Modérateur Dernière intervention 4 septembre 2013 12
1 mars 2005 à 22:11
oui, mais si tu créais 3 sons avec une boucle For et que tu faisais :

this["sound"+aléatoire].start(), ça t'éviterais de les recréer à chaques fois

Peg'
0
leyus Messages postés 20 Date d'inscription samedi 19 février 2005 Statut Membre Dernière intervention 19 avril 2005
1 mars 2005 à 22:25
je vais chercher des infos sur les boucles For afin de capter ce que tu me dis ....
par contre si je souhaite qu'a chaque clic sur le bouton "on" cela change de son je suis pas sur la bonne voie nan ? car la ca déclare la valeur a l'ouverture du fichier et non au moment "onpress", je dois mettre le script sur le bouton ?
0
pegase31 Messages postés 6138 Date d'inscription dimanche 21 décembre 2003 Statut Modérateur Dernière intervention 4 septembre 2013 12
1 mars 2005 à 22:31
Ben tu déclares tes sons en début de frame, là où se trouve ton bouton, et tu joues ton son aléatoirement avec le bouton ...

Peg'
0
leyus Messages postés 20 Date d'inscription samedi 19 février 2005 Statut Membre Dernière intervention 19 avril 2005
1 mars 2005 à 22:35
merci pour les infos ! ca a l'air tout simple pour toi, perso je galère ...

to be continued
0
leyus Messages postés 20 Date d'inscription samedi 19 février 2005 Statut Membre Dernière intervention 19 avril 2005
1 mars 2005 à 22:55
Cela fonctionne sur le bouton avec ce code :

on (press) {
choixSon = 2;
monSon = new Sound(this);
aleatoire = Math.round(Math.random()*choixSon);
monSon.attachSound(aleatoire+"son"); //"son" correspond à une liaison dans la bibliothèque
monSon.stop();
gotoAndPlay("2");
monSon.start("0", "1000");
}

J'ai regardé dans l'aide pour la boucle For mais j'ai pas capté la facon d'imbriquer ces 2 codes. Tu me disais plus haut que cela recrée les sons a chaque fois, la aussi ? qu'est-ce que cela engendre ?
0
pegase31 Messages postés 6138 Date d'inscription dimanche 21 décembre 2003 Statut Modérateur Dernière intervention 4 septembre 2013 12
1 mars 2005 à 23:01
Rien, mais ce n'est pas trés "catholique" comme façon de précéder .. rien ne sert de recréer une chose qui existe déjà !

Tu n'as que quelques petites choses à faire, alors ce n'est pas grave, mais imagines que tu aies 500 sons à faire à chaques fois .. le boulot inutile que tu demanderas à Flash ! ;)

Peg'
0
leyus Messages postés 20 Date d'inscription samedi 19 février 2005 Statut Membre Dernière intervention 19 avril 2005
2 mars 2005 à 00:52
ainsi c'est une histoire de ressources. Pour l'instant ca me convient, je ne pense pas changer de manip, j'y penserai quand je ferai un lecteur de musique plus évolué.
merci pour ton aide Peg
0
Blacknight91titi Messages postés 1732 Date d'inscription jeudi 17 juin 2004 Statut Membre Dernière intervention 9 mars 2015 2
2 mars 2005 à 10:22
Je suis d'accord avec peg pour la méthode.
Il suffit de créer une seule fois chaque son puis de les lire aléatoirement.

Blacknight91Titi
Et comme chaque jour je t'aime davantage, aujourd'hui plus qu'hier mais bien moins que demain !
0
Rejoignez-nous