我正在开发as3的钢琴应用程序;但是,我得到了太多的延迟。
我正在使用我的Flash库中的短WAV文件(不是流式传输)并在构造函数中加载文件。我也试过使用MP3文件,但是我得到了相同的延迟。
我知道开发人员知道这一点并且有很多关于它的线程,但没有人真正解决这个问题。
有没有人知道解决方法以减少延迟?
有一种解决方案可以始终播放静音,以防止混音器进入睡眠状态。我尝试了它并没有用(或者我做错了)。
这是代码,它只是一个测试延迟的简单代码
package
import flash.display.MovieClip;
import flash.display.Sprite;
import flash.events.MouseEvent;
import flash.media.Sound;
import flash.media.SoundChannel;
public class SoundLatencyMain extends Sprite
{
public var MainSoundChannel:SoundChannel;
public var playbutton:MovieClip;
public var TheSound:Sound;
public var bgmusic:Sound;
public var bgsoundboolean:Boolean;
public function PlayBGMusic(me:MouseEvent):void
{
MainSoundChannel = bgmusic.play();
}
public function PlaySound(me:MouseEvent):void
{
MainSoundChannel = TheSound.play();
}
public function SoundLatencyMain()
{
MainSoundChannel = new SoundChannel();
playbutton = new PlaybgMusic_MC();
playbutton.x = stage.stageWidth / 2;
playbutton.y = stage.stageHeight / 2;
addChild(playbutton);
playbutton.addEventListener(MouseEvent.CLICK, PlayBGMusic);
bgmusic = new BGMusic();
TheSound = new TestSound();
stage.addEventListener(MouseEvent.MOUSE_DOWN, PlaySound);
}
}