快科技 8 月 17 日消息,创客 Makestreme 近日把一首两分钟的歌印在了一张纸上,双面各四个二维码,排成一张纸唱片。
这首歌原本是个 2.9MB 的 MP3 文件,单个二维码实际能存的数据上限只有 3.3KB 左右,要塞进八个二维码,得压到约 21KB,相当于缩小 1000 倍。传统压缩方案也帮不上忙,MP3 本身就是有损格式,再压已经压不动了。
Makestreme 用的是 Meta 2022 年开源的 EnCodec 神经音频编解码器,把音频波形转成一串离散 token,解码时再由神经网络还原成声音。

在 3kbps 码率下还原出来的听感还不错,但降到 1.5kbps 就明显失真了,21KB 刚好卡在可接受的音质线上。
存是存下来了,传出去也是个问题,这套方案通过 LoRa 无线电台在两块 ESP32 开发板之间传输同一份 21KB 文件,使用 REYAX RYLR998 模块在 866MHz 频段通信,以 160 字节为一个数据包发送并采用确认重传协议。
发送端代码在每次确认后硬编码 40 秒等待间隔,21KB 文件约需 134 个数据包,仅等待时间就累计约 90 分钟。

将软件印在纸上的历史可追溯到 1985 年的 Cauzin Softstrip,这是一种二维条码,允许杂志以每条最多 5500 字节的速度发布程序,后来软盘便宜了就没人用了,当年那些条码现在几乎没人能读取。
这次的项目继承了同样的问题,二维码存储的是 token 而非音频,播放必须依赖 EnCodec 特定的 24kHz 解码器。纸张或许能保存数百年,但歌曲的寿命取决于能否找到可以解码它的神经网络。


登录后才可以发布评论哦
打开小程序可以发布评论哦