SuperpoweredRecorder:不创建临时文件或录制任何音频
SuperpoweredRecorder: not creating temp file or recording any audio
我认为我将SuperpoweredAndroidAudioIO
传递给SuperpoweredRecorder
的process()
方法不正确。
我的进程回调如下所示:
bool SuperpoweredExample::process(short int *audioIO, unsigned int numberOfSamples) {
if (recording) {
recordProcess(audioIO, numberOfSamples);
}
return true;
recordProcess:
void SuperpoweredExample::recordProcess(short *input, unsigned int numberOfSamples) {
SuperpoweredShortIntToFloat(input, stereoBuffer, numberOfSamples);
__android_log_print(ANDROID_LOG_VERBOSE, "SuperpoweredExample", "%i",
recorder->process(stereoBuffer, NULL, numberOfSamples));
}
SuperpoweredRecorder
的process()
总是返回0,所以它还没有开始录制。我想这是因为我没有正确地传递输入。
进一步相关代码:
stereoBuffer = (float *) memalign(16, (buffersize + 16) * sizeof(float) * 2);
audioSystem = new SuperpoweredAndroidAudioIO(samplerate, buffersize, true, true,
audioProcessing, this, -1, SL_ANDROID_STREAM_MEDIA,
buffersize * 2);
我onRecord ():
void SuperpoweredExample::onRecord(bool record) {
if (!record) {
recording = false;
recorder->stop();
} else {
recording = true;
__android_log_print(ANDROID_LOG_VERBOSE, "SuperpoweredExample", "%s", tempPath.c_str());
recorder->start((tempPath + "_TEMP").c_str());
};
}
我如何得到SuperpoweredRecorder
创建文件?
我已经尝试创建另一个缓冲区只是为了记录,但我有同样的问题。我应该使用createWav()
吗?
我添加了一个单独的缓冲区用于记录,这似乎工作
相关文章:
- 如果C++类在类方法中具有动态分配,但没有构造函数/析构函数或任何非静态成员,那么它仍然是POD类型吗
- 用c++阅读音频
- 奇怪的(对我来说)返回声明 - 在谷歌上找不到任何关于它的信息
- 如何在不产生任何垃圾的情况下获得C中的像素
- 为什么我不能在 C++ 中的特定函数重载中调用同一函数的任何其他重载?
- 为什么这个音频包络不能通过开关的情况?
- C++映射有2个键,这样任何1个键都可以用来获取值
- Visual Studio(或任何其他工具)能否将地址解释为调用堆栈(boost上下文)的开头
- RtlCaptureStackBackTrace未捕获任何帧
- FFMpeg库:如何在音频文件中精确查找
- 链表c++插入,所有情况都已检查,但没有任何工作
- C++模板函数,用于比较任何无符号整数和有符号整数
- Arduino millis() - millis() 怎么能等于 0 以外的任何东西?
- 尝试摆脱任何堆内存分配
- 是否有任何C++功能可以对地图进行排序?
- 打印时有二叉树问题.用户输入不打印任何内容
- 如何以编程方式将音频从任何录制设备路由到任何播放设备
- 如何使用QT或Linux上的任何其他CPP框架播放WMA音频文件
- 从 flv 视频(或任何其他视频)中提取音频的算法.怎么做
- SuperpoweredRecorder:不创建临时文件或录制任何音频