Comunidad de diseño web y desarrollo en internet online

Ayuda a hacer reproductor mp3

Citar            
MensajeEscrito el 15 Abr 2010 02:29 am
hola a todos, no se si este tema ya lo han tratado, supongo que si pero no he podido dar con la respuesta, basicamente es esto, intento hacer un reproductor Mp3 con xml, el reproductor solo busca una cancion titulo y autor. Lo que tengo hasta ahora es esto:

Código ActionScript :

var myXML = new XML();
myXML.ignoreWhite = true;

//llamamos la musica
sonido = new Sound();
sonido.setVolume(50);
   
myXML.onLoad = function() {
   var nom = this.firstChild.childNodes[0].attributes.autor;
   var can = this.firstChild.childNodes[0].attributes.titulo;
   var ruta = this.firstChild.childNodes[0].attributes.url;
     sonar();
   };
   
function sonar (track){
   sonido = new Sound();
   sonido.loadSound(ruta, true);
   titulo_txt.text = can;
   autor_txt.text = nom;
   }
   
myXML.load('player.xml');


el problema que no entiendo, es que cuando intento llamar el mp3 me sale un error que es este:

Error al abrir la URL 'file:///D|/trabajos%20de%20PSD%20a%20HTML/trabajos%20Samuel/911/mp3/mp3de%20prueba/undefined'

el xml es este :

Código XML :

<?xml version="1.0" encoding="utf-8"?>
<player>
  <cancion url="mp3/levee.mp3" autor="Kansas Joe and Memphis Minnie" titulo="When the Levee Breaks" />
</player>


he mirando variso ejemplos pero que llaman varios mp3 y no logor dar con la respuesta.

Si me puede explicar lo agradecería

Saludos a todos

Por tutos50

35 de clabLevel



 

firefox
Citar            
MensajeEscrito el 15 Abr 2010 02:39 pm
Puedes hacer algo mas agradable agregando a tu frame principal este elemnto MediaPlayback puedes ponerle cualquier nombte (mpb)

ahora cuando ya tengas la información del xml, le asignas el mp3 así:
mpb.setMedia("Musica.mp3", "MP3");
mpb.play(0);

ojo en la propiedades del mpb, no te olvides especificar que va a reproducir un mp3. y tiene algunos estilos si no te gusta el que viene por defecto.

Por riback

49 de clabLevel



 

Quito - Ecuador

msie8
Citar            
MensajeEscrito el 15 Abr 2010 02:43 pm
se le olvidava, el error te sale porque el valor de la variable esta sindo asignada en una funcion si haces
trace(ruta);

en la funcion de sonar, te daras cuenta que no tiene ningun valor la variable "undefined". puedes pasarle como parametro a la función
sonar(ruta);

Por riback

49 de clabLevel



 

Quito - Ecuador

msie8
Citar            
MensajeEscrito el 16 Abr 2010 12:53 am
Gracias por contestar, con repsecto al mediaPlayback, pues lo que estoy haciendo es armar el mio propio, despues le monto el codigo para los botones.

Con lo del error no me quedo claro.

Me podiras explicar porfavor como debe quedar la funcion?

si hago lo que dices quedaría así ?

Código ActionScript :

function sonar (ruta){
   sonido = new Sound();
   sonido.loadSound(ruta, true);
   titulo_txt.text = can;
   autor_txt.text = nom;
   }


Igual lo probe y sale el mismo error, para que tengas en cuenta esto va para un cms que estan haciendo por aparte, la idea es qeu el administrador pueda cambiar ese mp3.

Gracias de nuevo

Por tutos50

35 de clabLevel



 

firefox
Citar            
MensajeEscrito el 16 Abr 2010 03:11 am
Bueno me respondo y Gracias a Victor que me explico y espero le ayude a alguin mas a enteder un poco mejor as2:

La cosa quedaría así:

Código ActionScript :

var myXML = new XML();
myXML.ignoreWhite = true;

//llamamos la musica
sonido = new Sound();
sonido.setVolume(50);
   
myXML.onLoad = function() {
   var nom:String = this.firstChild.childNodes[0].attributes.autor;
   var can:String = this.firstChild.childNodes[0].attributes.titulo;
   var ruta = this.firstChild.childNodes[0].attributes.url;
     sonar(ruta);
   };
   
function sonar (track:String){
   sonido.loadSound(track, true);
   titulo_txt.text = can;
   autor_txt.text = nom;
   }
   
myXML.load('player.xml');


A la funcion sonar le agregas un parametro el cual en este caso es track luego la loadSound le dices que busque track, true, el true es el valor para que empiece la cancion una vez la encuentre.

arriba dentro del onLoad function donde dice sonar(ruta); lo que haces es decirle a la funcion que cuando cargue el XML, arranque a sonar la cancion.

Si se preguntan por que poner track y no ruta si es la variable que busca la ruta del mp3? pues es porque la variable ruta esta definida dentro del onLoad y no afuera, entonces la funcion sonar no tiene de donde buscar.

track
es simplemente una variable qeu se crea dentro de la funcion, (puede ser cualquier otro nombre que ustedes quieran) , y se le dice qeu es de tipo string osea una cadena de texto asi: track:string, esto segun dice la persona que me ayudo es lo mejor para definir que tipo de variable es.

Espero le sirva .. saludos

Por tutos50

35 de clabLevel



 

firefox

 

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