3

我正在AudioRecord使用 OpenSL 将音频捕获循环从 Java(使用类)移植到本机库。

原因是在分析之后,捕获循环在我们的测试手机中消耗的 CPU 在 OpenSL 中减少了大约 2%。这是一个意义重大的收获!

Java AudioRecord 类的构造函数接收一个source可以配置为多个值的参数(MIC, CAMCORDER, VOICE_DOWNLINK等)

到目前为止,我还没有找到 OpenSL 中源参数的等价物(如果存在)。

有人知道是否有办法为 AudioRecorder 对象指定此 Source 参数吗?

干杯!

4

1 回答 1

4

查看 和 中定义的函数和SLES/OpenSLES_Android.h常量SLES/OpenSLES_AndroidConfiguration.h。当您从 OpenSLES 获取录制对象时,使用GetInterface()获取SL_IID_ANDROIDCONFIGURATION. 从那里您可以使用返回的指针上的SetConfiguration()键调用。SL_ANDROID_KEY_RECORDING_PRESETSLAndroidConfigurationItf

于 2012-09-05T22:59:49.497 回答