Baisser le volume d'un son un certain temps [Résolu]

Signaler
Messages postés
2
Date d'inscription
dimanche 21 septembre 2008
Statut
Membre
Dernière intervention
22 septembre 2008
-
Messages postés
2
Date d'inscription
dimanche 21 septembre 2008
Statut
Membre
Dernière intervention
22 septembre 2008
-
Bonjour!!

Voila, j'ais un probléme auquel je n'arrive pas à trouver de réponse.

Je suis en train de créer une application musicale qui permet de jouer des samples en boucle.
Je souhaiterai qu'en cliquant sur un bouton, ca mette en route un nouveau son, et que ca baisse le volume des autres sons qui tournent en meme temps, mais que ces derniers  se remettent au volume initial avant le fin du nouveau son (environ 2 secondes)
en gros je veu utiliser setvolume pendant un temps impartis seulement.
J'espere etre assez clair...
Merci d'avance!!!

2 réponses

Messages postés
1275
Date d'inscription
vendredi 13 mai 2005
Statut
Membre
Dernière intervention
6 octobre 2010

Salut,
Une solution serait de faire un setInterval() que tu vires une fois finis avec clearInterval() , regarde dans l'aide de Flash à ce sujet, et il y a beaucoup d'exemple dans les codes et forum de ce site.
@+.
Messages postés
2
Date d'inscription
dimanche 21 septembre 2008
Statut
Membre
Dernière intervention
22 septembre 2008

Merci, le setinterval fonctionne bien.
Mais j'ai à présent un nouveau probleme.
En effet, je souhaite qu'en cliquant sur le bouton, cela baisse le volume d'un son (drum 1 2 3 et 4)pendant un certain temps, et en joue un autre (toms1, qui dure plus longtemps que le pose: les sons doivent se superposer à la fin). J'ai lu qu'il falait que les sons soient dans un clip différent. j'ai testé avec createemptymovieclip ( ), mais le son s'arrete mais ne reviens pas. J'ai donc décidé de les mettre dans des clips différents à la base, mais là le son à baisser et augmenter (drum1 2 3 et 4) ne s'arrentent plus.

Je me retrouve donc avec ce code sur le bouton toms:

on (release){
toms1 = new Sound ();
toms1.attachSound("toms1");
toms1.start();
_parent.drums.drum1.setVolume(0)
_parent.drums.drum2.setVolume(0)
_parent.drums.drum3.setVolume(0)
_parent.drums.drum4.setVolume(0)
pose=0;
function timpose(){
  pose +=1;
  if (pose == 1){
     _parent.drums.drum1.setVolume(100)
     _parent.drums.drum2.setVolume(100)
     _parent.drums.drum3.setVolume(100)
     _parent.drums.drum4.setVolume(100)
     clearInterval (mon_interval);
  }
     }
var mon_interval = setInterval (timpose, 1990);
}

et celui ci sur les drums:

on (release){
drum4.stop("drum4");
drum3.stop("drum3");
drum2.stop("drum2");
drum1.stop("drum1");
drum2 = new Sound ();
drum2.attachSound("drum2");
drum2.start();
drum2.onSoundComplete=function(){

this.start();

}
}

Voila... si quelqu'un pourait m'aider ca serai super, surtout que je pense que c'est une bricole qui me bloque...

Merci beaucoup!!!