En este breve tutorial, le presentaré ASAudio y la biblioteca AS3 que reduce enormemente la cantidad de código necesario para crear y manipular objetos de sonido en sus proyectos ActionScript..
ASAudio es una biblioteca de ActionScript 3 que reduce considerablemente la cantidad de código necesario para crear y manipular (cambios de volumen, paneo) de archivos de audio dentro de sus proyectos de ActionScript. Tradicionalmente, necesitarías hacer lo siguiente para cargar, reproducir y cambiar el volumen de un sonido dentro de ActionScript:
var urlRequest: URLRequest = new URLRequest ("path / to / track.mp3"); var sound: Sound = new Sound (urlRequest); var soundChannel: SoundChannel = sound.play (); var soundTrans: SoundTransform = soundChannel.soundTransform; soundTrans.volume = .5; soundChannel.soundTransform = soundTrans;
Con ASAudio todo lo que necesitas hacer es lo siguiente
var track: Track = new Track ("path / to / track.mp3"); track.start (); track.volume = .5;
Dirígete a la página de Google Code del proyecto y descarga la última versión de ASAudio.
Una vez que lo haya descargado, extráigalo y copie la carpeta "com" que está dentro de la carpeta "src" en la carpeta donde creará su proyecto ActionScript..
Inicie un nuevo proyecto de ActionScript y guárdelo en la carpeta de su proyecto como "asAudio.fla". Debajo del panel "PROPIEDADES", establece el color del escenario en blanco y dale un ancho y una altura de 500x150px.
Ahora cree un nuevo archivo ActionScript y guárdelo como "Main.as". Establece esto como tu clase de documento.
Agregue lo siguiente a "Main.as" que creó en el paso anterior.
paquete import flash.display.Sprite; import com.neriksworkshop.lib.ASaudio. *; import flash.media.Sound; import flash.events.MouseEvent; import flash.events.Event; La clase pública Main extiende Sprite public function Main () trace ("Working");
Aquí importamos las clases que necesitaremos a lo largo de este tutorial y configuramos nuestros Principal()
constructor.
los Pista
Es la clase fundamental de ASAudio. Todo lo que haces con la biblioteca depende de la Pista
. En este paso crearemos un nuevo Pista
, y jugarlo. Ingrese el siguiente código arriba del Principal()
dentro de "Main.as".
var track: Track = new Track ("BoozeandBlues.mp3");
Y lo siguiente dentro del Principal()
constructor.
Función pública Main () track.start ();
Para crear un Pista
Pasas en un camino hacia el mp3. Entonces llamamos al comienzo()
método de la Pista
dentro Principal()
.
Si pruebas ahora debes escuchar el mp3.
En este paso configuraremos la interfaz para el proyecto para que podamos controlar nuestros Pista
es.
Desde la ventana de componentes, arrastre 4 botones y un control deslizante al escenario. Puede acceder a la ventana Componentes seleccionando Ventana> Componentes o presionando CTRL + F7.
Dar a los botones las siguientes propiedades, una por una.
Aquí hay una captura de pantalla de la configuración del primer botón..
Dale al deslizador las siguientes propiedades.
Aquí establecemos algunos valores iniciales para el control deslizante. No los repasaré, ya que puedes consultar mi Consejo rápido que cubre la funcionalidad de los controles deslizantes..
En este paso codificaremos la funcionalidad de inicio, parada y volumen para la pista que creamos en el paso anterior. Agregue lo siguiente a "Main.as".
función pública Main () addListeners (); función privada addListeners (): void trackSlider.enabled = false; playTrackBtn.addEventListener (MouseEvent.CLICK, playTrack); stopTrackBtn.addEventListener (MouseEvent.CLICK, stopTrack); trackSlider.addEventListener (Event.CHANGE, adjustTrackVolume);
Aquí llamamos al addListeners ()
funcionar dentro de nuestro Principal()
constructor. Dentro addListeners
configuramos el deshabilitar el trackSlider
y agregue escuchas a 3 de nuestros botones.
playTrack ()
los playTrack ()
La función le dirá a la pista para comenzar a reproducir. Agregue lo siguiente debajo de addListeners ()
Función que creaste en el paso anterior..
función privada playTrack (e: MouseEvent): void trackSlider.enabled = true; track.start (); track.volume = 1.0;
Aquí habilitamos el trackSlider
toca el Pista
utilizando la comienzo()
Método y establecer el volumen de la pista utilizando la propiedad de volumen.
stopTrack ()
los stopTrack ()
Se utilizará la función para detener el Pista
. Agregue lo siguiente debajo de playTrack ()
Función que has añadido en el paso anterior..
función privada stopTrack (e: MouseEvent): void track.stop ();
Aquí simplemente llamamos al detener()
método en el Pista
.
adjustTrackVolume ()
los adjustTrackVolume ()
Esta función se utilizará para ajustar el volumen del Pista
. Agregue lo siguiente debajo de stopTrack ()
Función que creaste en el paso anterior..
función privada adjustTrackVolume (e: Event): void track.volume = e.target.value;
Aquí configuramos el volumen de la pista igual a los controles deslizantes valor
propiedad. Debido a que establecemos el máximo en 1 y el mínimo en 0.1, siempre será un número entre 0.1 y 1.0 incrementado por décimos es decir, 0.1, 0.4, y así sucesivamente.
Si prueba la película ahora, debería poder reproducir, detener y ajustar el volumen de la película. Pista
.
Es posible que se haya estado preguntando para qué era el botón "Play Group"? Bueno, junto con ofrecer lo básico básico. Pista
ASAudio tiene una noción de "Grupos" que le permite apilar sonidos y reproducirlos todos al mismo tiempo. Agregue lo siguiente dentro de addListeners ()
Función que creaste en el paso anterior..
función privada addListeners (): void trackSlider.enabled = false; playTrackBtn.addEventListener (MouseEvent.CLICK, playTrack); stopTrackBtn.addEventListener (MouseEvent.CLICK, stopTrack); trackSlider.addEventListener (Event.CHANGE, adjustTrackVolume); playGroupBtn.addEventListener (MouseEvent.CLICK, playGroup);
Aquí agregamos un Oyente a nuestro jugarGrupoBtn
que llamará el guardería()
función. Codificaremos esto al lado.
guardería()
Agregue lo siguiente debajo de adjustTrackVolume ()
La función que creaste en el paso anterior..
función privada playGroup (e: Evento): void var group: Group = new Group ([new Track ("piano.mp3"), new Track ("drumbeat.mp3")]); group.start ();
Aquí creamos un nuevo Grupo
Al pasar en una matriz de pistas. Entonces llamamos al comienzo()
método que le dice al Grupo
para empezar a jugar.
Si realiza la prueba ahora, debería escuchar la reproducción de "piano.mp3" y "drumbeat.mp3" simultáneamente..
Junto con ofrecer el Grupo
, ASAudio tiene una noción de PlayList
. los PlayList
es como una lista de reproducción en un reproductor de MP3. Usted "pone en cola" las canciones y cuando una termina, continúa con la siguiente. Agregue lo siguiente dentro de addListeners
función.
función privada playPlayList (e: Event): void var playList: Playlist = new Playlist ([nueva pista ("piano.mp3"), nueva pista ("drumbeat.mp3")]); playList.loop = falso; playList.start ();
Como el Grupo
creamos un nuevo PlayList
Al pasar en un Array of Tracks. Establecemos el PlayList
para no hacer un bucle y llamar al comienzo()
método.
Ahora puedes probar y ver el PlayList
en acción.
Ha aprendido sobre ASAudio y ha visto cómo puede reducir en gran medida la cantidad de código necesario para crear audio dentro de sus proyectos de ActionScript. Esta biblioteca tiene más que ofrecer, incluidos los métodos de atenuación, pausa y silencio ... Le sugiero que eche un vistazo a la documentación para ver todo lo que está disponible. Espero que hayan encontrado esto útil y gracias por leer!