如何在 pc 上获取耳机线控数据?

2014-11-02 10:06:36 +08:00
 lushl9301
我在用的是小米线控耳机。突然想到可否在pc上用来control音量。

我自己是linux,无法使用线控。搜索半天也没发现有相关话题。

拿着耳机去同学mac上尝试,发现可以长按启动iTunes. 非常神奇。

想找一下headphone jack的相关library,自己写个小程序。目的是可以用耳机线控pc调节音量。

大家忙帮出出主意?
7958 次点击
所在节点    程序员
15 条回复
sennes
2014-11-02 10:13:00 +08:00
:) 突然有点好奇线控的原理。今天有空去折腾下。
lushl9301
2014-11-02 10:14:56 +08:00
@sennes 我看到有arduino 通过耳机线链接iphone的。不知道iphone如何listen到arduino的数据的。想写个类似的在linux上。
Sylv
2014-11-02 10:24:08 +08:00
应该是硬件问题。普通耳机插头是两节的,苹果耳机等新的线控耳机接口是三节的,多一节用来传输线控信号。然后现在的手机大部分和苹果都有对应的接口来读取线控信号,但是估计大部分的 PC 配的还是不能读线控信号的旧接口。所以硬件不支持你也没办法。
lsylsy2
2014-11-02 10:32:29 +08:00
@Sylv 普通3.5mm耳机插头是三节的:地线和左右声道,手机耳机一般要多一节,但那是麦克风。
至少我记得有没有线控,插头节数是一样的,信号应该是走别的方法传吧……
lushl9301
2014-11-02 10:37:42 +08:00
@Sylv
@lsylsy2
现在大都是四节,只不过是两个标准。omtp和ctia。左声道,右声道,mic,gnd。

不知道线控走哪个了。。。可能是mic?

有没有做耳机的硬件工程师来讲讲。。。
kofj
2014-11-02 10:41:29 +08:00
@lushl9301 线控是手机电路通过对MIC和GND之间电阻值的识别来实现的
lushl9301
2014-11-02 10:46:58 +08:00
@kofj
http://wenda.chinabaike.com/b/35746/2013/1103/615305.html

找到了。感谢


等过几天有空了继续研究如何获取control的数据。。
Sylv
2014-11-02 10:53:28 +08:00
@lsylsy2 我查了下,线控耳机现在有两个标准,OMTP 和 CTIA,区别在于 MIC(麦克风)和 GND(接地)的位置是相反的。而线控功能是通过 MIC 和 GND 回路进行控制的,但是具体的控制方式各家厂商都是不一样的,没有统一的标准,尽管触点位置一样,也不能保证兼容。
例如,苹果耳机用在小米上,听音乐没有问题,线控就只有中键有效,音量大小键无效,麦克风无效。

我估计还是因为标准不统一,大部分 PC 厂商的硬件还是并不支持线控,或者是只支持自己的标准。而苹果电脑只要支持苹果耳机的线控标准就好,而小米耳机能用在苹果电脑上只是因为线控方式可能有部分相同。
lushl9301
2014-11-02 11:03:07 +08:00
所以应该从驱动入手?学习如何听取control? o(^_^|||)?
pimin
2014-11-02 11:22:46 +08:00
@lushl9301
感觉像太多。。
windows下我只知道简单hook多媒体键就好了
我想不管是手机还是PC,线控输出的keycode应该是一样的,针对处理就好了吧
Tink
2014-11-02 11:57:45 +08:00
很早以前Nokia得耳机映射之后是可以作为游戏手柄来使用的,虽然很难用。
a154312237
2014-11-02 12:57:43 +08:00
关键问题是pc一般只支持3节头
lushl9301
2014-11-02 13:03:38 +08:00
@a154312237 我的电脑刚好是那个耳机加mic的插口。
zhhc
2014-11-03 10:33:08 +08:00
pc耳机孔有麦克风位?
lushl9301
2014-11-03 11:32:09 +08:00
@zhhc 有的笔记本有

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/143318

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX