Comunidad de diseño web y desarrollo en internet online

Reproductor MP3: reproducción non-stop!

Citar            
MensajeEscrito el 25 Nov 2009 10:28 am
Hola todos otra vez!!

Pues les cuento...finalmente logré hacer el reproductor de MP3, carga bien y todo, peeeeero ahora me pasa lo siguiente:
escucho una canción y cuando ésta termina va a la siguiente, pero no suena hasta que le pongo PLAY. ¿cómo hacer para que las reproduzca sin tener que hacer esto? Cuando las voy adelantando no hay problema, pero si espero a que termine el tema y vaya al siguiente pasa lo que les cuento.

ah!!! y otra cosita...los temas me aparecen en RANDOM y no quiero que esto pase. Encontré en las acciones dónde lo pone, pero claro, no tengo idea cómo hacer para quitarlo y que funcione!!! jejeje :P

Bueno, gracias mil de antemano y acá va el código a ver si me re-echan una manita :)

hasta pronto!!

c.

Código ActionScript :

stop();
playlist = new XML();
playlist.ignoreWhite = true;
playlist.onLoad = function(success) {
   if (success) {
      _global.songname = [];
      _global.songband = [];
      _global.songfile = [];
      for (var i = 0; i<playlist.firstChild.childNodes.length; i++) {
         _global.songname[i] = playlist.firstChild.childNodes[i].attributes.name;
         _global.songfile[i] = playlist.firstChild.childNodes[i].attributes.file;
         trace(songname[i]+"  "+songfile[i]);
      }
   }
   _root.createEmptyMovieClip("sound_mc", 1);
   _root.sound_mc.sound_obj = new Sound();
   _root.sound_mc.songStarter(songfile[song_nr], songname[song_nr]);
};
MovieClip.prototype.songStarter = function(file, name) {
   this.sound_obj.loadSound(file, true);
   this.onEnterFrame = function() {
      if (this.sound_obj.position>0) {
         delete this.onEnterFrame;
         this._parent.display_txt.text = name;
      } else {
         this._parent.display_txt.text = "loading...";
      }
   };
   this.sound_obj.onSoundComplete = function() {
      (song_nr == songfiles.length-1) ? _global.song_nr=0 : _global.song_nr++;
      _root.sound_mc.songStarter(songfiles[song_nr], songname[song_nr]);
   };
};
btn_play.onRelease = function() {
   this._parent.sound_mc.songStarter(songfile[song_nr], songname[song_nr]);
};
btn_stop.onRelease = function() {
   this._parent.sound_mc.sound_obj.stop();
};
btn_fw.onRelease = function() {
   (song_nr == songfile.length-1) ? _global.song_nr=0 : _global.song_nr++;
   _root.sound_mc.songStarter(songfile[song_nr], songname[song_nr]);
};
btn_rev.onRelease = function() {
   (song_nr == 0) ? _global.song_nr=songfile.length-1 : _global.song_nr--;
   _root.sound_mc.songStarter(songfile[song_nr], songname[song_nr]);
};
playlist.load("playlist.xml");

Por carobcn

6 de clabLevel



 

firefox
Citar            
MensajeEscrito el 25 Nov 2009 11:53 am
Hace cuanto no veía manejar código por prototypes... La verdad el código no esta muy bien, hace cosas un "poco" raras. En definitiva, el tema es que haces dos veces un chequeo de si ha terminado la canción, el correcto con el listener onSoundComplete, y el segundo usando un onEnterFrame.

Copia donde has puesto tu onEnterFrame a validar la posición del audio, el código del play

Código ActionScript :

this._parent.sound_mc.songStarter(songfile[song_nr], songname[song_nr]);


Saludos, Hernán . -

Por Hernán

BOFH

6148 de clabLevel

19 tutoriales
23 articulos

Genero:Masculino   REC Desarrollador de GAIA

Marketing & IT

firefox
Citar            
MensajeEscrito el 25 Nov 2009 01:12 pm
hola hernán!!
mira, yo de códigos no sé NADA, sólo copié y pegué, jejeje :P por lo que me dices que haga no me resulta!!! ni sé bien si lo hice tal y como debería...
gracias por el empujón!!

c.

Por carobcn

6 de clabLevel



 

firefox
Citar            
MensajeEscrito el 25 Nov 2009 01:59 pm
Pruebalo así:

Código ActionScript :

stop(); 
playlist = new XML(); 
playlist.ignoreWhite = true; 
playlist.onLoad = function(success) { 
   if (success) { 
      _global.songname = []; 
      _global.songband = []; 
      _global.songfile = []; 
      for (var i = 0; i<playlist.firstChild.childNodes.length; i++) { 
         _global.songname[i] = playlist.firstChild.childNodes[i].attributes.name; 
         _global.songfile[i] = playlist.firstChild.childNodes[i].attributes.file; 
         trace(songname[i]+"  "+songfile[i]); 
      } 
   } 
   _root.createEmptyMovieClip("sound_mc", 1); 
   _root.sound_mc.sound_obj = new Sound(); 
   _root.sound_mc.songStarter(songfile[song_nr], songname[song_nr]); 
}; 
MovieClip.prototype.songStarter = function(file, name) { 
   this.sound_obj.loadSound(file, true); 
   this.onEnterFrame = function() { 
      if (this.sound_obj.position>0) { 
         delete this.onEnterFrame; 
         this._parent.display_txt.text = name; 
        _root.sound_mc.songStarter(songfile[song_nr], songname[song_nr]); 
      } else { 
         this._parent.display_txt.text = "loading..."; 
      } 
   }; 
   this.sound_obj.onSoundComplete = function() { 
      (song_nr == songfiles.length-1) ? _global.song_nr=0 : _global.song_nr++; 
      _root.sound_mc.songStarter(songfiles[song_nr], songname[song_nr]); 
   }; 
}; 
btn_play.onRelease = function() { 
   this._parent.sound_mc.songStarter(songfile[song_nr], songname[song_nr]); 
}; 
btn_stop.onRelease = function() { 
   this._parent.sound_mc.sound_obj.stop(); 
}; 
btn_fw.onRelease = function() { 
   (song_nr == songfile.length-1) ? _global.song_nr=0 : _global.song_nr++; 
   _root.sound_mc.songStarter(songfile[song_nr], songname[song_nr]); 
}; 
btn_rev.onRelease = function() { 
   (song_nr == 0) ? _global.song_nr=songfile.length-1 : _global.song_nr--; 
   _root.sound_mc.songStarter(songfile[song_nr], songname[song_nr]); 
}; 
playlist.load("playlist.xml");

Por Hernán

BOFH

6148 de clabLevel

19 tutoriales
23 articulos

Genero:Masculino   REC Desarrollador de GAIA

Marketing & IT

firefox
Citar            
MensajeEscrito el 25 Nov 2009 02:17 pm
no me funcionaaa!!!! :(
exporta la movie y no pasa nada, no se reproduce ni nada, buuuu.

gracias igualmente por tu tiempo y paciencia!!!

c.

Por carobcn

6 de clabLevel



 

firefox
Citar            
MensajeEscrito el 25 Nov 2009 02:23 pm

Por Hernán

BOFH

6148 de clabLevel

19 tutoriales
23 articulos

Genero:Masculino   REC Desarrollador de GAIA

Marketing & IT

firefox

 

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