超声波通讯:使用声音传输数据

2020-02-15 11:08:11
导读每当您想与某人进行电子聊天时,都必须以某种方式建立连接。例如,这可以通过Internet,局域网或移动连接。但是,还有其他通信方式,其中一

每当您想与某人进行电子聊天时,都必须以某种方式建立连接。例如,这可以通过Internet,局域网或移动连接。

但是,还有其他通信方式,其中一种是通过声音。尽管这不是一个全新的概念,但实际上并没有很多计算机应用程序使用它。

Quietnet是一个用Python编码的聊天程序,使用接近超声波的频率运行。超声波本身是频率大于20 kHz的声音,因此人类无法听到。该应用程序本身可在〜19 kHz频率下工作。

就使用而言,您所需要做的就是在计算机上运行两个脚本send.py和listen.py。“发送”用于按频率发送聊天消息,而“侦听”将显示在此过程中收到的所有消息。

您可以将其用于测试以查看其是否有效。如果有多个聊天参与者,则每个参与者都需要运行两个程序-假设他们都想接收和发送。

在Quietnet可以运行之前,必须在操作系统上安装Python以及pyaudio和numpy(Numerical Python)。

一旦这一切都解决了,请运行python send.py和python listen.py命令开始使用。无论您在send.py窗口中键入什么内容,该过程中也将出现在listen.py窗口中。

发送时无需使用任何需要启用的常规技术,例如蓝牙或WiFi。

不过,能否奏效取决于许多因素,包括扬声器和麦克风的质量。作者建议调高音量以提高传输效率,但仅此而已。

请注意,虽然您可能听不到声音,但动物或年轻人可能会听见。

我无法在安装了Python 3.3的Windows 7计算机上运行该脚本。

另一个应用程序是Web音频实现Sonicnet.js,这是一个JavaScript库,可以作为声音发送和接收数据。

作者解释了实现背后的概念:

基本上,您可以指定要使用的频率范围以及可以传输的字符字母。频谱分为对应于指定字母和起始/结束代码的范围,每个字符/代码对应于整个频率范围的一部分。

发送方将要发送的单词的每个字符转换为相应频率范围的中心,并在特定持续时间内发送该频率。接收端对信号进行连续傅立叶变换,并在指定的频率范围内寻找峰值。在找到一个持续时间很长的峰值后,它将完成从频率到字符的转换。

使用声音传输数据的想法并不新鲜,但是新的应用程序可能会将这项技术带给更多的听众。

免责声明:本文由用户上传,如有侵权请联系删除!

猜你喜欢

最新文章