编译了 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
你好,我想请问一下,您这个问题最后怎么解决的?我目前也是遇到这样子的问题,OpenAL打开其他设备没有问题,但是无法打开录音设备,传入NULL deviceName也是失败,如果看到的话,请及时回复。