利用声音发送和接收数据的方法和装置制造方法

文档序号:8004653阅读:155来源:国知局
利用声音发送和接收数据的方法和装置制造方法
【专利摘要】本发明公开了一种利用声音发送数据的方法,包括:使用连续三个不同频率的声音频率脉冲作为数据包的头部;使用至少两个不同频率的声音频率脉冲作为载频传送需要发送的数据内容,并且不同频率的声音频率脉冲之间采用过渡算法使其相位连续;使用预定频率的声音频率脉冲代表数据包尾部;将得到的数据包乘以一个最小值不小于0的余弦信号,其中最小值落在数据包中的频率脉冲交接处;发送数据包。本发明还公开了相应的利用声音接收数据的方法,以及利用声音发送和接收数据的装置。采用本发明,能够取得传送效果好、有广播特性、传送距离大、传送准确率高等有益技术效果。同时相比于其他同类的产品还具有无频谱泄露,声音悦耳、婉转动听等优点,带来了更好的用户体验。
【专利说明】利用声音发送和接收数据的方法和装置

【技术领域】
[0001] 本发明的实施例总体上涉及一种发送和接收数据的方法和装置。具体地说,本发 明的实施例涉及一种利用声音发送和接收数据的方法和装置。

【背景技术】
[0002] 在现有的便携式移动通信设备中,存在一些利用声音信号传送各种文件的应用程 序。
[0003] 利用声音信号传送数据的一个好处来自于声音的广播特性,使用户能够同时传送 数据给周围的多个其他用户。利用声音信号传送数据的另一个好处是趣味性,用户在传送 数据的同时能够听见声音,获得了良好的用户体验。此外,由于可以听见传送数据的声音, 用户不必查看移动设备就可以得知数据是否开始传送以及是否传送完毕。
[0004] 但是,现有的利用声音传送数据的应用存在以下一些问题。
[0005] 首先,传送数据的声音载频频谱不连续的问题,并且存在频谱泄露,降低了数据传 送的准确率,也影响了声音载频的音调,导致不良的用户体验。
[0006] 其次,数据传送的效果随着接收双方距离的增加而明显变差,使利用声音传送数 据的方法受到了局限。


【发明内容】

[0007] 有鉴于此,本发明的目的之一在于解决现有技术中所存在的上述问题。
[0008] 根据本发明的一个方面,提出了一种利用声音发送数据的方法,包括:使用连续三 个不同频率的声音频率脉冲作为数据包的头部;使用至少两个不同频率的声音频率脉冲作 为载频传送需要发送的数据内容,并且不同频率的声音频率脉冲之间采用过渡算法使其相 位连续;使用预定频率的声音频率脉冲代表数据包尾部;将得到的数据包乘以一个最小值 不小于〇的余弦信号,其中最小值落在数据包中的频率脉冲交接处;将最终的数据包处理 结果写入音频文件并播放。
[0009] 根据本发明的另一个方面,提出了一种利用声音接收数据的方法,包括:如果依序 侦测到数据包头部三个声音频率脉冲中的任意两个频率脉冲,即表示检测到数据包头部; 检测所有的载频能量值以及数据包尾部频率脉冲的能量值,比较得到载频能量最大值对应 的载频,将其表示为当前传送的数据,从而得到传送的数据;如果代表数据包尾部的声音频 率脉冲能量最大,则停止数据解码,结束数据包的接收。
[0010] 根据本发明的另一个方面,一种利用声音发送数据的装置,包括:头部产生单元, 用于使用连续三个不同频率的声音频率脉冲作为数据包的头部;数据编码单元,用于使用 至少两个不同频率的声音频率脉冲作为载频传送需要发送的数据内容;频率脉冲平滑单 元,用于使不同的声音频率脉冲之间采用过渡算法使其相位连续;尾部产生单元,用于使用 预定的声音频率脉冲代表数据包尾部;频谱泄漏消除单元,用于将得到的数据包乘以一个 最小值不小于0的余弦信号,其中最小值落在数据包中的频率脉冲交接处;发送单元,用于 将最终的数据包处理结果写入音频文件并播放。
[0011] 根据本发明的另一个方面,提出了一种利用声音接收数据的装置,包括:头部检测 单元,用于依序侦测到数据包头部三个声音频率脉冲中的任意两个频率脉冲,即表示检测 到数据包头部;数据检测单元,用于检测所有的载频能量值以及数据包尾部频率脉冲的能 量值,比较得到载频能量最大值对应的载频,将其表示为当前传送的数据,从而得到传送的 数据;如果代表数据包尾部的声音频率脉冲能量最大,则停止数据解码,结束数据包的接 收。
[0012] 采用本发明提供的利用声音传送数据的方法和装置,具有传送效果好、有广播特 性、传送距离大、传送准确率高等有益技术效果。同时相比于其他同类的产品还具有无频谱 泄露,声音悦耳、婉转动听等优点,带来了更好的用户体验。

【专利附图】

【附图说明】
[0013] 图1示出根据本发明的利用声音发送数据的方法的流程图。
[0014] 图2示出根据本发明的利用声音接收数据的方法的流程图。
[0015] 图3示出根据本发明的利用声音发送数据的装置的结构框图。
[0016] 图4示出根据本发明的利用声音发送数据的装置的主体产生单元的结构框图。
[0017] 图5示出根据本发明的利用声音接收数据的装置的结构框图。
[0018] 图6示出根据本发明实现的声音载频的频谱图。

【具体实施方式】
[0019] 下面,将结合附图来详细描述本发明的实施例。在以下描述中,一些具体的实施例 仅用于描述的目的,而不应当理解为对本发明的限制,这些实施例只是本发明的示例。
[0020] 图1示出了本发明的利用声音发送数据的方法的流程图。
[0021] 在步骤101,使用连续三个不同频率的声音频率脉冲作为数据包的头部,这里用户 可自己定义三个频率具体频率值。
[0022] 在一个实施例中,作为头部的三个声音频率脉冲,可以属于后面用来传送数据载 频频率脉冲中的三个。在另一个实施例中,为了在接收方更准确地检测出数据包的头部,作 为头部的三个声音频率脉冲与载频声音频率脉冲具有不同的频率。
[0023] 在步骤102,使用至少两个不同频率的声音频率脉冲作为载频传送需要发送的数 据内容,并且不同频率的声音频率脉冲之间采用过渡算法使其相位连续。
[0024] 在一个实施例中,将需要传送的信息,添加纠错码、协议等,纠错码和协议的种类 可以根据用户需求而选择,此处不再赘述,最终转变为需要传送的源数据。
[0025] 在一个实施例中,作为载频的声音频率脉冲的数量为2"个,其中n为大于或等于1 的正整数。在一个优选的实施例中,采用钢琴音作为传送数据的声音载频脉冲。
[0026] 在一个优选的实施例中,选择16个声音频率脉冲用于传送数据的频点,每次传送 其中的一个频率脉冲,每16个声音频率脉冲表示一个16进制的数据。将需要传送的信息, 按照字节读取,由于一个字节是8位,16进制数据是4位的,可以将一个8位,分为两个四 位,先低位后高位,编码为对应的频率值。
[0027] 在一个实施例中,不同频率的声音频率脉冲之间采用过渡算法使其相位连续。在 一个实施例中,使声音频率脉冲从上一个频率脉冲至下一个频率脉冲的变化部分是二次曲 线的一部分。在一个实施例中,上一个频率脉冲至下一个频率脉冲的变化部分是本次声音 频率脉冲的前四分之一时长。通过将频率脉冲之间的变化变得连续,也可以消除频谱泄露 的一部分。
[0028] 在另一个实施例中,对于每个要传送的声音频率脉冲,为了让其在与上次传送的 频率脉冲过渡平滑,且无频谱泄露,可以采用以下的编码方法。
[0029] 在当前采样率情况下,上次的传送频率,一次跳过的相角为mul_temp,这次的为 mul,当前频率的编码方法为(参阅说明书最后附带的代码部分):
[0030] 初始的四分之一时长,为过渡部分频率的编码。频率变化从上次传送的频率逐渐 变为至这次传送的频率,变化规律为其变化部分是二次曲线的一部分,其中mul值对应的 频率是二次曲线的定点,mul_temp对应的频率为经过的一个点,通过二次曲线规律,计算 出当前处于的相位值mulcurrent。具体每个点i的编码方法如以下代码,编码结果存在 signal数组中,fi [0]在每次编码完数据后,会跳至下一个相位,size为一次编码时长中一 共需要编码的点数。
[0031] 在步骤103,使用预定频率的声音频率脉冲代表数据包尾部。和数据包头部类似, 编码一个指定的频率脉冲,可以持续2个脉冲以上,表示到达待发送的数据包的结尾。
[0032] 在一个实施例中,为了在接收方更准确地检测出数据包的尾部,作为尾部的声音 频率脉冲与载频声音频率脉冲具有不同的频率。
[0033] 在一个实施例中,本发明中使用的声音频率脉冲属于人耳能够听见的频率脉冲范 围;在另一个实施例中,本发明中使用的声音频率脉冲也可以不属于人耳能够听见的频率 脉冲范围。
[0034] 在步骤104,将得到的数据包乘以一个最小值不小于0的余弦信号,其中最小值落 在数据包中的频率脉冲交接处。经过步骤104,进一步消除了频谱泄露。
[0035] 在步骤105,发送得到的数据包,发送的方法可以是将最终的数据包处理结果写入 音频文件并播放。
[0036] 在一个实施例中,将最终的数据写入一个signal数组中,然后再写入音频文件。
[0037] 图2示出了本发明利用声音接收数据的方法的流程图。
[0038] 在步骤201,处于侦听状态中的接收终端如果依序侦测到数据包头部三个声音频 率脉冲中的任意两个频率脉冲,即表示检测到数据包头部。
[0039] 在一个实施例中,在数据包头部3个声音频率脉冲中,依序侦测到其中任意两个 频率脉冲,即表示找到了数据包的头部。并且对其中一个声音频率脉冲信号,细分十份,找 到声音频率脉冲变化的交接处,从而定位数据开始的部位。
[0040] 在步骤202,检测所有的载频能量值以及数据包尾部频率脉冲的能量值,比较得到 载频能量最大值对应的载频,将其表示为当前传输的数据,从而得到传输的数据。
[0041] 在一个优选的实施例中,采用戈泽尔(Goertzel)算法检测所有的载频脉冲能量 值和数据包尾部的频率脉冲,比较得到载频能量最大值对应的载频脉冲,将其表示为当前 传送的数据。从而得到传送的数据。
[0042] 在步骤203,如果数据包尾部的声音频率脉冲能量最大,则停止数据解码,结束数 据包的接收。
[0043] 在一个实施例中,数据还需要经过消除纠错码,信息协议等,得到实际传送的内 容。
[0044] 图3示出了本发明的一种利用声音发送数据的装置300。
[0045] 如图3所示,利用声音发送数据的装置300包括头部产生单元310,头部产生单元 310用于使用连续三个不同频率的声音频率脉冲作为数据包的头部,这里用户可自己定义 三个频率具体频率值。
[0046] 在一个实施例中,作为头部的三个声音频率脉冲,可以属于后面用来传送数据载 频频率脉冲中的三个。在另一个实施例中,为了在接收方更准确地检测出数据包的头部,作 为头部的三个声音频率脉冲与载频声音频率脉冲具有不同的频率。
[0047] 利用声音发送数据的装置300还包括主体产生单元320,主体产生单元320用于产 生待发送的数据包主体。
[0048] 如图4所示,主体产生单元320又包括数据编码单元321和频率脉冲平滑单元 322。
[0049] 数据编码单元321用于使用至少两个不同频率的声音频率脉冲作为载频传输需 要发送的数据内容。
[0050] 在一个实施例中,将需要传送的信息,添加纠错码、协议等,纠错码和协议的种类 可以根据用户需求而选择,此处不再赘述,最终转变为需要传送的源数据。
[0051] 在一个实施例中,作为载频的声音频率脉冲的数量为2"个,其中n为大于或等于1 的正整数。在一个优选的实施例中,采用钢琴音作为传送数据的声音载频脉冲。
[0052] 在一个优选的实施例中,选择16个声音频率脉冲用于传送数据的频点,每次传送 其中的一个频率脉冲,每16个声音频率脉冲表示一个16进制的数据。将需要传送的信息, 按照字节读取,由于一个字节是8位,16进制数据是4位的,可以将一个8位,分为两个四 位,先低位后高位,编码为对应的频率值。
[0053] 频率脉冲平滑单元322用于使不同的声音频率脉冲之间采用过渡算法使其相位 连续。在一个实施例中,频率脉冲平滑单元322使声音频率脉冲从上一个频率脉冲至下一 个频率脉冲的变化部分是二次曲线的一部分。在一个实施例中,频率脉冲平滑单元322使 上一个频率脉冲至下一个频率脉冲的变化部分是本次声音频率脉冲的前四分之一时长。频 率脉冲平滑单元322通过将频率脉冲之间的变化变得连续,也可以消除频谱泄露的一部 分。
[0054] 利用声音发送数据的装置300还包括尾部产生单元330,尾部产生单元330用于使 用预定的声音频率脉冲代表数据包尾部。和数据包头部类似,编码一个指定的频率脉冲,可 以持续2个脉冲以上,表示到达待发送的数据包的结尾。
[0055] 在一个实施例中,为了在接收方更准确地检测出数据包的尾部,作为尾部的声音 频率脉冲与载频声音频率脉冲具有不同的频率。
[0056] 继续参考图3,利用声音发送数据的装置300还包括频谱泄露消除单元340,频谱 泄露消除单元340用于将得到的数据包乘以一个最小值不小于0的余弦信号,其中最小值 落在数据包中的频率脉冲交接处。经过频谱泄露消除单元340的操作,进一步消除了频谱 泄露。
[0057] 利用声音发送数据的装置300还包括发送单元350,发送单元350用于将数据包发 送,发送的方法可以是将最终的数据包处理结果写入音频文件并播放。
[0058] 图5示出了本发明的一种利用声音接收数据的装置500。
[0059] 如图5所示,利用声音接收数据的装置500包括头部检测单元510和数据检测单 元 520。
[0060] 头部检测单元510用于依序侦测到数据包头部三个声音频率脉冲中的任意两个 频率脉冲,即表示检测到数据包头部。
[0061] 在一个实施例中,头部检测单元510在数据包头部3个声音频率脉冲中,依序侦测 到其中任意两个频率脉冲,即表示找到了数据包的头部。并且对其中一个声音频率脉冲信 号,细分十份,找到声音频率脉冲变化的交接处,从而定位数据开始的部位。
[0062] 数据检测单元520用于检测所有的载频能量值以及数据包尾部频率脉冲的能量 值,比较得到载频能量最大值对应的载频,将其表示为当前传输的数据,从而得到传输的数 据;如果代表数据包尾部的声音频率脉冲能量最大,则停止数据解码,结束数据包的接收。
[0063] 在一个优选的实施例中,数据检测单元520采用戈泽尔(Goertzel)算法检测所有 的载频脉冲能量值和数据包尾部的频率脉冲,比较得到载频能量最大值对应的载频脉冲, 将其表示为当前传送的数据。从而得到传送的数据。
[0064] 图6是根据本发明实现的声音载频的频谱图,从图中可以看出,本发明实现的声 音频率脉冲频谱光滑,无频谱泄露。如果用来调制的声音频率脉冲是人耳可以感知的频谱 范围,声音大约是悦耳的鸟鸣声,或吹水的声音。
[0065] 以下是在便携式移动通信设备中用于实现本发明中将数据调制到声音载频脉冲 的过程的代码。
[0066]

【权利要求】
1. 一种利用声音发送数据的方法,包括: 使用连续三个不同频率的声音频率脉冲作为数据包的头部; 使用至少两个不同频率的声音频率脉冲作为载频传送需要发送的数据内容,并且不同 频率的声音频率脉冲之间采用过渡算法使其相位连续; 使用预定频率的声音频率脉冲代表数据包尾部; 将得到的数据包乘以一个最小值不小于0的余弦信号,其中最小值落在数据包中的频 率脉冲交接处;以及 发送所述数据包。
2. 根据权利要求1所述的方法,其中作为载频的声音频率脉冲的数量为2"个,其中n 为大于或等于1的正整数。
3. 根据权利要求1所述的方法,其中所述过渡算法包括:使声音频率脉冲从上一个频 率脉冲至下一个频率脉冲的变化部分是二次曲线的一部分。
4. 根据权利要求3所述的方法,其中所述变化部分是本次声音频率脉冲的前四分之一 时长。
5. 根据权利要求1所述的方法,其中发送所述数据包包括:将最终的数据包处理结果 写入音频文件并播放。
6. 根据权利要求1所述的方法,其中所述数据内容在调制到载频前经过纠错算法处 理。
7. 根据权利要求1所述的方法,其中代表所述数据包头部的三个声音频率脉冲以及代 表所述数据包尾部的声音频率脉冲与载频声音频率脉冲具有不同的频率。
8. 根据权利要求1所述的方法,其中声音频率脉冲属于人耳能够听见的频率脉冲范 围。
9. 根据权利要求8所述的方法,其中采用钢琴音作为所述声音频率脉冲。
10. 根据权利要求1所述的方法,其中声音频率脉冲不属于人耳能够听见的频率脉冲 范围。
11. 一种利用声音接收数据的方法,包括: 如果依序侦测到数据包头部三个声音频率脉冲中的任意两个频率脉冲,即表示检测到 数据包头部; 检测所有的载频能量值以及数据包尾部频率脉冲的能量值,比较得到载频能量最大值 对应的载频,将其表示为当前传送的数据,从而得到传送的数据;以及 如果代表数据包尾部的声音频率脉冲能量最大,则停止数据解码,结束数据包的接收。
12. 根据权利要求11所述的方法,其中检测数据包头部的步骤还包括:对其中一个频 率脉冲信号,细分十份,找到频率脉冲变化的交接处,从而定位数据开始的部位。
13. 根据权利要求11所述的方法,其中检测声音频率脉冲的能量值采用戈泽尔 (Goertzel)算法。
14. 根据权利要求11所述的方法,其中将得到的数据进行消除纠错码,得到实际传送 的数据内容。
15. -种利用声音发送数据的装置,包括: 头部产生单元,用于使用连续三个不同频率的声音频率脉冲作为数据包的头部; 数据编码单元,用于使用至少两个不同频率的声音频率脉冲作为载频传送需要发送的 数据内容; 频率脉冲平滑单元,用于使不同的声音频率脉冲之间采用过渡算法使其相位连续; 尾部产生单元,用于使用预定的声音频率脉冲代表数据包尾部; 频谱泄漏消除单元,用于将得到的数据包乘以一个最小值不小于0的余弦信号,其中 最小值落在数据包中的频率脉冲交接处;以及 发送单元,用于发送所述数据包。
16. 根据权利要求15所述的装置,其中作为载频的声音频率脉冲数为2n个,其中n为 大于或等于1的正整数。
17. 根据权利要求15所述的装置,其中所述过渡算法包括:使声音频率脉冲从上一个 频率脉冲至下一个频率脉冲的变化部分是二次曲线的一部分。
18. 根据杈利要求17所述的装置,其中所述变化部分是本次声音频率脉冲的前四分之 一时长。
19. 根据权利要求15所述的装置,其中所述发送单元将最终的数据包处理结果写入音 频文件并播放。
20. 根据权利要求15所述的装置,其中所述数据内容在调制到载频前经过纠错算法处 理。
21. 根据权利要求15所述的装置,其中代表所述数据包头部的三个声音频率脉冲以及 代表所述数据包尾部的声音频率脉冲与载频声音频率脉冲具有不同的频率。
22. 根据权利要求15所述的装置,其中所述声音频率脉冲属于人耳能够听见的频率脉 冲范围。
23. 根据权利要求22所述的装置,其中采用钢琴音作为所述声音频率脉冲。
24. 根据权利要求15所述的装置,其中所述声音频率脉冲不属于人耳能够听见的频率 脉冲范围。
25. -种利用声音接收数据的装置,包括: 头部检测单元,用于依序侦测到数据包头部三个声音频率脉冲中的任意两个频率脉 冲,即表示检测到数据包头部;以及 数据检测单元,用于检测所有的载频能量值以及数据包尾部频率脉冲的能量值,比较 得到载频能量最大值对应的载频,将其表示为当前传送的数据,从而得到传送的数据;如果 代表数据包尾部的声音频率脉冲能量最大,则停止数据解码,结束数据包的接收。
26. 根据权利要求25所述的装置,其中检测数据包头部的步骤还包括:对其中一个频 率脉冲信号,细分十份,找到频率脉冲变化的交接处,从而定位数据开始的部位。
27. 根据权利要求25所述的装置,其中检测声音频率脉冲的能量值采用戈泽尔 (Goertzel)算法。
28. 根据权利要求25所述的装置,其中将得到的数据进行消除纠错码,得到实际传送 的数据内容。
【文档编号】H04B11/00GK104378124SQ201310361848
【公开日】2015年2月25日 申请日期:2013年8月16日 优先权日:2013年8月16日
【发明者】朱宝, 陈健, 刘玮 申请人:北京千橡网景科技发展有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1