Actionscript 3 声音在flash和air as3中以延迟播放

Actionscript 3 声音在flash和air as3中以延迟播放,actionscript-3,flash,audio,air,Actionscript 3,Flash,Audio,Air,我正在as3中开发一个钢琴应用程序;然而,我得到了太多的延迟 我正在使用flash库中的短WAV文件(非流媒体),并在构造函数中加载这些文件。我也试着处理MP3文件,但我得到了同样的延迟 我知道开发人员知道这一点,并且有很多关于它的线程,但是没有人真正解决这个问题 是否有人知道减少延迟的解决方法 有一种解决方案是,始终播放无声的声音,以防止混音器进入睡眠状态。我试过了,但没有成功(或者我做错了) 这是代码,它只是一个测试延迟的简单代码 package import flash.displa

我正在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);

    }

}

你的mp3样本是否逐渐消失?这可能是原因之一。我个人从来没有注意到桌面上的延迟,是移动设备吗?给我们看一些代码。您是否使用按键或鼠标事件?是否尝试在Flash IDE之外运行应用程序?我记得遇到过这样的问题,只有在IDE中测试电影时才会出现,但在我自己运行swf时情况很好。感谢您的帮助,我使用的是wav文件,因为mp3文件在文件开头有第二个静默。当我在我的pc上测试应用程序时,延迟是正常的,但是当我在我的android设备上测试应用程序时,延迟要糟糕得多。我试着在循环中播放一个长时间的无声声音,以防止音频引擎进入睡眠状态,但没有任何效果。有没有人对一个实际可行的解决方案有答案?我被两个以上的项目困住了,因为:(