在Android上访问实时麦克风数据的最低级别

我刚刚编写了一些使用Audio Units的iOS代码,以硬件采样率从麦克风获取单声道浮点流.

它最终成了很多代码!首先,我必须设置一个音频会话,指定所需的48kHz采样率.然后我必须启动会话并检查实际返回的采样率.这将是实际的硬件采样率.然后我必须设置一个音频单元,实现渲染回调.

但我至少能够使用硬件采样率(因此我可以确定通过软件重新采样没有信息丢失).而且我还能够设置尽可能小的缓冲区大小,以便实现最小的延迟.

@L_502_0@上的类似过程是什么?

我怎样才能找到电线?

PS目前还没有提到它,但似乎可以在JNI级别工作.

解决方法

AudioRecord课程应该能够帮助您从Java / Kotlin方面做到所需.这将以您请求的采样率为您提供原始PCM数据(假设硬件支持它.)由您的应用程序以高效和及时的方式从AudioRecord类中读取数据,因此它不会溢出缓冲区并丢弃数据.

相关文章

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