|
|
1
12
在Windows Vista及更高版本中,您可以使用设备到达和删除通知,并检索Endpoint FormFactor以确定音频解决方案的制造商是否将特定端点视为“耳机”。 在Vista之前,没有办法确定这些信息。 |
|
|
2
8
许多音频编解码器提供“杰克检测”,这可能是谷歌需要的术语。 在vista下,您可以使用immDeviceEnumerator::GetDefaultAudioEndpoint()和immDevice::GetState()检查“端点”的状态。还有 'IKsJackDescription Interface' . 在XP下你可以尝试 'waveInGetNumDevs' -在插入耳机之前,驾驶员可能会报告0。查看中的注释 this discussion 更多信息。 |
|
|
3
2
我认为你不能提供一个通用的解决方案。 我还指出了nray的解决方案。大多数Realtek声卡,特别是Intel主板上的Realtek都具有此功能。但在这种情况下,硬件不是“标准”的。换句话说,在这些声卡中,应该有特殊的机制来检测输出插座节点上的电阻变化,并“触发事件”。 如果你有这样的声卡+你只需要一个工作,但不是完美的解决方案,只需修改调用配置程序的例程。(静音/取消静音程序)。然后用新的实用程序替换配置程序(您可以使用ProcessExplorer找到它)。 注意:我不能百分之百地确定我们是否能清楚地识别插件——即插即用。 |
|
|
4
1
可能-Realtek有一个弹出的系统托盘实用程序
|
|
|
5
1
除非你的声卡提供支持,这是值得怀疑的。 可以想象,有些声卡中有一个微型开关,可以检测耳机是什么时候插上的,或者他们可以测量信号的阻抗,以知道电路何时闭合。我没有在任何廉价的声卡上看到过。 现在,如果你有一个与麦克风共享的插孔(例如耳机),你可能能够检测到麦克风频道上的“砰”声,但我敢说这仍然是非常不可靠的。你不会知道它是被插入还是被移除,只是发生了变化。 就我个人而言,我只是把声音一直静音,只有在我真正想要声音的时候才打开它。 |
|
|
Vishesh Chanana · “上载草图时出错”Arduino 8 年前 |
|
|
Jeff Coe · 确定哪个应用程序正在使用音频设备 9 年前 |
|
|
Max Larionov · Arduino无人机项目 10 年前 |
|
|
Thomas · FMA指令集的硬件支持有多丰富 11 年前 |
|
|
Gaurav Saxena · 如何了解USB设备的支持功能? 11 年前 |
|
|
Joney · 计算机系统中的定时机制 11 年前 |