Comunidad de diseño web y desarrollo en internet online

Parar todos los sonidos

Citar            
MensajeEscrito el 12 May 2008 04:01 pm
Hola a todos, necesito de ayuda nuevamente.
Tengo 12 animaciones en las cuales se cargan sonidos atachandolos de la biblioteca. Lo que quiero hacer es crear un boton para enmudecer la pelicula. Probe con stopAllSounds() pero si bien para los sonidos por un instante, cuando la cabeza lectora vuelve a pasar por el frame donde atacho un sonido el mismo se reproduce. El problema es que si yo utilizase setVolume, tendría que buscar uno por uno todos los objetos de sonido q se crearon y mediante el este metodo bajarle el volumen, algo muy tedioso ya que las peliculas son bastante complejas y son 12 ¿Alguien sabe una forma practica de realizar esto??? En este caso no es importante que la solucion sea elegante, el tema es que funcione.

Gracias y espero su ayuda,

Topicus

Por topicus

18 de clabLevel



 

firefox
Citar            
MensajeEscrito el 12 May 2008 05:44 pm
Mete el stopAllSounds dentro de un onEnterFrame, nada menos elegante, pero funcionaría

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 13 May 2008 01:32 am
Gracias jorge, probe con utilizar ese recurso pero hay sonidos que se ejecutan antes que se dispare el evento y terminan por escucharse cortados. Probe tb con una funcion setInterval que corra a mayor velocidad que la pelicula y tampoco, los sonidos se siguen ejecutando. Si a alguien se le ocurre otra forma se los voy a agradecer ya que me ahorrarían varias horas de trabajo.

Igualmente muchas gracias por el aporte,

Topicus

Por topicus

18 de clabLevel



 

msie7
Citar            
MensajeEscrito el 13 May 2008 02:03 am
Si eso no funciona, pues chico, a buscar donde creas los sonidos y agregar lógica para el mute.

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 13 May 2008 02:39 am
Bueno, lo primero que se me ocurre es crear una variable por ejemplo:

Código :

var sound:Boolean = true;


Y en tus attachSound sería:

Código :

if (sound==true) {
   var my_sound:Sound = new Sound();
   my_sound.attachSound("sonido");
   my_sound.start();
   sound=false
}


Lo que ya no haría que se vuelva a reproducir el sonido al pasar por el frame.

Por otro lado sería mejor que puedas controlar los sonidos desde una sola clase, así tendrás más control (Y)

Por eldervaz

BOFH

10964 de clabLevel

39 tutoriales
56 articulos

Genero:Masculino  

en algún lugar del mundo

firefox
Citar            
MensajeEscrito el 18 Jul 2008 01:15 am
Al final encontre la solucion:
Se crea un objeto Sound sin pasarle ningun parametro al constructor y luego se utiliza el metodo setVolume del mismo para bajar el volumen. Cuando no se le pasa ningun parametro al constructor del objeto sound, cualquier metodo que utilicemos afecta a toda la pelicula.
Mas simple el ejemplo de la ayuda de flash:

var global_sound: Sound = new Sound();
global_sound.setVolume(0);

De esta forma se baja el volumen en toda la pelicula.

Saludos,

Topicus

Por topicus

18 de clabLevel



 

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.