Comunidad de diseño web y desarrollo en internet online

Preloader de un swf con sound

Citar            
MensajeEscrito el 08 Jun 2004 11:17 pm
Hola, tengo un swf con un mp3, asi que he decidido usar un preloader para cargarlo, pero el preloader no funciona, se carga directamente el swf todo entero y entonces se reproduce.



No es problema de visualizarlo por el explorer llamando directamente el swf, pq lo he incrustado en un html y me pasa igual.



He utilizado el Preloader que ha dejado freddie® de tutorial, y con imagenes me va perfecto, pero con sound no.



He utilizado tb el sistema de preloaders del MX2004 tb dejado por freddie® en un tutorial, pero en este caso ni se carga el sonido y algunos botones no funcionan, pero si incluyo el archivo de mp3 en el swf que hace de cargador entonces si funciona, pero no es el caso pq el swf cargador pesa a causa del mp3 y estamos en las mismas :? .



El archivo de sonido esta en la biblioteca y lo llamo por actionscript desde la linea de tiempo haciendo asi :



s = new Sound();

s.attachSound("archivomp3");

s.start(0, 50);



Necesito ayuda por favor.



Por si a alguien le interesa el swf esta en www.fib.upc.es/~e6975918

el link "blask'n'raya"



Gracias por anticipado.

Por dablak

13 de clabLevel



Genero:Masculino  

Barcelona

unknown
Citar            
MensajeEscrito el 09 Jun 2004 11:55 am
Si esta en la libreria obiamente pesara mas,

ponnos el codigo que usas o usabas para hacerle el preloader externo, te aseguraste que la ruta fuera correcta ? hacias bien el preloader usando el contendor creado, etc etc...dejame echarle un vistazo y te lo diré.

Por Dailion

42 de clabLevel



 

unknown
Citar            
MensajeEscrito el 09 Jun 2004 01:10 pm
Bueno, mi objetivo era meter el preloader en si dentro del propio swf y no usando un swf de cargador con un contenedor y utilizar la clase MovieClipLoader, pero por si acaso lo prove utilizando el sistema del MX2004 para ver si asi se solucionava, y la luta era correcta porque i ejecutas el swf por separado se escucha bien.



Pero bueno, el caso es que ya lo he solucionado :) . He leido un post en el foro de ActionScript y he puesto el mp3 en un archivo a parte y lo he cargado luego desde dentro del swf haciendo LoadSound, y he puesto un preloader para este LoadSound que era en si lo que hacia que pesara el swf. Quizas es un poco chapuzas, pero funciona, el codigo que he usado es el siguiente:



s = new Sound();

function cargando() {

var total, cargados, porcentaje;

total = s.getBytesTotal();

cargados = s.getBytesLoaded();

porcentaje = Math.floor((cargados*100)/total);

porcentaje_txt.text = porcentaje+" %";

barra_mc.gotoAndStop(porcentaje);

if (cargados == total) {

clearInterval(hiloPrecarga);

play();

}

}

var hiloPrecarga = setInterval(cargando, 1);

s.loadSound("paranoya maxima.mp3", true);

s.stop();

stop();





Como veis lo he reaprovechado del tutorial de Freddie.



Igualmente Gracias por todo.

Por dablak

13 de clabLevel



Genero:Masculino  

Barcelona

unknown
Citar            
MensajeEscrito el 09 Jun 2004 07:05 pm
me alegro ! oye si no usabas loadsound, que hacias ? :S

Por Dailion

42 de clabLevel



 

unknown
Citar            
MensajeEscrito el 10 Jun 2004 12:37 am
Pues en lugar de cargar solo el mp3 intentaba cargar el swf entero con el mp3 incluido en la biblioteca. Entonces en lugar de hacer por ejemplo s.getBytesTotal(); hacia _root.getBytesTotal(); y quitaba el loadSound poque mas tarde haria un attachSound, ya que el mp3 lo tenia vinculado.



Ahora me funciona bien, pero en el caso de que tuviera un swf pesado (supuestamente) deberia hacer dos preloader, uno para el swf en si y otro para importar el mp3. Y eso es, precisamente, lo que me hubiera gustado evitar si fuera el caso. Pero no se si flash da esa opcion.



Todo y eso si quieres ver el .fla definitivo lo tienes en http://www-pagines.fib.upc.es/~e6975918/raya.zip

Por dablak

13 de clabLevel



Genero:Masculino  

Barcelona

unknown

 

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