怎么知道现在使用的是外置mic还是内置的?通过程序,应该怎么做,有代码更好

解决方案 »

  1.   

    似乎无法做到,因为不论外置还是内置的,在系统中都只是作为一个mic设备而存在,或许声卡本身有api接口可以侦测出来,但不同牌子的声卡,接口都不同,而且还基本不公开的,很麻烦
      

  2.   


    同意这个说Waveform 等通用API是无法判断一个mic的内外置类型的,如果有,应该是具体厂商提供的api
      

  3.   


    mic是外置还是内置如果不是声卡提供api侦测的话,是没法知道的,mic只是设备,操作系统感知不了其外部属性。
      

  4.   

    可能有办法,例如控制面板就可以知道当前是用的外置mic还是内置的。。
    大家再帮我想想办法,而腾讯刚语音聊天上来时就把mic设备为外置,不管以前是不是外置的
      

  5.   

    所以本子聊q时,总是需要把mic搞成内置的
      

  6.   

    没搞过。。
    不知道SetupDiGetClassDevs,SetupDiEnumDeviceInfo,SetupDiGetDeviceRegistryProperty
    能不能获取到。。
      

  7.   

    to SullenSun:
        要涉及到ddk,没有搞过,有时间试下,多谢提供思路。各位大虾,还有没其它思路,ddk太陌生了。
      

  8.   


    我不清楚控制面板为什么可以知道当前是用的外置mic还是内置的?也许这只是你自己设置的默认mic设备吧,如果你只是为了聊天时不要每次都改设备麻烦,你可以改默认设备啊
      

  9.   

    to qjipa:
    不是的。我在q前,在控制面板把mic设置为内置的,但是开始q聊时,就变外置的。必定是qq改变了我的设备。
    我还是认为mic内置外置是可以通过编程来获取的,关键是怎么获取设备或者状态