【发布时间】:2014-03-26 12:07:29
【问题描述】:
下面的“2”代表什么:
SLDataLocator_AndroidSimpleBufferQueue loc_bq =
{SL_DATALOCATOR_ANDROIDSIMPLEBUFFERQUEUE, 2};
根据我的阅读,这是缓冲区的数量。
为什么是 2?为什么不只是 1 ?如果 2 更好,为什么不 10 让它变得更好呢?
谢谢
【问题讨论】:
-
2 是与生成重叠播放所需的最小值(谷歌“双缓冲”)。在不定期安排回调的情况下,超过 2 个可能很有用。我见过使用超过 2 个缓冲区的示例代码。例如,PortAudio 为许多原生 API 使用了超过 2 个缓冲区。
标签: android c audio android-ndk opensl