您的位置:首页 > 其它

录音音量控制,解决mixerGetLineControls的MIXERR_INVALCONTROL(1025)错误。

2009-03-10 09:37 447 查看
之所以出现这个错误,是由于ac97和hda类型的声卡操作操作接口不同造成的。

解决这个问题要做mixerGetLineInfo这一步骤区别对待ac97和hda声卡。

MIXERLINE mxl;
...
//如果是ac97类型的声卡
mxl.dwComponentType = MIXERLINE_COMPONENTTYPE_SRC_MICROPHONE
//如果是hda类型的声卡
mxl.dwComponentType = MIXERLINE_COMPONENTTYPE_DST_WAVEIN
...
mixerGetLineInfo(...


如果你的声卡是hda类型的,查看你系统的录音控制属性是,可以看到麦克风一项是灰色的,根本不能控制,所以如果你用dwComponentType = MIXERLINE_COMPONENTTYPE_SRC_MICROPHONE这个参数去操作声卡,在调用mixerGetLineControls时就好出错!

我只知道这样能解决问题,对这个问题理解还不透彻,以上代码仅供参考,欢迎留言赐教.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: