循环使用的音乐介绍使用XNA SoundEffect中

我有两个声音文件:

  • 声音是一种18秒介绍,旨在播放一次
  • 声音B是1分钟的循环轨道

我想打声一次,那么一旦声音完成后,立即播放声音B和不断循环的声音B键直到我告诉它停下来。 这应该是循环镇乐在RPG。

我在代码中使用刚刚SoundEffect中试着这样做,但有声音的结束和声音B的,即使我把监管码看声音的SoundEffectInstance.State在更新开始()函数之间的微小但明显的差距我一直没能启动音箱喇叭什么时候声音完成,使其无缝。

我宁愿使用SoundEffect中,因为我可以加载WMA文件,而不是停留在XACT WAV文件。

--------------解决方案-------------

一个潜在的第二个选项。 我想像你所听到的差距可能是因为第二个声音需要被自动载入到内存中,或初始化,或打开的流(不知道内部实现的)。 但是,如果是这样的话,我不知道你能不能做这样的事情:

  1. 装入两个声音效果(a和b)
  2. 开始播放音效一
  3. 立即开始播放声音效果○
  4. 一帧之后暂停声音效果○
  5. 当音效A完成后,重新启动音效一

我的假设是,由于声音效果B已经初始化,它可能会更快地启动,从而减少感知差距。 会爱,如果你有机会尝试这个听听,以及是否它的工作:-)

不幸的是,SoundEffect中API中简单通过降低灵活性支付。 这种类型的音频节目的是XACT擅长于...如果你需要一个复杂的成分,那么你可能要调查转移到XACT。

分类:音频 时间:2015-03-15 人气:0
本文关键词: XNA,音频,音乐,XACT
分享到:

相关文章

Copyright (C) 55228885.com, All Rights Reserved.

55228885 版权所有 京ICP备15002868号

processed in 0.774 (s). 10 q(s)