flash - soportados - formatos de video para html5
¿Puede el reproductor flash reproducir archivos.wav desde una url? (5)
Directamente no puedes, pero hay soluciones gracias a ByteArray; )
Mira esto :
EDITAR:
El enlace anterior es un poco viejo, creo que también deberías echar un vistazo a la fabulosa biblioteca PopForge de Andre y Joa. También hay una clase de decodificador wav allí.
Digamos que tengo un archivo wav en una url:
http://hostname.com/mysound.wav
Estoy tratando de cargar el archivo wav con la clase de sonido como:
var url:String = "http://hostname.com/test.wav";
var urlRequest:URLRequest = new URLRequest(url);
var sound:Sound = new Sound();
sound.load(urlRequest);
sound.play();
Sin embargo, esto no parece funcionar. ¿Puede el reproductor flash reproducir archivos wav, o solo son mp3s?
Flash en sí no es compatible con la reproducción de archivos .wav. Flash / Flex Builder lo compila directamente en un objeto Sound listo para ser reproducido en sus scripts, pero para el sonido .wav externo, Flash SDK no lo ayudará.
Tendrá que leer los datos .wav usted mismo y hacer juegos Flash, o: hay un par de bibliotecas de terceros que hacen esto por usted. La publicación anterior usa popforge, aquí hay un tutorial que muestra as3wavsound reproduciendo un archivo .wav externo desde una URL:
http://active.tutsplus.com/tutorials/media/quick-tip-play-external-wav-files-in-as3/
Sí tu puedes. He creado Wav / Au Flash Player, que puede reproducir stream wav, codificado en G.711 o PCM en cualquier longitud de bit y frecuencia de muestreo. Licencia bajo GPLv2, aquí: http://blog.datacompboy.ru/2009/10/15/wav-au-flash-player/
aquí una clase simple para cargar y reproducir archivos wav desde una url en flash usando la biblioteca de código abierto popforge: http://code.google.com/p/popforge/
¡aclamaciones!
public class WavURLPlayer
{
public static function PlayWavFromURL(wavurl:String):void
{
var urlLoader:URLLoader = new URLLoader();
urlLoader.dataFormat = URLLoaderDataFormat.BINARY;
urlLoader.addEventListener(Event.COMPLETE, onLoaderComplete);
urlLoader.addEventListener(IOErrorEvent.IO_ERROR, onLoaderIOError);
var urlRequest:URLRequest = new URLRequest(wavurl);
urlLoader.load(urlRequest);
}
private static function onLoaderComplete(e:Event):void
{
var urlLoader:URLLoader = e.target as URLLoader;
urlLoader.removeEventListener(Event.COMPLETE, onLoaderComplete);
urlLoader.removeEventListener(IOErrorEvent.IO_ERROR, onLoaderIOError);
var wavformat:WavFormat = WavFormat.decode(urlLoader.data);
SoundFactory.fromArray(wavformat.samples, wavformat.channels, wavformat.bits, wavformat.rate, onSoundFactoryComplete);
}
private static function onLoaderIOError(e:IOErrorEvent):void
{
var urlLoader:URLLoader = e.target as URLLoader;
urlLoader.removeEventListener(Event.COMPLETE, onLoaderComplete);
urlLoader.removeEventListener(IOErrorEvent.IO_ERROR, onLoaderIOError);
trace("error loading sound");
}
private static function onSoundFactoryComplete(sound:Sound):void
{
sound.play();
}
}
La documentación de ActionScript para la clase Sound indica que solo se admiten archivos MP3.