项目简介
本项目借助Busybox shell脚本达成对网络收音机播放行为的智能控制。用户在收听广播时,常受节目间穿插的糟糕音乐干扰,该系统能在歌曲播放时自动调低音量,歌曲结束后再调高音量,有效提升收听体验。
项目的主要特性和功能
- 收音机操作控制:运用Busybox shell脚本和UPnP命令,可控制收音机的播放、音量调节以及频道切换。
- 自动音量调节:当播放音乐时自动降低音量,歌曲结束后恢复音量。
- 歌曲时长检测:通过调用MusicBrainz等互联网音乐数据库的API,自动检测当前播放歌曲的时长。
- 跨设备支持:可在运行Busybox且支持UPnP接口的多种品牌型号收音机上使用。
安装使用步骤
- 获取项目源码文件并解压,得到所有必要的脚本和工具。
- 确保收音机设备支持Busybox且具备UPnP接口。
- 在PC上使用
python -m pyftpdlib -i 192.168.178.49 -w -p 2121 -d /home/me/FTP
命令搭建临时FTP服务器,用于与收音机进行文件交换。 - 获取必要工具:
- 从网络找到适用于收音机Arm芯片的netcat工具,或者自行编译。通过
ftpget -v 192.168.178.49 -P 2121 /tmp/netcat netcat
命令将其下载到收音机的/tmp
目录,并使用chmod +x /tmp/netcat
赋予执行权限。 - 编译
getq
工具: - 在
config.mak
中设置TARGET = arm-linux-musleabi
。 - 执行
make
(耗时约两小时)和make install
。 - 使用
~/Dev/musl/musl-cross/musl-cross-make/output/bin/arm-linux-musleabi-gcc -Wall -g -static getq.c -o getq
编译getq
。
- 从网络找到适用于收音机Arm芯片的netcat工具,或者自行编译。通过
- 在收音机上执行
ifconfig lo 127.0.0.1
命令,确保localhost配置正确,可使用ifconfig
命令检查是否显示UP LOOPBACK RUNNING
。 - 获取电台URI:若收音机有互联网服务可选择收藏电台,可从中获取所需电台的URI;也可通过
ftpput 192.168.178.49 -v -P 2121 /tmp/myradio.cfg myradio.cfg
命令从收音机获取/tmp/myradio.cfg
文件,查找电台URI。还可使用favlist.exe
工具根据playlist.csv
文件重新创建电台预设。 - 通过
ftpget 192.168.178.49 -P 2121 /tmp/MuteMusic.sh MuteMusic.sh
命令将MuteMusic.sh
脚本下载到收音机的/tmp
目录,并使用chmod +x /tmp/MuteMusic.sh
赋予执行权限。 - 执行
/tmp/MuteMusic.sh
脚本,开始控制收音机。
注意事项: - 本项目要求用户具备一定的Linux/Unix系统编程和网络知识。 - 本项目不适用于不支持Busybox或无开放UPnP接口的设备。 - 使用前请仔细阅读相关文档,确保收音机满足项目要求。
下载地址
点击下载 【提取码: 4003】