什么是SLDataLocator_AndroidSimpleBufferQueue(Android 4.3)?

“2”代表以下内容

SLDataLocator_AndroidSimpleBufferQueue loc_bq   =
{SL_DATALOCATOR_ANDROIDSIMPLEBUFFERQUEUE,2};

从我读过的,它是缓冲区的数量.

为什么2?为什么不只是1?如果2更好,为什么不是10然后才能让它变得更好?

谢谢

解决方法

Why 2?

如果您有2个缓冲区,则可以在播放另一个缓冲区时填充新数据.另外,如果您希望能够使用Android的低延迟音频路径,那么直到最近您还需要在缓冲区队列中至少有2个缓冲区.

Why not just 1 ?

如果您只有一个缓冲区,那么使用新数据填充缓冲区变得相当棘手,因为您可能无法足够快地生成新数据.

And if 2 is better,why not 10 then to make it even better?

当你增加缓冲区的数量时,你也增加了延迟(从你将缓冲区排队到播放缓冲区的时间),假设你保持缓冲区大小相同.

相关文章

Android性能优化——之控件的优化 前面讲了图像的优化,接下...
前言 上一篇已经讲了如何实现textView中粗字体效果,里面主要...
最近项目重构,涉及到了数据库和文件下载,发现GreenDao这个...
WebView加载页面的两种方式 一、加载网络页面 加载网络页面,...
给APP全局设置字体主要分为两个方面来介绍 一、给原生界面设...
前言 最近UI大牛出了一版新的效果图,按照IOS的效果做的,页...