Python音频通过激光传输

前端之家收集整理的这篇文章主要介绍了Python音频通过激光传输前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我目前正在开展一个相对简单的项目,直到现在.基础项目是使用音频转换通过激光传输数据/消息.
简而言之,这个过程就像这样

>用户输入消息
>消息变成二进制
>对于二进制消息中的每个1和0,它播放相应的音调信号,在我的情况下250hz为1,450hz为0.
>输出音通过立体声电缆发送到装配到激光器的音频变压器
>太阳能电池板充当麦克风,并将传入的“声音”记录为文件
>它们播放文件并读取音调并尝试将每个250和450赫兹匹配到1或0(这是我的问题所在).

直到声音的实际处理很好,我目前的问题如下.

我在x时间播放音调,在接收端录制y时间,y时间被多次采样,然后按样本分析,然后记录每个频率.这是低效且不准确的.无论我何时播放音调,我都会遇到很多问题,因为它经常会听到两次音调或根本听不到它,这完全抛弃了整个信息.
我试图将它采样的速率与每个音调播放的时间相匹配,但除非相应地对齐,否则它不起作用.我只对“test”和“hi”等消息进行了一些成功的测试.我已经看过bpsk和fsk了,但是我觉得好像我已经做了类似的事情,但是我有一个糟糕的接收端来破译它.

这些都是用Python编写的,我非常感谢您提供的任何提示,建议或可能的实现.同样对于音调发射我使用pyaudiere并且用于录制我正在使用pyaudio.

谢谢!

史蒂夫

最佳答案
这听起来像硬件问题.我很确定这是FSK的工作.大多数现代FSK型系统使用PLL(锁相环芯片)进行实际检测.频率 – 电压或频率 – 电流电路也是可用的.

我在数十本业余爱好者书籍,数据表和网站上看过实用电路.以下是一些:

Circuit for demodulating an FSK signal

PLL Tutorial

我希望这不仅仅是为了你的另一次兔子之旅 – 祝你好运!

猜你在找的Python相关文章