Comunidad de diseño web y desarrollo en internet online

Reproductor multipista

Citar            
MensajeEscrito el 04 Ago 2012 07:22 pm
Hola.
El motivo de este mensaje es que tengo muchas dudas sobre cómo hacer un reproductor multipista en flash. Sé que se puede hacer porque hay algo muy parecido a lo que quiero hacer en la página de bobby mcferrin.

[url=http://bobbymcferrin.com/just-enough-song/][/url]

Pues bien. descargué este swf y lo descompilé para poder orientarme y el caso es que se descompiló con tantos errores que no he sido capaz de utilizarlo.

Lo que quiero hacer es un reproductor que reproduzca varias pistas de sonido de forma simultánea y que permita activar o desactivar (silenciar) la o las pistas que quiera.

¿Alguien sabe cómo se puede hacer?

Muchas gracias de antemano

Por Aurumque

2 de clabLevel



 

opera
Citar            
MensajeEscrito el 06 Ago 2012 12:59 pm
Empieza haciendo uno con una pista simple, cuando lo tengas, es solo cuestión de ir agregando nuevos objetos Sound y manteniendo ordenada una estructura de datos ... pero primero tu player "single sound"

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 06 Ago 2012 05:45 pm
Hola Jorge. Gracias por responder al tema.
Ya he probado lo que me propones. El problema viene cuando intento silenciar alguna de las pistas o hacer que vuelvan a sonar todas simultaneamente. En el ejemplo que cito aparece exactamente lo que quiero hacer.

Si hago un reproductor de una sola pista y le agrego nuevos objetos como propones, solo consigo que esos objetos se reproduzcan al mismo tiempo sin posibilidad de mutearlos cuando quiera y volver a activarlos cuando quiera; vaya, lo que es un reproductor multipista.

Gracias de nuevo

Por Aurumque

2 de clabLevel



 

opera
Citar            
MensajeEscrito el 06 Ago 2012 06:18 pm
Tienes que crear cada objeto Sound en un MovieClip independiente, todos lo sonidos que estén creados en el mismo timeline comparten todas sus propiedades, con lo cual si muteas uno, muteas todos

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 07 Ago 2012 09:22 am
Hola de nuevo Jorge.
He intentado hacer lo que me has dicho y me sigue sigue pasando lo mismo. Si muteo una pista se me mutean todos los sonidos. He creado un movieclip con cada sonido y cada movieclip en una pista diferente. Dentro de cada uno de esos movieclip he colocado un boton mute con el código:

on (release) {
var "misonido = newSound()
"misonido".setVolume(100-"misonido".getVolume())
}

De verdad que parezco un zoquete. No sé qué estoy haciendo mal!!
:)

Gracias por tu ayuda
Aurumque

Por Aurumque

2 de clabLevel



 

opera
Citar            
MensajeEscrito el 07 Ago 2012 11:26 am
Uff, muy muy poquito para tamaña aplicación. Poner el nombre de la variable entre comillas. ¿Really? Tienes que crear un sonido por MovieClip (100% codigo, no necesitas timeline) y poner un puntero en un array para que la botonera sea responsiva en el mute. Desde Flash MX, Macromedia (que asi se llamaba en esa epoca) desaconseja poner código en los botones, así que pásalo a la lónea de tiempo (en realidad son un solo loop puedes setear todos los botones)

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 07 Ago 2012 03:51 pm
Lo siento pero soy incapaz de hacerlo funcionar. Además no entiendo bien lo del array. He metido los sonidos por código y estoy escribiendo todo el código en el mismo frame. Pero como ya te digo, aún soy muy novato y hay muchas cosas que se me escapan... Me echas una mano con el código? O podrías ponerme un ejemplo?
El código que me funciona hasta ahora es bien poco, pero es este:


Código ActionScript :

var sonido1:Sound = new Sound();
var sonido2:Sound = new Sound();
sonido1.attachSound("sonido1");
sonido2.attachSound("sonido2");


 
play_btn.onPress=function(){
   sonido1.start();
   sonido2.start();
   }
pause_btn.onPress=function(){}
   
stop_btn.onPress=function(){
   sonido1.stop();
   }
mute_btn.onPress=function(){
   sonido1.setVolume(100-sonido1.getVolume())
   }


Se me siguen muteando ambos sonidos, pero supongo que será por eso de array que no controlo.
Gracias, gracias y mil gracias.
Aurumque

Por Aurumque

2 de clabLevel



 

opera
Citar            
MensajeEscrito el 07 Ago 2012 03:58 pm
Te digo que crees cada sonido en un MovieClip distinto y lo pones en la misma linea de tiempo. No tienes la base para esta tarea, y se convertiría en un copy/paste. Te sugiero que hagas un player de sonido con los controles de play/pause, volume, y una barra de seek de tiempo para practicar. Una vez que logres eso es razonable que intentes un multipista. Justamente si eres novato debes proponerte metas alcanzables, no objetivos en el que necesites que algun experto te escriba el código ... a menos que tengas que hacer algo con deadline para un cliente, lo cual es absolutamente distinto.

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox

 

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