2015-02-11 经验 8 条评论 热度 711℃
今天和同学聊天谈到 Raspberry Pi 树莓派的一个有趣玩法:把它变成一个小型的 FM 调频发射站!想起自己初中时也有过这个想法,但是实践过程中遇到了很多问题,摸索了很久才成功做出来。于是我便想写篇教程,把我的制作经验告诉大家,让大家更快速简单地实现这一想法。
1. 一只树莓派
2. 一根用来充当天线的 20cm 母头杜邦线
1. 下载由国外玩家 Oliver Mattos 与 Oskar Weigl 制作的 PiFM 开源代码模块(下载地址:百度云)
2. 将其解压后得到的 pifm 文件夹拷贝至树莓派的 SD 卡上
3. 给树莓派的 GPIO 4 引脚插上准备好的杜邦线
4. 在终端中进入 pifm 目录后执行下列语句
sudo ./pifm sound.wav 103.3
5. 此时打开你的收音机设备,调到 103.3MHz 应该就能听到美妙的音乐了
指的是示例音频文件的路径,可以把它替换成自己的音乐。但要注意只能使用 16 位单声道的 WAV 文件!
指的是发射频率。树莓派硬件上可支持的范围为 1MHz-250MHz,不过中国境内大部分收音机只能接收到 76MHz-108MHz 的频率,所以推荐在其中挑选一个空闲频率来使用。
sudo ./pifm left_right.wav 103.3 22050 stereo
指的是音频采样率是 22050Hz。
指的是以立体声模式播放该文件。如果你希望播放单声道文件,把它改为 mono 或删除这一参数即可。
ffmpeg -i input.mp3 -f s16le -ar 22.05k -ac 1 - | sudo ./pifm - 103.3
这里使用了 ffmpeg 解码器,它的作用是把“input.mp3”文件以模式 s16le 与 22050Hz 的采样率进行实时解码并作为 PiFM 模块的输入。由于 s16le 的模式代表生成 16 位的单声道 WAV 格式,所以此处不需另外填写参数。
arecord -d0 -c2 -f S16_LE -r 22050 -twav -D copy | sudo ./pifm - 103.3
它可以被做成一台便携式的 FM 发射器,随身携带来传递你的个性化声音。
它可以用来做对讲机,住宿学生党的神器。
它可以用来做校园广播。
……
请从以下两个方面尝试:更换一个频率,检查天线接触是否良好。
通常是因为你没有足够的权限来运行 pifm,或是音频文件路径有误。可以尝试使用下述语句给文件提权。
sudo chmod 777 ./pifm
可能是因为你乱来被和谐了……开个玩笑~多半是因为文件被占用无法读取,就像一个正在被使用的文件不能被删除一样。最简单的方法就是重启系统。
基本是由于你选择了错误的采样率及声道,仔细检查一下吧!
可以尝试延长杜邦线,把它缠绕在水管或是晾衣杆上,效果会好很多。
放心啦,树莓派的发射功率很小的,幻想着能用它来干扰卫星或是航天飞机什么的基本上是不可能的,所以 ZF 自然不会来找你麻烦的。不过,请注意调频内容一定要积极向上哦!
推荐你到模块开发者提供的 Wiki 上逛逛,说不定会有不少收获哦~
转自“镜态极研”