![声卡如何判断耳机是否插入?](https://linux22.com/image/1231282/%E5%A3%B0%E5%8D%A1%E5%A6%82%E4%BD%95%E5%88%A4%E6%96%AD%E8%80%B3%E6%9C%BA%E6%98%AF%E5%90%A6%E6%8F%92%E5%85%A5%EF%BC%9F.png)
这实际上是两个问题合二为一。
首先,声卡(便宜的)如何“检测”耳机是否插入?通过测量电阻还是通过其他技术?
其次,我能否以某种方式将不同的声音输出发送到扬声器和耳机?我猜不行,至少在便宜的耳机上不行。要实现这一点需要什么?
(我对收听 mp3 的声音保存没有任何了解,因此对某些人来说这可能是一个过于简单的问题。)
答案1
音频端口通过监测端口电阻的变化来检测是否有东西插入。当没有插入任何东西时,电阻是无穷大的,但是当插入线圈(扬声器或麦克风)时,现在有一个可测量的电阻,并且计算机会弹出并询问您插入了什么。
编辑:我一直在挖掘,而不是试图弄清楚音频适配器制造商在做什么,而是决定看看插孔制造商,看看是否有内部机械开关,以及可能建议的用途。
转向迪吉,我发现插孔提供了几种不同的机械检测方式。最常见的似乎是基于枪管内最内刀片的位置的独立内部开关电路;它们的价格只比非开关插孔贵几美分。这是一个Tyco 公司生产的双筒表面贴装我认为这看起来与主板上的东西类似。
有趣的是,在许多(大多数?)上,检测开关实际上是反向的。因此,开关在插入插头之前处于关闭状态,下面是其中一个崔。
这是 Schurter 的作品太疯狂了;这是一个“立体声”插孔,所有三个环(包括接地)都切换了。所以它应该能告诉你插头插得有多深;)每个只要 6.50 美元!
使用这些开关确实似乎是他们更可能采用的方式,而我过去所听到的可能是不正确的,或者至少不是完全正确的。
我将在周一剖析一个——我得看看那个开关是否至少在英特尔一直在使用的插孔中。:)
如果您希望耳机和扬声器上的声音相同,那么您可能需要考虑购买音频插孔 Y 型适配器(分离器):
如果您希望在每个耳机和扬声器组上获得不同的声音,那么您可能需要依赖音频适配器制造商提供的软件混音器的功能和/或您正在使用的软件。
根据您的情况,您可能还需要考虑购买辅助音频卡,这样您就可以在每个音频设备上指向不同的应用程序。
答案2
正如 pipTheGeek 所述,电阻测量的另一种选择是机械开关。
开关被按下 — 有东西插入了。
您可以通过将 Y 型适配器或尺寸适配器插入插孔来测试这一点。如果插孔表现得像有东西插入端口,则说明您有一个机械开关。
适配器不会在线路和地之间建立任何连接,因此它不应算作电阻测量的输出设备。