Airpods 按一下可以暂停/继续播放,按两下可以播放下一首,按三下可以播放上一首,这个功能可用于发送摩尔斯。
实现也很简单,甚至可以做成在线网页版,只需播放一个空白音频,然后通过 Media Session API 即可获得事件回调。昨晚花两小时做了个简单的演示:
https://etherdream.github.io/headphone-morse-transmitter/
https://github.com/EtherDream/headphone-morse-transmitter
(浏览器需要用户行为才能播放音频,点击页面任意位置即可开始。目前火狐浏览器还存在些问题,空白音频不能用功能键控制~)
连上耳机后,点击发送 “.”,双击发送 “-”,三击删除前一个字符。
由于真正的摩尔斯码是短按和长按,而这里是单击和双击,因此操作上和还是有一定区别的,尤其是按得太快时,单击会被识别成双击甚至三击,所以间隔不能太短,目前默认设置成 1.5s 。即使只有一个码,例如字母 E 只有一个 ".",按下后也要耐心等一秒多。
如果没有耳机的话,用键盘上的暂停播放、下一首、上一首这 3 个功能键也能模拟。
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.