Pessoal, boa tarde.
Estou com um probleminha na reprodução de audio. Segue meu código:
*import flash.events.Event;
import flash.media.Sound;
import flash.media.SoundChannel;
import flash.media.SoundTransform;
import flash.net.URLRequest;
private var audioControle:SoundTransform = new SoundTransform();
private var audioCanal:SoundChannel;
private var audioSound:Sound;
private function init():void{
**** tocaMusica('app:/Musicas/1.mp3');
}
private function tocaMusica(nomeArquivo:String):void{
audioSound = new Sound();
audioSound.load( new URLRequest( nomeArquivo ) );
** audioCanal = audioSound.play(0,0);
**
audioCanal.addEventListener(Event.SOUND_COMPLETE,
function(event:Event):void{
trace("acabou a música");
});
}*
Quando não tem nenhum tipo de auto-falante plugado na placa de som, vai dar
erro porque não tem um canal válido... então alterei a função conforme
abaixo e ficou certo; ou seja, só reproduz se tiver um canal válido com um
auto-falante plugado:
****
*private function tocaMusica(nomeArquivo:String):void{
audioSound = new Sound();
audioSound.load( new URLRequest( nomeArquivo ) );
audioCanal = audioSound.play(0,0);
**
// Verifica se o canal está ok**
if(!audioCanal){
return ;
}*
*
audioCanal.addEventListener(Event.SOUND_COMPLETE,
function(event:Event):void{
trace("acabou a música");
});
}*
Porém, se tiver com uma saída plugada e reproduzindo normalmente e
simplesmente desplugar o auto-falante e plugar de novo, não continua
reproduzindo... Já pesquisei e não encontrei qual evento é disparado se o
canal for interrompido...
Como fazer para que a reprodução continue ao reconectar o auto-falante?
Detalhe: No windows XP não faz diferença... retira e coloca continua
rodando... o problema ocorre no windows 7, provavelmente no Vista também...
Já no linux não testei... então preciso ajustar de forma que dê certo em
todos os SOs...
--
*Wemerson Guimarães*
Rio Verde - Go
--
Você recebeu esta mensagem porque está inscrito na lista "flexdev"
Para enviar uma mensagem, envie um e-mail para [email protected]
Para sair da lista, envie um email em branco para
[email protected]
Mais opções estão disponíveis em http://groups.google.com/group/flexdev