为啥第一次播放 SoundEffectInstance 需要更多时间?
Posted
技术标签:
【中文标题】为啥第一次播放 SoundEffectInstance 需要更多时间?【英文标题】:Why does playing of SoundEffectInstance take more time at first time?为什么第一次播放 SoundEffectInstance 需要更多时间? 【发布时间】:2012-03-15 04:02:44 【问题描述】:我正在为每个SoundEffect
预创建SoundEffectInstance
,但是当第一次播放一些声音时,它仍然需要一些时间来加载。它是某种延迟加载吗?现在我在加载时为每个SoundEffect
写了sound.Play(0, 0, 0);
。加载需要一些时间,但SoundEffectInstance
第一次播放时无需等待。我不喜欢这种方式。那么这个问题有更优雅的解决方案吗?
【问题讨论】:
【参考方案1】:第一次播放声音时,它会被加载到内存中,这需要一些时间。
您可以尝试隐藏此行为,方法是在需要之前尝试播放曲目,然后立即暂停,以便在需要时将其保存在内存中。
此外,您可以尝试不同的音频压缩和格式,因为这也会影响加载时间。
【讨论】:
我之前试过用var tmp = sound.CreateInstance();
tmp.Volume = 1;
tmp.Play();
tmp.Stop();
玩,但实际上没有效果以上是关于为啥第一次播放 SoundEffectInstance 需要更多时间?的主要内容,如果未能解决你的问题,请参考以下文章
为啥我只能在我的 android 通知中按一次播放/暂停按钮?
为啥 Swift 的 AVPlayer 一次播放会加载 playerItem 两次?