Superpowered SDK - 监控麦克风输入
Superpowered SDK - Monitor mic input
我已经从 Superpowered SDK 下载并测试了 CrossExample android 应用程序,这是我的问题:
我如何实时收听 phone 的微型 phone?我需要一些示例代码...
我的目标是对音频输入应用一些过滤器 (microphone) 并立即收听结果。
非常感谢!
CrossExample 将仅演示使用不同的效果混合两个预定义的音频剪辑(来自项目的原始文件夹)。团队仍然没有发布示例来演示您正在寻找的功能。这不是微不足道的(但相当复杂),因此我建议您深入了解一些现有示例,直到它们发布更多 code/tutorials,这样您以后就可以更轻松地解决这些问题。
其实很容易获得音频输入。您只需在 SuperpoweredAndroidAudioIO 的构造函数中启用输入。为此,将第三个参数设置为 true,如下所示:
audioSystem = new SuperpoweredAndroidAudioIO(
samplerate, buffersize, true, true, audioProcessing, this, -1, SL_ANDROID_STREAM_MEDIA, buffersize * 2);
现在您可以在示例的 process
方法中获得音频输入。这意味着
bool SuperpoweredExample::process(short int *output, unsigned int numberOfSamples)
相同的缓冲区用于输入和输出。输入被写入 short int *output
,你可以从 unsigned int numberOfSamples
中获取长度。您可能需要将 short int *output
重命名为 short int *inputoutput
以进行说明。
确保在用输出数据覆盖之前处理输入。如果您想应用任何效果,只需在 process 方法中的 input/output 缓冲区上进行即可。
还要确保您在 AndroidManifest.xml
中拥有 RECORD_AUDIO
权限:
<uses-permission android:name="android.permission.RECORD_AUDIO" />
我已经从 Superpowered SDK 下载并测试了 CrossExample android 应用程序,这是我的问题: 我如何实时收听 phone 的微型 phone?我需要一些示例代码... 我的目标是对音频输入应用一些过滤器 (microphone) 并立即收听结果。
非常感谢!
CrossExample 将仅演示使用不同的效果混合两个预定义的音频剪辑(来自项目的原始文件夹)。团队仍然没有发布示例来演示您正在寻找的功能。这不是微不足道的(但相当复杂),因此我建议您深入了解一些现有示例,直到它们发布更多 code/tutorials,这样您以后就可以更轻松地解决这些问题。
其实很容易获得音频输入。您只需在 SuperpoweredAndroidAudioIO 的构造函数中启用输入。为此,将第三个参数设置为 true,如下所示:
audioSystem = new SuperpoweredAndroidAudioIO(
samplerate, buffersize, true, true, audioProcessing, this, -1, SL_ANDROID_STREAM_MEDIA, buffersize * 2);
现在您可以在示例的 process
方法中获得音频输入。这意味着
bool SuperpoweredExample::process(short int *output, unsigned int numberOfSamples)
相同的缓冲区用于输入和输出。输入被写入 short int *output
,你可以从 unsigned int numberOfSamples
中获取长度。您可能需要将 short int *output
重命名为 short int *inputoutput
以进行说明。
确保在用输出数据覆盖之前处理输入。如果您想应用任何效果,只需在 process 方法中的 input/output 缓冲区上进行即可。
还要确保您在 AndroidManifest.xml
中拥有 RECORD_AUDIO
权限:
<uses-permission android:name="android.permission.RECORD_AUDIO" />