我正在尝试我的第一个物联网项目,我想:
- 有一个驻极体麦克风捕获音频
- 使用 ESP8266 NodeMCU 12-E 板将捕获的音频提交到远程服务器
- 让远程服务器使用 MQTT 服务器接收音频数据
- 将音频数据作为 .WAV 文件发布到服务器上
我在网上看到有人在这个 YouTube 视频中展示了类似的东西
https://www.youtube.com/watch?v=rU_Pw9Jb_PM
作者在这里分享了github上的项目
https://github.com/hjltu/esp8266-wifi-microphone
当我研究代码时,我认为我看到的是作者将 的值analogRead(A)附加到某种字符串作为有效负载,然后将其发布到 MQTT 服务器。
看到作者希望MQTT服务器或者其他一些软件处理ESP8266麦克风音频数据,输出为.RAW文件。这个 RAW 文件最终在 ffmpeg 的帮助下转换为 .WAV 文件。
我的问题是:什么命令允许 MQTT 服务器生成 .RAW 文件?或者这是由完全不同的软件完成的?而在我看来,对于一个记录/音频文件,该my_record()的esp8266-wifi-mic.ino文件将多个有效载荷发送到MQTT服务器。那么MQTT服务器如何知道哪个发布的传输属于哪个RAW文件呢?