在我的程序中启动时,用代码自动设置电脑的录音设备为麦克风。
    我用代码读取到电脑中的录音设备列表,得到顺序号和名字,由于每台电脑的列表排列顺序不一样,我是根据设备名字来判断是否麦克风的。
    但是从每台电脑读取的声卡的麦克风名字不一样,有的是中文"麦克风",有的是"Mic",有的是"MicPhone"。如果有新的名字,那就不能成功设置了。
    请教,应该根据什么来叛断此设备就是麦克风呢?
    谢谢!!

解决方案 »

  1.   

    麦克风,MIC,这样的名称只相当于CAPTION,你需要找真正的NAME。
      

  2.   

    你用waveinxx里面的查找声音设备,然后用mixerxx查找混音器编号,针对声卡来说,其设备编号为0,对应的混音器我的有6中,其中1就是麦克风的。其name为Mic
      

  3.   

    谢谢楼上三位的关注,
        我在网上查了一些资料,用 mixerGetLineInfo函数 和IXERLINE_COMPONENTTYPE_SRC_MICROPHONE参数得到了麦克风的编号.但是在设置一个多声道集成声卡时,却没有成功.正在慢慢摸索.
        先把这个贴子结了,解决不了,再来请教!