是否可以在没有口吃的情况下播放无间隙的循环WAV文件?

时间:2013-06-28 14:21:49

标签: audio wav blackberry-10 openal qnx

我需要在BlackBerry 10应用程序中使用完美的无间隙循环音频。我的循环存储为WAV文件。我用来播放它们的方法是:

  1. 使用alutCreateBufferFromFile为WAV文件创建缓冲区,返回bufferID
  2. 使用alGenSources
  3. 创建声源
  4. 使用alSourcei(source, AL_BUFFER, bufferID)
  5. 将缓冲区附加到源
  6. 使用alSourcei(source, AL_LOOPING, AL_TRUE)
  7. 将源循环属性设置为true
  8. 使用alSourcePlay(source)
  9. 播放来源

    音频播放大多数时间,但在UI过渡期间(例如当背光灯熄灭或应用程序最小化时),音频会断断续续。

    我有什么想法可以确保音频一直很流畅吗?

1 个答案:

答案 0 :(得分:3)

如何运行播放WAV文件的线程/进程?您是否有机会利用该主题参与优先级和政策?

我认为这些允许更改进程(线程,实际)优先级和策略的低级系统调用可能有所帮助:

另外,请查看相应的文档页面:

我首先将策略设置为FIFO并提高播放音频文件的进程的优先级。希望它有所帮助。