Android OpenAL 录音参数不正确
编译了 OpenAL 源码,ALSOFT_VERSION 是 "1.12.854"
播放声音一系列功能都正常,但是录音设备一直打不开,错误描述是无效的参数
俺的代码如下:
ALCdevice* s_device_cap_ = NULL;
ALCcontext* s_context_cap_ = NULL;
s_device_cap_ = alcCaptureOpenDevice(NULL, rate, format, buffer_size);
if (NULL != s_device_cap_) {
s_context_cap_ = alcCreateContext(s_device_cap_, NULL);
alcMakeContextCurrent(s_context_cap_);
...
} else {
LOGE("audio capture init failed: %x", alcGetError(NULL));
}
打开的参数尝试过:
8000, AL_FORMAT_MONO16, 640
8000, AL_FORMAT_MONO16, 8000
44100, AL_FORMAT_MONO16, 640
44100, AL_FORMAT_MONO16, 44100
第一个参数 NULL 也替换过
alcGetString(NULL, ALC_CAPTURE_DEFAULT_DEVICE_SPECIFIER)
alcGetString(NULL, ALC_CAPTURE_DEVICE_SPECIFIER)
都只能打印初始化失败的信息,错误码对应的枚举是 ALC_INVALID_VALUE
肿么办呀,亲们
update: 已确保 alcIsExtensionPresent(NULL, "ALC_EXT_CAPTURE")
返回 AL_TRUE
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
你好,我想请问一下,您这个问题最后怎么解决的?我目前也是遇到这样子的问题,OpenAL打开其他设备没有问题,但是无法打开录音设备,传入NULL deviceName也是失败,如果看到的话,请及时回复。