Foros del Web » Creando para Internet » Flash y Actionscript »

mp3 player con xml

Estas en el tema de mp3 player con xml en el foro de Flash y Actionscript en Foros del Web. hola, Tengo un problema con un player de mp3 en flash. Cuando termina de reproducir una cancion del playlist xml no pasa a la siguiente. ...
  #1 (permalink)  
Antiguo 05/06/2008, 11:42
 
Fecha de Ingreso: abril-2008
Mensajes: 11
Antigüedad: 9 años, 7 meses
Puntos: 0
mp3 player con xml

hola,
Tengo un problema con un player de mp3 en flash. Cuando termina de reproducir una cancion del playlist xml no pasa a la siguiente. Es decir que tengo que tocar el boton de proxima cancion para que esto suceda. Como puedo hacer para que valla pasando de canciones automaticamente y cuando llegue a la ultima vuelva a la primera?
Aqui les dejo el codifo de flash:


// mp3Player class
_soundbuftime = 1;
mp3Player = function (songs, interF, reservedDepth) {
if (songs != undefined && interF != undefined && reservedDepth != undefined && typeof songs == "object" && typeof interF == "object" && typeof reservedDepth == "number") {
this.sound = new Object(new Sound(_root));
this.songs = songs;
this.player = interF;
this.positionDump = 0;
this.songs.index = 0;
this.sound.paused = false;
this.sound.stopped = false;
this.curVolume = 100;
this.player.songInfo.html = true;
this.player.songInfo.condenseWhite = true;
this.player.songInfo.autoSize = "left";
this.safeDepth = reservedDepth-1;
this.player.progressIndicator.offset = this.player.progressIndicator._x;
this.loadHandler = _root.createEmptyMovieClip("LH", ++this.safeDepth);
this.progressHandler = _root.createEmptyMovieClip("PH", ++this.safeDepth);
this.volumeHandler = _root.createEmptyMovieClip("VH", this.safeDepth+3);
this.volumeSlideHandler = _root.createEmptyMovieClip("VSH", ++this.safeDepth+4);
// Start functions ----------------------------------------------------------------------------------------------------
this.setRollOver(1);
this.setControls();
this.setInitialVolume(100);
this.sound.loadSound(this.songs[this.songs.index].url, true);
this.showLoaded();
this.showSongInfo();
this.indicateStatus(1);
this.indicateProgress();
// this.enableDrag();
//
} else {
trace("Invalid parameter(s) specified.");
}
};
mp3Player.prototype.stopProgressIndicator = function() {
delete this.progressHandler.onEnterFrame;
};
mp3Player.prototype.resetProgressIndicator = function() {
delete this.progressHandler.onEnterFrame;
this.player.progressIndicator._x = this.player.progressIndicator.offset;
};
mp3Player.prototype.disableDrag = function() {
delete this.player.progressIndicator.onPress;
delete this.player.progressIndicator.onRelease;
delete this.player.progressIndicator.onReleaseOutside;
};
mp3Player.prototype.indicateStatus = function(stat) {
var tar;
stat>0 ? tar=this.player.playButton : stat+1 ? tar=this.player.pauseButton : tar=this.player.stopButton;
this.player.statusIndicator.easeX(tar._x);
};
mp3Player.prototype.showSongInfo = function() {
var artist = this.songs[this.songs.index].artist;
var title = this.songs[this.songs.index].title;
var output = artist+""+title;
this.player.songInfo.htmlText = output;
};
mp3Player.prototype.next = function() {
this.sound.play();
this.songs.index++;
if (this.songs.index>this.songs.length-1) {
this.songs.index = 0;
}
this.showSongInfo();
this.sound = new Object(new Sound(_root));
this.sound.loadSound(this.songs[this.songs.index].url, true);
this.sound.setVolume(this.curVolume);
this.showLoaded();
this.indicateStatus(1);
this.indicateProgress();
};
mp3Player.prototype.setInitialVolume = function(x) {
var ref = this;
var tgt = x/100*this.player.volumeHeight;
var vitgt = this.player.volumeBar._y-tgt;
this.player.volumeNR.text = 100;
this.sound.setVolume(x);
this.curVolume = x;
this.volumeHandler.onEnterFrame = function() {
ref.player.volumeIndicator._y = vitgt-(vitgt-ref.player.volumeIndicator._y)/1.2;
ref.player.volumeBar._height = tgt-(tgt-ref.player.volumeBar._height)/1.2;
if (ref.player.volumeIndicator._y>vitgt-1 && ref.player.volumeIndicator._y<vitgt+1 && ref.player.volumeBar._height>tgt-1 && ref.player.volumeBar._height<tgt+1) {
delete this.onEnterFrame;
}
};
};
mp3Player.prototype.setVolumeDrag = function(x) {
if (x>100) {
x = 100;
}
if (x<0) {
x = 0;
}
var ref = this;
var tgt = x/100*this.player.volumeHeight;
this.sound.setVolume(x);
this.curVolume = x
this.player.volumeNR.text = Math.round(x);
this.volumeHandler.onEnterFrame = function() {
ref.player.volumeBar._height = tgt-(tgt-ref.player.volumeBar._height)/1.2;
if (ref.player.volumeBar._height>tgt-1 && ref.player.volumeBar._height<tgt+1) {
delete this.onEnterFrame;
}
};
};
mp3Player.prototype.dragVolumeSlider = function() {
var ref = this;
var maxH = this.player.volumeHeight;
var vi = this.player.volumeIndicator;
var vb = this.player.volumeBar;
this.volumeSlideHandler.onEnterFrame = function() {
conv = {x:0, y:_root._ymouse};
globalToLocal(conv);
this._y = conv.y;
if (conv.y>=vb._y-maxH-1 && conv.y<=vb._y+1) {
vi._y = conv.y;
ref.setVolumeDrag((vb._y-conv.y)*100/maxH);
}
};
};
mp3Player.prototype.previous = function() {
this.sound.play();
this.songs.index--;
if (this.songs.index<0) {
this.songs.index = this.songs.length-1;
}
this.showSongInfo();
this.sound = new Object(new Sound(_root));
this.sound.loadSound(this.songs[this.songs.index].url, true);
this.sound.setVolume(this.curVolume);
this.showLoaded();
this.indicateStatus(1);
this.indicateProgress();
};
mp3Player.prototype.indicateProgress = function() {
var ref = this;
this.progressHandler.onEnterFrame = function() {
var played = ref.sound.position;
var total = ref.songs[ref.songs.index].duration;
ref.player.progressIndicator._x = ref.player.progressIndicator.offset+((played/total)*ref.player.loadWidth);
if (played>=total) {
delete this.onEnterFrame;
ref.resetProgressIndicator();
ref.next();
}
};
};
mp3Player.prototype.showLoaded = function() {
var ref = this;
this.loadHandler.onEnterFrame = function() {
var loaded = ref.sound.getBytesLoaded();
var total = ref.songs[ref.songs.index].totalbytes;
ref.player.loadBar._width = (loaded/total)*ref.player.loadWidth;
if (loaded == total) {
delete this.onEnterFrame;
}
};
};
mp3Player.prototype.setRollOver = function(grow) {
if (grow) {
this.player.previousButton.onRollOver = this.player.stopButton.onRollOver=this.player.paus eButton.onRollOver=this.player.playButton.onRollOv er=this.player.nextButton.onRollOver=function () {
this.grow();
};
this.player.previousButton.onRollOut = this.player.stopButton.onRollOut=this.player.pause Button.onRollOut=this.player.playButton.onRollOut= this.player.nextButton.onRollOut=function () {
this.shrink();
};
} else {
this.player.previousButton._alpha = this.player.stopButton._alpha=this.player.pauseBut ton._alpha=this.player.playButton._alpha=this.play er.nextButton._alpha=30;
this.player.previousButton.onRollOver = this.player.stopButton.onRollOver=this.player.paus eButton.onRollOver=this.player.playButton.onRollOv er=this.player.nextButton.onRollOver=function () {
this.fadeIn();
};
this.player.previousButton.onRollOut = this.player.stopButton.onRollOut=this.player.pause Button.onRollOut=this.player.playButton.onRollOut= this.player.nextButton.onRollOut=function () {
this.fadeOut();
};
}
};
mp3Player.prototype.setControls = function() {
var ref = this;
var playB = this.player.playButton;
var prevB = this.player.previousButton;
var stopB = this.player.stopButton;
var nextB = this.player.nextButton;
var pauseB = this.player.pauseButton;
var volIndic = this.player.volumeIndicator;
volIndic.onPress = function() {
ref.dragVolumeSlider();
};
volIndic.onRelease = volIndic.onReleaseOutside=function () {
delete ref.volumeSlideHandler.onEnterFrame;
};
pauseB.onRelease = function() {
if (!ref.sound.stopped) {
ref.sound.stop();
ref.indicateStatus(0);
ref.sound.paused = true;
ref.sound.stopped = false;
ref.sound.pausedPosition = ref.sound.position;
ref.stopProgressIndicator();
}
};
stopB.onRelease = function() {
ref.sound.stop();
ref.indicateStatus(-1);
ref.sound.stopped = true;
ref.sound.paused = false;
ref.sound.pausedPosition = 0;
ref.resetProgressIndicator();
};
playB.onRelease = function() {
if (ref.sound.stopped) {
ref.indicateProgress();
ref.indicateStatus(1);
ref.sound.start(0, 1);
ref.sound.stopped = false;
} else if (ref.sound.paused) {
ref.indicateProgress();
ref.indicateStatus(1);
ref.sound.start(ref.sound.pausedPosition/1000, 1);
ref.sound.paused = false;
}
};
nextB.onRelease = function() {
ref.resetProgressIndicator();
ref.next();
};
prevB.onRelease = function() {
ref.resetProgressIndicator();
ref.previous();
};
};
mp3Player.prototype.enableDrag = function() {
var ref = this;
this.player.progressIndicator.onPress = function() {
ref.sound.stop();
ref.stopProgressIndicator();
ref.indicateStatus(0);
ref.sound.paused = true;
ref.sound.stopped = false;
total = ref.songs[ref.songs.index].duration;
this.onEnterFrame = function() {
conv = {x:_root._xmouse};
globalToLocal(conv);
this._x = conv.x;
if (conv.x<ref.player.loadBar._x) {
this._x = ref.player.loadBar._x;
}
if (conv.x>ref.player.loadBar._x+ref.player.loadWidth ) {
this._x = ref.player.loadBar._x+ref.player.loadWidth;
}
var percent = ((this._x-ref.player.loadBar._x)/ref.player.loadWidth)*100;
this.newPosition = (percent*total)/100;
};
};
this.player.progressIndicator.onRelease = this.player.progressIndicator.onReleaseOutside=fun ction () {
if (this.newPosition>=ref.songs[ref.songs.index].duration) {
this.newPosition = ref.songs[ref.songs.index].duration-1;
}
delete this.onEnterFrame;
ref.sound.start(ref.player.progressIndicator.newPo sition/1000, 1);
ref.sound.paused = false;
ref.sound.stopped = false;
ref.indicateStatus(1);
ref.indicateProgress();
};
};
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 12:14.