Comunidad de diseño web y desarrollo en internet online

Saber si al hacer myMedia.play() se reproduce el myMedia

Citar            
MensajeEscrito el 23 Jul 2008 09:40 am
Hola a todos!!
Estoy haciendo un reproductor con dos streaming y me gustaría saber si cuando hago mi myMedia.play() y por ejemplo da un error al abrir la url porque esta mal escrita el play() no lo hace pues me gustaría saber como puedo saber que no me esta haciendo el play() y asi que me reproduzca otra canción por ejemplo un comodin que voy a tener en su defecto.
Gracias y espero que me podais ayudar

Por marialu

1 de clabLevel



Genero:Femenino  

msie
Citar            
MensajeEscrito el 23 Jul 2008 10:10 am
MediaDisplay no tiene ningún callback para eso, si fuera directamente un NetStream recibirás un NetStream.Play.StreamNotFound
Lo que puedes hacer es monitorear el evento Media.progress (los bytes cargados), si durante un tiempo no progresa, cambias. Otra opción es usar el truco del LoadVars para ver si el archivo existe:

Código :

var checkFile:LoadVars = new LoadVars()
checkFile.onLoad = function(ok){
  if(ok) trace("Existe")
  else trace("No existe")
}
checkForFile.load("algun.flv")


Dado que el LoadVars igual fuerza una descarga (aunque no se pa que hacer luego con el archivo), igual me inclino por chequear el progress

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 23 Jul 2008 10:23 am
Gracias Jorge!
La verdad no se muy bien como hacerlo, tengo una lista de canciones en un xml y las cargo con setmedia, el setmedia carga la url, pero claro al hacer el play() si ese archivo no existe no reproduce, entonces es ahi donde lo quiero comprobar, puff no tengo ya ni idea de como hacerlo.
Gracias

Por marialu

1 de clabLevel



Genero:Femenino  

msie
Citar            
MensajeEscrito el 23 Jul 2008 10:30 am
Primer paso: F1, Diccionario de componentes, Media Component, Media class, y mirar los ejemplos. Al final de esa entrada hay algo que puede serte útil, te lo copio:


// Duration of delay before calling timeOut.
var timeOut:Number = 3000;

// If timeOut has been reached, do this:
function callback(arg) {
trace(arg);
}

// Listen for progress.
var myListener:Object = new Object();
myListener.progress = function(eventObj:Object) {
setInterval(callback, timeOut, "Experiencing Network Delay");
};
md.addEventListener("progress", myListener);


En tu caso, en vez de network delay, eso puede indicar que el archivo no existe

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 28 Jul 2008 11:43 am
Ya lo hice gracias

Por marialu

1 de clabLevel



Genero:Femenino  

msie

 

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