0
我做了一個混搭地圖,翻譯api和flickr的小混搭。我從我的地圖上得到指示,同時讓mp3文件同時播放它們,但它們只能在Firefox中播放,而對於其他瀏覽器,我只能獲得帶有背景音樂的第一個聲道。無法弄清楚爲什麼。任何幫助,高度讚賞。Actionscript聲音頻道只在Firefox中播放
private var _sound:Sound;
private var _sc:SoundChannel;
private var _isPlaying:Boolean;
private var _url:String;
private var myWatcher:ChangeWatcher;
private var isPlaying:Boolean;
private function _generateSpeech():void {
var txt:String = description.text;
var url:String = "http://translate.google.com/translate_tts?tl=en&q=" + txt;
_url = url;
var req:URLRequest = new URLRequest(url);
_sound = new Sound();
_sound.addEventListener(Event.OPEN, _soundOpenHandle, false, 0, true);
_sound.addEventListener(ProgressEvent.PROGRESS, _soundProgHandle, false, 0, true);
_sound.addEventListener(Event.COMPLETE, _soundLoadedHandle, false, 0, true);
_sound.addEventListener(IOErrorEvent.IO_ERROR, _errorHandle, false, 0, true);
_sound.load(req,null);
}
private function _soundOpenHandle(e:Event):void {isPlaying = false;}
private function _soundProgHandle(e:ProgressEvent):void {isPlaying = true;}
private function _soundLoadedHandle(e:Event):void {isPlaying = true;}
private function _playbackCompleteHandle(e:Event):void {isPlaying = false;}
private function _errorHandle(e:IOErrorEvent):void {trace(e);}
private function _playSpeech():void {
_generateSpeech();
_sc = new SoundChannel();
if (!isPlaying){_sc = _sound.play(0,0,null);}
_sc.addEventListener(Event.SOUND_COMPLETE, _playbackCompleteHandle, false, 0, true);
}
public function initWatcher():void {
ChangeWatcher.watch(description, "text", watcherListener);
}
// Event listener when binding occurs.
public function watcherListener(event:Event):void {
if (!isPlaying){_playSpeech(); }
}
也許一些解釋? – 2011-04-23 14:20:50