声波通信iOS与Android实现
声波通信的 iOS 和 Android 实现,挺适合在离线或者信号不稳的时候用来搞点“暗号”传输,比如小额支付、配对之类的近距离数据传输。iOS 那边靠AVFoundation
和AudioQueue
搞定音频的录制和播放,权限别忘了先申。Android 也差不多,主力是AudioRecord
和MediaPlayer
,设置音频参数时要跟 iOS 对得上,不然收不到。
传输数据之前得先编码成音频信号,比如 PCM,超声波频段更稳当,基本不扰民。接收端录音下来再解码成原始数据。中间可以加点Wiener 滤波
、FFT
这些信号增强算法,抗干扰效果还不错。
别忘了加错误校验,比如CRC
或者前向纠错,不然一有噪音就挂了。数据不大的话,可以考虑压缩一下再传,比如用Huffman
。虽然速度不算快,但实用场景还挺多,比如两个手机在地铁里互相发个联系人,不连网也行。
如果你正好在做近距离设备通信,或者想试试不用网络也能“对话”的方式,这类声波通信方案可以研究下,蛮有意思的。对信号没底的同学,建议先看看超声波的资料和测距模块的用法,下面这些资源可以帮你快速上手。
声波通信iOS和Android
预估大小:125个文件
libSVSinVoiceLib.a
434KB
MainActivity.class
10KB
MainActivity$7.class
2KB
MainActivity$3.class
1KB
MainActivity$1.class
1020B
MainActivity$8.class
1KB
MainActivity$7$1.class
1KB
MainActivity$RegHandler.class
2KB
VoiceEncoder.class
1KB
LogHelper.class
2KB
443.88KB
文件大小:
评论区