Comunidad de diseño web y desarrollo en internet online

Reproductor mp3 con PAUSE

Citar            
MensajeEscrito el 26 Nov 2006 09:38 pm
Hola a todos. Soy nuevo y me llamo Jose. Antes que nada enorabuena por esta web. Esta realmente genial.

Mi problema es el siguiente. Estoy tratando de poner una canción como fondo en mi web, con el streaming a "true", y haciéndolo a través de action script de la siguiente manera:

Código :

clip.stop();
var devil:Sound=new Sound();
devil.loadSound("Devil.mp3", true);
devil.stop();
playButton.onRelease = function (){
   devil.start();
   clip.play();
}
stopButton.onRelease = function (){
   devil.stop();
   clip.stop();
}
stop();

La cancion se llama devil.mp3 y por más que intento añadir un boton de "pause" poniendo devil.pause() no me funciona....

Alguien sería tan amable de decirme como puedo añadir a mi web un botón que no pare - stop- la canción sino que la pause, simplemente.
Gracias por adelantado. Un Saludo.

Por xXmusic

77 de clabLevel



Genero:Masculino  

msie
Citar            
MensajeEscrito el 28 Nov 2006 11:32 am
Al pulsar el boton de la pausa, además del devil.stop() , tienes que utilizar la instrucción : pausa = devil.position; ( está en miliseg.)
y la orden de seguir : devil.start(pausa/1000);

Mira este tuto:
http://www.cristalab.com/tutoriales/146/boton-play-pausa-para-sonido-en-flash

Por Teseo

SWAT Team

1780 de clabLevel

14 tutoriales

Genero:Masculino   SWAT

msie
Citar            
MensajeEscrito el 28 Nov 2006 12:12 pm
:cool: Muchas gracias, no encontraba ese tutorial por ningún lado. Ya lo hice antes y me funcionó , lo hice de esta forma:

Código :

clip.stop();
var devil:Sound=new Sound();
devil.loadSound("Devil's.mp3", true);
devil.stop();
var porcentaje=0;
var cargados=0;
var totales=0;
checar=setInterval(function(){
                      cargados=devil.getBytesLoaded()/1024;
                      totales=devil.getBytesTotal()/1024;
                      porcentaje=Math.round((cargados/totales)*100);
                      bytescargados.text=porcentaje+" %loaded";
                      barra._xscale=100*cargados/totales; 
                      if (porcentaje==100){
                         clearInterval(checar);
                      }
                      },1000);
var pausePos = 0;
playButton.onRelease = function (){
   if (pausePos>0){
      devil.start(pausePos,4);
      clip.play();
      pausePos=0;
   }else{
         devil.start(0,4);
         clip.play();
   }
}
pauseButton.onRelease = function (){
   pausePos = devil.position/1000;
   devil.stop();
   clip.stop();
}
stopButton.onRelease = function (){
   devil.stop();
   clip.stop();
}
stop();


El problema que tengo ahora es saber si la precarga del mp3 funciona correctamente… He puesto un intervalo que chequee los bytes de descarga del mp3, cada segundo, pero no logro verlo…

Me podrías decir si está bien la precarga del mp3 que he hecho arriba en el código que he puesto al principio…

Muchísimas gracias de antemano.

Jose.

Por xXmusic

77 de clabLevel



Genero:Masculino  

msie
Citar            
MensajeEscrito el 28 Nov 2006 12:15 pm
Se me olvidó...
Tampoco consigo que se me repita la canción 4 veces... solo suena 1 vez a pesar de haber puesto : devil.start(0,4)

Por xXmusic

77 de clabLevel



Genero:Masculino  

msie
Citar            
MensajeEscrito el 28 Nov 2006 04:52 pm
Lo has cargado como sonido de flujo :
devil.loadSound("Devil's.mp3", true);
El nº de loop no funciona con sonidos e flujo.
El sistema de verificación de carga parece correcto.

Por Teseo

SWAT Team

1780 de clabLevel

14 tutoriales

Genero:Masculino   SWAT

msie
Citar            
MensajeEscrito el 28 Nov 2006 05:55 pm
:wink: Muchas gracias, lo que pasa es que la precarga no la puedo verificar de momento, pero hay veces en que me sale not a numbre NaN o algo parecido y no sé el motivo. En cuanto a lo del flujo no lo sabía…
Podría entonces poner como un contador a 0 y un while para que se repita cuatro veces el mp3, no?

Código :

cont=0;
while (cont < 5)
             devil.start(0);
             cont++;
             ...
O tengo que utilizar de nuevo otro intervalo? Aunque ahora creo que tampoco vale... ya que tendría que darle tiempo al mp3 a que finalizase... Uff ...ni idea. :roll:
Gracias por adelantado…

Por xXmusic

77 de clabLevel



Genero:Masculino  

msie
Citar            
MensajeEscrito el 28 Nov 2006 07:50 pm
Hay una función llamada OnSoundComplete(); Utiliza esa, es más sencillo.

Por dave73

985 de clabLevel

5 tutoriales

 

Argentina, Córdoba

opera
Citar            
MensajeEscrito el 29 Nov 2006 07:08 pm
Gracias... me sonaba es verdad !! Un saludo y gracias de nuevo.
Jose

Por xXmusic

77 de clabLevel



Genero:Masculino  

msie
Citar            
MensajeEscrito el 29 Nov 2006 08:03 pm
Ahora tengo el problema de la precarga... creo que no me funciona bien y he tenido que quitar el código... pero no consigue ver el fallo de mi precarga... si es que existe. Alguien sabe si está bien el siguiente código?

Código :

checar=setInterval(function(){                        
cargados=devil.getBytesLoaded()/1024;
   totales=devil.getBytesTotal()/1024;
   porcentaje=Math.round((cargados/totales)*100);
   bytescargados.text = porcentaje+" %loaded";
   barra._xscale=100*cargados/totales; 
    if (porcentaje==100){
      clearInterval(checar);
   }
   },1000);

Por xXmusic

77 de clabLevel



Genero:Masculino  

msie
Citar            
MensajeEscrito el 29 Nov 2006 09:06 pm
Bueno y para quienes les haga falta el código con onSoundComplete - totalmente verficado, os lo pongo a continuación: Mi canción devil.mp3 se repite indefinidamente poniendola como como true:

Código :

clip.stop();
var devil:Sound=new Sound();
devil.loadSound("http://Devil.mp3", true);
devil.stop();
var pausePos = 0;
bytescargados.text=100+" %"; //esto sí se escribe correctamente en la pantalla //
playButton.onRelease = function (){
   if (pausePos>0){
      devil.start(pausePos);
      devil.onSoundComplete=function(){
            devil.start(0);
         }
      clip.play();
      pausePos=0;
   }else{
         devil.start(0);
         clip.play();
         devil.onSoundComplete=function(){
            devil.start(0);
         }
   }
}
pauseButton.onRelease = function (){
   pausePos = devil.position/1000;
   devil.stop();
   clip.stop();
}
stopButton.onRelease = function (){
   devil.stop();
   clip.stop();
}

Por xXmusic

77 de clabLevel



Genero:Masculino  

msie

 

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