Los molesto por que tengo un problema con la carga del mp3 en este código y a pesar de haber buscado, no encontré
el defecto por el cual en ocasiones no carga el mp3 y me da valor "undefined" en la ventana de output.
Puede que cargue la película 2 o tres veces y se haga bien o no y no entiendo el por qué.
Les pido una ayuda por favor.
Desde ya mil gracias
charlyn
aqui dejo el código as y el xml
Código :
// funcion que carga el archivo xml data.xml
function cargaXML() {
var xmlDat = new XML();
xmlDat.ignoreWhite = true;
xmlDat.load("../xml/data.xml");
xmlDat.onLoad = function() {
ar_id = new Array();
ar_mp3 = new Array();
if (xmlDat.status == 0) {
raiz = this.firstChild;
raizNombre = raiz.nodeName;
cadena = raizNombre+"\r";
ar_hijosraiz = new Array();
ar_hijosraiz = raiz.childNodes;
for (i=0; i<ar_hijosaraiz.length; i++) {
cadena = cadena+"\r"+ar_hijosraiz[i].nodeName+"=";
hijo = ar_hijosraiz[i];
ar_nietosraiz = new Array();
ar_nietosraiz = hijo.childNodes;
ar_id.push();
for (j=0; j<ar_nietosraiz.length; j++) {
nieto = ar_nietosraiz[j];
nombrenieto = nieto.nodeName;
if (nieto.nodeName != null) {
valor = nieto.firstChild.nodeValue;
cadena = cadena+nombrenieto+":"+valor+" ";
if (nieto.nodeName == "NAME") {
ar_mp3.push(valor);
}
}
}
}
} else {
trace("ERROR al cargar el fichero XML");
}
};
}
// funcion mostrar texto en la lista
function FC_TypeText() {
function fc_type() {
playlist.title_txt.text = str.substring(0, count);
count = count+1;
if (count>str.length) {
clearInterval(iStr);
}
}
// set Interval para el titulo
var str = pl_title;
var iStr = setInterval(fc_type, 200);
var count = 0;
}
// funcion que carga el mp3
function FC_loadSound(son) {
myMusic.stop();
myMusic = null;
myMusic = new Sound();
myMusic.loadSound("../mp3s/"+ar_mp3[posi]+".mp3", true);
myMusic.onSoundComplete = function() {
FC_loadSound(son);
};
//titulos
pl_title = ar_mp3[posi];
//variables de carga
var porcent = 0;
var cargados = 0;
var totales = 0;
// carga y barra de carga
loadingbar_mc.onEnterFrame = function() {
cargados = int(_root.myMusic.getBytesLoaded()/1000);
totales = int(_root.myMusic.getBytesTotal()/1000);
porcent = int(cargados/totales*100);
loadingbar_mc._xscale = porcent;
playlist.title_txt.text = pl_title+" "+porcent+""+" ";
if (porcent>99) {
FC_TypeText();
delete this.onEnterFrame;
}
};
//control de volumen
knob_mc.onPress = function() {
knob_mc._y = _root.myMusic.getVolume();
};
knob_mc.onRelease = function() {
knob_mc._y = _root.myMusic.setVolume();
};
myMusicPosition = 0;
soundIcon.play();
playlist.gotoAndStop(2);
}
cargaXML(); // accionamos la funcion de carga del xml
FC_loadSound(son); // y tambien la del mp3
este es el archivo xml llamado "data.xml"
Código :
<MUSIC> <MP3> <ID>0</ID> <NAME>Babaji Demo 00</NAME> </MP3> <MP3> <ID>1</ID> <NAME>Babaji Demo 01</NAME> </MP3> <MP3> <ID>2</ID> <NAME>Babaji Demo 02</NAME> </MP3> <MP3> <ID>3</ID> <NAME>Babaji Demo 03</NAME> </MP3> <MP3> <ID>4</ID> <NAME>Babaji Demo 04</NAME> </MP3> <MP3> <ID>5</ID> <NAME>Babaji Demo 05</NAME> </MP3> </MUSIC>
gracias de nuevo
