【发布时间】:2010-12-18 13:01:06
【问题描述】:
我将 mp3 嵌入到我的 Flex 项目中用作音效,但我发现每次播放它时,从调用 .play() 到您能听到声音。这很奇怪,因为我希望音效与游戏事件同步。我的 mp3 本身只有大约五分之一秒长,所以不是因为 mp3 的内容。
我正在嵌入
[Embed(source="assets/Tock.mp3")]
[Bindable]
public static var TockSound:Class;
public var tock_sound:SoundAsset;
然后玩
if (tock_sound == null) {
tock_sound = new TockSound() as SoundAsset;
}
Alert.show("tock");
tock_sound.play();
我知道会有延迟,因为声音会在警报显示后大约半秒播放。我确实考虑过这可能是构建 TockSound 的初始加载时间,但所有后续调用也存在延迟。
如何避免播放声音的延迟?
更新:事实证明,这种延迟仅在 Linux 上播放 swf 时才会出现。我认为这是 Adobe Flash 播放器中特定于 Linux 的缺陷。
【问题讨论】:
-
你能检查一下声音是否准备好了?即 mp3 的状态?
-
您是否查看过stackoverflow.com/questions/227674/… 以获得更多帮助?
标签: apache-flex actionscript-3 actionscript embed