如何通过按耳机发送摩尔斯码?

2024-10-222.9万
精华项目
AI 快速预览详细 收起
该项目展示了如何通过按耳机发送摩尔斯码。利用耳机的暂停、播放和上一曲功能,可以实现摩尔斯码的发送。支持国际码(IMC)、和文码 (Wabun Code) 及多种私有功能。运行前需关闭其他播放器,确保耳机命令能够被接收。此外,还支持键盘操作和后台运行,即使浏览器最小化或锁屏也能继续发送摩尔斯码。


很多耳机可以发送 ⏮️ ⏸️ ⏯️ 命令,例如 Airpods,按一下可暂停或继续,按两下可播放下一曲,按三下可播放上一曲。

利用这个特征,GitHub上大佬@EtherDream[1]展示了如何通过按耳机发送摩尔斯码!
如何通过按耳机发送摩尔斯码?图1

GitHub仓库地址:https://github.com/EtherDream/headphone-morse-transmitter

在线演示Web地址:https://etherdream.com/headphone-morse-transmitter/

运行前需关闭其他播放器,否则无法接收耳机命令。


由于声音是从耳机里发出来的,因此很轻。

使用方式
⏸️ = 点 (.)

⏯️ = 划 (-)

⏮️ = 输出 或 退格

按下 ⏮️ 时,如果 Input 存在内容,则立即输出内容;如果 Input 为空,则相当于退格键,删除 Words 最后一个字符。

距上一次按键达到 Delay 毫秒时,Input 中的内容将会被自动输出。

本程序支持 国际码(IMC)[2]、和文码 (Wabun Code)[3] 以及部分私有特征。

特殊功能
  • <AA>: 换行 (.-.-)
  • <HH>: 清空最后行 (. x8)
  • <DO>: 切换到和文码 (-..---)
  • <SN>: 返回到国际码 (...-.)


私有功能
  • <LO>: 切换到小写/平假名(.-..---)
  • <UP>: 切换到大写/片假名(..-.--.)
  • <SP>: 空格 (....--.)
  • <X> + 假名 = 小假名 (-..- ?)

    支持 っ ゃゅょ ぁぃぅぇぉ 以及相应的片假名。


键盘操作
如果你不想使用耳机,也可使用键盘上的 ⏮️ ⏸️ ⏯️ 键,这样甚至可设置更短的延迟,例如 500 毫秒:




此外,点击媒体控制浮层中的 ⏮️ ⏸️ ⏯️ 按钮也可以实现同样的效果。

台运行
本程序可在后台运行,即使浏览器最小化,甚至锁屏也能运行。

因此你可以在手机上打开该网页,锁屏后盲发摩尔斯电码。只需按耳机,听反馈,无需看屏幕。


已知问题
火狐浏览器不稳定。

iPhone 目前不支持 Media Source Extensions,并且 AudioContext 和 MediaSession 会有冲突,因此最终方案只用单个 <audio> 播放所有声音。

参考资料
[1]@EtherDream: https://github.com/EtherDream
[2]国际码(IMC): https://morsecode.world/international/morse.html
[3]和文码 (Wabun Code): https://en.wikipedia.org/wiki/Wabun_code

转载请注明来源信息

创作许可协议

本项目采用 None(不开放任何权利,保留所有权利) 进行许可。

评论(0)
- 没有更多了 -