Consejo rápido Reproduce archivos WAV externos en AS3

De forma predeterminada, Flash puede reproducir archivos WAV cuando están ubicados en la Biblioteca, pero no cuando se cargan archivos externos. Lee este Consejo rápido para aprender a jugar..


Paso 1: Breve descripción

Usaremos métodos comunes para solicitar y cargar el archivo WAV deseado, y usaremos una clase fantástica de terceros para reproducir el archivo cargado..


Paso 2: AS3WavSound

AS3WavSound (AWS) es una excelente clase de ActionScript que puede reproducir archivos wave cargados externamente, ir a su página de Google Code y obtener el código fuente.

Ahora esta clase no fue creada exactamente para la reproducción de wav externa; Aquí hay una breve descripción del autor:

Flex SDK no admite de forma nativa la reproducción de archivos .wav (incrustados). Hasta ahora, los desarrolladores trabajaron alrededor de esto usando hacks feos (generando swf bytedata para engañar al Flash Player). Ya no. AWS en el sentido más delgado simplemente es una sola clase as3. Extiende la clase de sonido genérico en Flash y agrega soporte para reproducir datos WAVE. No necesita esta clase de sonido si está trabajando con Flash IDE o Flex Builder, ya que convierten los datos .wav directamente en objetos de sonido. Sin embargo, el compilador SDK de código abierto no es compatible con esta característica. Pero lo hace ahora!

El IDE de Flash efectivamente convierte los datos wav a objetos de sonido, pero solo para archivos incrustados (importados a la biblioteca); Si desea reproducir un archivo wav externo, utilice el siguiente método?


Paso 3: Uso

Prepare una nueva clase de ActionScript y escriba el siguiente código:

 
 paquete import flash.display.Sprite; import flash.events.MouseEvent; importar flash.net.URLLoader; importar flash.net.URLRequest; import flash.events.Event; import flash.utils.ByteArray; import flash.media.Sound; importar org.as3wavsound.WavSound; importar org.as3wavsound.WavSoundChannel; la clase final pública Main extiende Sprite la función final pública Main (): void playB.addEventListener (MouseEvent.MOUSE_UP, loadWav);  función final privada loadWav (e: MouseEvent): void var urlRequest: URLRequest = new URLRequest ('Phone.wav'); var wav: URLLoader = new URLLoader (); wav.dataFormat = 'binario'; wav.load (urlRequest); wav.addEventListener (Event.COMPLETE, playWav);  función final privada playWav (e: Evento): void var tts: WavSound = new WavSound (e.target.data como ByteArray); tts.play (); 

Este es un código básico para cargar un archivo externo en AS3, el URLLoader clase usa el Solicitud de URL para determinar la ubicación del archivo a cargar (que se carga como datos binarios) y cuando haya terminado, la clase WavSound se utiliza para reproducir el sonido.


Paso 4: Ejemplo

Echa un vistazo a la demostración para ver un ejemplo de trabajo usando el código.


Paso 5: Acerca de los archivos WAV

Tenga en cuenta que esta clase no reproducirá todos los sonidos de onda: el archivo debe tener una frecuencia de muestreo de 44100, 22050 o 11025 Hz, y datos de muestreo de 8 a 16.


Conclusión

Usa esta clase para reproducir tus archivos WAV externos.

Espero que te haya gustado este tutorial, gracias por leer.!