Comunidad de diseño web y desarrollo en internet online

Reproductor MP3 Flash sin Archivo XML o PHP

Citar            
MensajeEscrito el 16 Ago 2008 09:03 pm
Hola, estoy creando un reproductor mp3 pero por ahora solo puedo reproducir, o las canciones que le pongo previamente en flash, o las que un archivo XML llama, pero lo que quiero intentar es que Flash, detecte las canciones en una carpeta, y con solo esos archivos, flash pueda decirme el nombre de la cancion, poder tener un scroll por la cancion, y que pueda navegar entre ellas.

eso por un lado, lo otro, es que luego de leer un tutorial sobre como crear un boton de play/pause, y de otro articulo en el foro, donde el codigo para la cancion seria asi:

Código :

_root.onLoad = function(){
    misonido = new Sound();
    misonido.loadSound ("Music/Song1.mp3", false);
}

lo que quiero saber, es si en ves de cargar ese sonido, cargue el sonido que otro botón carga, por ejemplo, tengo un botón que dice "canción 1" y que al presionarlo, ese play/pause funcione con la canción que ese botón llamo, así con varios botones de diferentes canciones.

gracias

Por JK994

65 de clabLevel



Genero:Masculino  

safari
Citar            
MensajeEscrito el 16 Ago 2008 10:12 pm
Flash no tiene muchas funciones para controlar el sistema por si solo, si quieres leer los MP3 externos tienes o que utilizar un XML, o un fichero de texto o simplemente crear variables o un arreglo dentro de tu código con la referencia a los archivos. Lo que quieres hacer de que la aplicación reconozca cuantos archivos con cierta extensión hay en una carpeta determinada y que te diga sus nombres se logra con terceros, yo te recomiendo MDM Zinc.

El código que posteas no necesita el onLoad, solamente así te funcionará:

Código ActionScript :

var misonido:Sound = new Sound();
misonido.loadSound ("Music/Song1.mp3", false);


Lo tercero que preguntas debes explicarlo mejor porque no te llegué a entender.

Por elchininet

Claber

3921 de clabLevel

17 tutoriales

Genero:Masculino  

Front-end developer at Booking.com

firefox
Citar            
MensajeEscrito el 16 Ago 2008 11:20 pm
muchas gracias, si tengo el MDM Zinc pero no se bien como lograr lo que necesito, lo que pregunte de tercero es lo siguiente:
al escribir ese código, lo que los botones van a hacer, es manipular el archivo "Song1.mp3" pero si lo que yo quiero, es que manipulen varios archivos, como por ejemplo de una lista de 5 canciones, como haría, pues, si tengo 5 botones y que cada uno reproduzca una canción, que los botones play/pause puedan manipular, gracias

Por JK994

65 de clabLevel



Genero:Masculino  

safari
Citar            
MensajeEscrito el 16 Ago 2008 11:50 pm
En zinc la clase FileSystem te permite hacer lo que quieres, aquí tienes un ejemplo genérico

Código ActionScript :

//---Determinamos desde donde está corriendo la aplicación
var myPlayerPath = mdm.Application.path;

//---Guardar en un arreglo todos los mp3 que estén en la carpeta music
var myMP3s = mdm.FileSystem.getFileList(myPlayerPath + "music/", "*.mp3");

//---Cantidad de mp3 en la carpeta
trace(myMP3s.length);

//---Nombre del mp3 número 3
trace(myMP3s[2]);


Lo que preguntas se resuelve sencillo, si tienes una sola variable sound, puedes con cada botón leer el sonido respectivo dentro de ella y los botones play / pause, estarían programados para detener o reproducir el sonido guardado en esta variable:

Código ActionScript :

//---Crear la variable sonido común

var sonido:Sound = new Sound();

//---Acciones de los botones

var cantidad:Number = 3;
var pos:Number;

for(var i:Number = 1; i <= cantidad; i++){
   
   this["boton" + i].numero = i;
   
   this["boton" + i].onPress = function():Void{
      
      sonido.stop();
      pos = 0;
      sonido.loadSound("sonidos/0" + this.numero + ".mp3", true);
      
   }
   
}

//---Acciones de los botones de play y pausa

this.botPlay.onPress = function(){
   
   sonido.stop();
   sonido.start(pos / 1000, 0);
   
}

this.botPause.onPress = function(){
   
   pos = sonido.position;
   sonido.stop();
   
}

Por elchininet

Claber

3921 de clabLevel

17 tutoriales

Genero:Masculino  

Front-end developer at Booking.com

firefox
Citar            
MensajeEscrito el 17 Ago 2008 02:35 pm
hola, gracias, pero me podrías explicar mejor la estructura de el segundo código, mira, aqui te muestro como tengo estructurado todo, entendiendo Boton_Btn, como los botones de play/pause, en este tutorial sale como estan estructurados "http://www.cristalab.com/tutoriales/146/boton-play-pausa-para-sonido-en-flash"

frame:

Código :

var misonido:Sound = new Sound();
var pausa:Number = 0;
var estado:Number = 0;
Boton_btn.stop();
Boton_btn.onRelease = function (){
    if (estado == 0){
        misonido.start(pausa/1000);
        estado = 1;
        Boton_btn.gotoAndPlay("pause");
    } else {
        pausa = misonido.position;
        misonido.stop();
        estado = 0;
        Boton_btn.gotoAndPlay("play");
    }
}


y asi esta el boton de la cancion 1:

Código :

var cantidad:Number = 3;
var pos:Number;
for(var i:Number = 1; i <= cantidad; i++){ 
   this["boton" + i].numero = i;
   this["boton" + i].onPress = function():Void{
      misonido.stop();
      pos = 0;
      misonido.loadSound("Music/Disturbia" + this.numero + ".mp3", true);
   }
}


gracias.

Por JK994

65 de clabLevel



Genero:Masculino  

safari
Citar            
MensajeEscrito el 17 Ago 2008 10:45 pm
El ejemplo que te he puesto está hecho para que existan en la escena "x" botones (definido por la variable cantidad) con nombre de instancia "boton1", "boton2", "boton3", etc que cada uno al ser presionado cargará una serie de mp3s situados en una carpeta llamada "sonidos" y estos mp3 tienen como nombre "01.mp3", "02.mp3", "03.mp3" y los botones de play y pause detienen o reproducen la canción que esté cargada en ese momento.

Por eso es que he utilizado un ciclo para darle la misma acción a todos los botones y no tener que hacer un código para cada uno cuando la función de todos es la misma: cargar un sonido.

Por elchininet

Claber

3921 de clabLevel

17 tutoriales

Genero:Masculino  

Front-end developer at Booking.com

firefox
Citar            
MensajeEscrito el 22 Dic 2008 10:03 pm
hola que tal..

tengo una consulta, es posible adaptar este mismo codigo que facilito elchinet, con el mediadisplay ?? para que muestre el nombre de la cancion ?? o algo asi..

si es posible, se los agradeceria por la eternidad jaja..

gracias!

Por palote

0 de clabLevel



 

msie7
Citar            
MensajeEscrito el 23 Jun 2009 05:14 pm
Hola, me puden explicar como creo ese archivo XML? se puede crear con el bloc de notas, debo utilizar algún programa especial o lo puede crear en flash mismo (pero donde y cómo)?

Por einner

5 de clabLevel



 

msie
Citar            
MensajeEscrito el 23 Jun 2009 08:52 pm
Este post aunque tiene ese título no trata de XML. Un XML lo puedes crear donde más gustes, puedes utilizar cualquier editor de texto, pero no flash. Te recomiendo un buen editor FlashDevelop, aunque puedes utilizar Dreamweaver o como bien dices el Bloc de Notas.

Por elchininet

Claber

3921 de clabLevel

17 tutoriales

Genero:Masculino  

Front-end developer at Booking.com

firefox

 

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