Actionscript 3 AS3.0不延迟播放声音
我有几节课 我的文档类(Main.as)实例化了类player和Soundsloader。 在玩家类中,当玩家在游戏中拾取一个项目时,我想播放一个简短的声音。我使用以下代码执行此操作:Actionscript 3 AS3.0不延迟播放声音,actionscript-3,audio,Actionscript 3,Audio,我有几节课 我的文档类(Main.as)实例化了类player和Soundsloader。 在玩家类中,当玩家在游戏中拾取一个项目时,我想播放一个简短的声音。我使用以下代码执行此操作:MovieClip(this.main_object.sound_loader.playcopper() 在我的文档类中,我还实例化了SoundsLoader,它基本上应该加载所有的声音。 (下面我的示例代码中只有一个) 但是,当我使用这些方法时,我的swf文件会冻结片刻,播放声音,然后继续。那么最好的方法是什么呢
MovieClip(this.main_object.sound_loader.playcopper()代码>
在我的文档类中,我还实例化了SoundsLoader,它基本上应该加载所有的声音。
(下面我的示例代码中只有一个)
但是,当我使用这些方法时,我的swf文件会冻结片刻,播放声音,然后继续。那么最好的方法是什么呢?(我使用的是.wav声音)如果这只发生在您第一次播放声音时,可能是由于解压缩问题。我放弃下载延迟,因为您告诉我您已经在预加载程序中加载了所有声音
就像我说的,如果这种只在第一次发生,一种解决方法是在预加载时播放所有声音,但要静音
例如:
public function SoundsLoader() {
var songController:SoundChannel = pick_up_item.play();
var volControl:SoundTransform = songController.soundTransform;
volControl.volume = 0;
songController.soundTransform = volControl;
}
或
使用mp3时,声音前后都有延迟。我一直想解决这个问题。即使使用as3wavsound类,在第一次播放声音时也会有延迟。将其静音播放是一种丑陋的解决方案。我希望有人知道更好的解决办法。否则我会把你的答案标为最佳答案。是的,这是一个丑陋的黑客。但是如果可行的话试试看,这样你就可以缩小问题的范围。是的,我编辑了你的帖子,以防有人在寻找正确的答案。
public function SoundsLoader() {
var songController:SoundChannel = pick_up_item.play();
var volControl:SoundTransform = songController.soundTransform;
volControl.volume = 0;
songController.soundTransform = volControl;
}
public function SoundsLoader() {
var songController:SoundChannel = pick_up_item.play();
songController.stop;
}