类似支付宝声波支付、蛐蛐声波传输文件是什么原理?

目前声波通信已经在iphone和android中广泛的应用起来了,涉及到数据和文件传输,以及支付等众多领域。比如iphone中的chirp,android中的茄子快传,支付宝的声波支付,小米快传等。这些传输技术大多都是使用声波作为握手信号,然后使用wifi或其他信道传输数据。比如茄子快传可能的实现为,接收方先建立wifi热点,然后将热点名称通过声波发送出去,发送方在收到声波后解码出wifi热点名称,然后自动链接热点并传输文件,整个过程不需要人工干预。这些程序的核心技术和难点在于声波通信,下面讲解声波通信原理。

声波传输是利用声音实现文件的快速传输的一套技术解决方案:采用跨平台的技术,实现任何能够发送声波与接收声波的智能设备之间的数据传输。该技术方案需要在联网环境下使用。目前已经提供支持以下平台的应用Demo:iOS、Android、HTML5。


声波传输如何工作?

声波传输技术由两部分组成:音频协议与网络协议。音频协议将待传数据编码为一系列选定频率的音调;网络协议则将数据以键值形式存入服务器,其中键为与数据唯一对应的10个字符。


音频协议

音频协议的原理很简单,易于实现。建立一个含有32个字符([0-9,a-v])的表,并将每个字符映射到频率表。频率表是根据乐理,通过伴音的计算生成。

0 = 1760hz

1 = 1864hz

v = 10.5khz

一个完整的声波包包含20个音(即20个字符),每87.2毫秒发一个音 。前两位为信息头,采用“hj”,用以通知接收端开始接收。中间10位为有效的信息位,是有效的传输信息,即Key值经过映射后的频率信息。最后8位为RS(Reed-Solomon)校验位,通过RS校验算法,对中间10位进行计算,生成8位的校验信息。。如下图:

校验主要用来处理由于噪声干扰造成的信息接收错误。通过RS校验,可以纠正25%的错误信息。


发送端(编码器)

发送端设备只需能够发送1.7khz到10.5khz的正弦声波即可。为了将发送出的声波变得更好听,可以对声音进行一些美化处理,比如在我们的例子中,采用了椭圆形窗对声波进行了音量上的优化。


接收端(解码器)

接收端需要记录声音,并将其进行解码以及容错处理。其对算法的要求相对较高,降噪及容错处理对能否得到正确的解码信息是至关重要的。所以接收端需要一定的数字运算能力,对设备的硬件配置有一定的要求。对于算法的细节,我们会逐步的公开并开源。


网络协议

音频协议的最大局限性,在于其较低的传输效率。

为了解决大量数据的传输问题,我们提供RESTful open Api,这样发送设备可以将照片上传到云端,并获取云端返回的Key,将Key通过声波发送出去。接收端通过收到的Key从云端获取数据。


传输模型

传输机制如下图所示:

传输的内容通常为数据内容的Key(Hash值),传输实现步骤如下:

1. 在声音传递之前,将待传数据上传到云端;

2. 云端生成一个与文件唯一对应的Key(Hash值)返回给发送端;

3. 发送端用声音将Key发出;

4. 接收端接收到这个Key之后,再从云端把这个数据下载下来。

通过这样的机制,就能够实现音频传输各种文件和信息。


原文出处:声波传输技术简介

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值