项目简介
本项目名为 rsked
(radio scheduler),是一个 Linux 应用程序,可按照每周时间表在特定时间播放各种音频源,无需人工干预。该项目最初为因残疾无法操作传统音频设备的人群开发,能让用户在无网络或网络不可靠环境中,无需依赖他人控制设备就能享受各种音频节目。它既可以作为嵌入式应用程序在低成本低功耗的微系统(如树莓派 3)上运行,也能在 x86 桌面计算机等任何带有声卡的 Linux 计算机上运行。
项目的主要特性和功能
- 简单的日程安排:通过简单的 JSON 文件定义每周节目时间表。
- 网页交互:提供基于 Web 的日程编辑器和日志查看器。
- 多格式音频播放:支持播放 MP3、MP4、FLAC、Ogg - Vorbis 等格式的文件、目录或播放列表。
- 网络音频播放:可播放互联网音频流。
- FM 广播播放:借助廉价的 SDR 硬件播放 FM 广播,包括 HD 广播。
- 定时音频消息:可在预定时间播放音频“每日消息”。
- 音频源故障处理:能检测音频源故障,并切换到预设的备份源。
- 多平台支持:可在树莓派 3 或 x86_64 上运行,无需屏幕。
- 可选交互功能:支持使用 snooze 按钮暂停或恢复播放(可选,通过 GPIO),状态 LED 指示(可选,通过 GPIO),以及控制主动散热(可选,通过 GPIO)。
- 日志记录与监控:记录操作日志以便远程监控,还可进行蓝牙状态监控和设置(可选)。
安装使用步骤
前提条件
假设已下载本项目的源码文件,并且用户已将所需的外部音频播放器单独安装好。
安装与配置步骤
- 编译和安装:编译并安装
rsked
软件以及外部音频播放器。具体安装说明见 INSTALLATION。 - 调整配置参数:根据需求调整配置参数以选择所需的功能。配置文件和命令行选项参考 CONFIGURATION。
- 添加音乐文件:安装所需的录制音乐文件。
- 配置日程:配置一个引用本地和远程音乐源的“日程”。
- 设置自动启动:对于嵌入式设备,设置
rsked
在设备启动时自动启动。对于树莓派平台的详细硬件、布线和配置说明,可参考 README - RPi。
外部音频播放器选择
- 录制音乐:可使用
mpd
、ogg123
、mpg321
、vlc
等应用程序播放录制音乐。其中ogg123
用于播放 Ogg - Vorbis 录音,也是rsked
播放公告所必需的;mpd
经过了与rsked
的广泛测试,能播放多种音频文件;vlc
功能也很强大;mpg321
适合播放 MP3 文件。 - 流媒体:上述应用程序也可处理流媒体源,如互联网广播电台。
rsked
能检测并响应流媒体连接中断问题,其中mpd
表现较为稳定。 - FM 广播:使用软件定义无线电(SDR)来安排播放空中 FM 广播。连接如 RTL - 2832U 这样的廉价 USB SDR 无线电加密狗,然后在日程中配置所需的频率。
rsked
使用gqrx
(修改后的分支)或nrsc5
(与 RTL - SDR 加密狗兼容的 HD - FM 接收器)。
其他应用程序说明
- cooling 应用程序:作为
rsked
的监控程序,建议在嵌入式应用中使用。可根据 CPU 温度控制散热风扇,以所需选项启动rsked
,在rsked
停止时重启它,向rsked
发送按钮按下信号,控制外部 LED 指示状态。 - VUmonitor 应用程序:可选应用程序,由
rsked
启动。持续监控输送到 Linux 声音系统的音频输出电平,当音频长时间静音或恢复时向rsked
发送信号,帮助rsked
检测音频源“无声”故障。 - check_inet.sh 应用程序:可选应用程序,定期验证是否有可用于流媒体的互联网连接。
rsked
利用此数据确定是否适合使用互联网流媒体源。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】