mirror of
https://github.com/mistergibson/radio.git
synced 2026-09-08 22:09:51 -07:00
Minor tweaks
This commit is contained in:
parent
0c5f864007
commit
952c9ae5a9
9 changed files with 1408 additions and 2024 deletions
|
|
@ -1,3 +1,5 @@
|
|||
[](https://firstdonoharm.dev/version/3/0/full.html)
|
||||
|
||||
# Radio Automation Stack
|
||||
|
||||
A self-hosted internet radio automation system for Linux Mint 22.3 (Ubuntu 24.04 Noble). It continuously plays background music, interrupts it with scheduled podcast shows and external streams, downloads new podcast episodes from RSS feeds, and manages playback history — all fed to an Icecast server via liquidsoap.
|
||||
|
|
@ -48,7 +50,6 @@ The moving parts:
|
|||
| `config.json` | Credentials and connection settings | No (secret) |
|
||||
| `schedule.txt` | Human-edited cron schedule of shows/streams | Yes |
|
||||
| `station.liq` | liquidsoap configuration | Yes |
|
||||
| `Gemfile` | Ruby gem dependencies (Ruby stack) | Yes |
|
||||
|
||||
## Configuration: `config.json`
|
||||
|
||||
|
|
@ -214,7 +215,7 @@ For each show, the updater scans `podcasts/<slug>/` recursively for audio files,
|
|||
The liquidsoap program itself. Not invoked directly — it runs under the systemd service. Key behaviors:
|
||||
|
||||
- Resolves all paths relative to its own location via `configure.bindir()`, so the whole tree can be relocated without editing the file.
|
||||
- Loads Icecast credentials from `config.json`.
|
||||
- Loads Icecast credentials from `config.json` using an annotated `json.parse` binding.
|
||||
- Maintains a continuous random background-music playlist drawn from `music/`.
|
||||
- Uses a request queue as the primary source: when a scheduled show or stream is triggered, it plays ahead of the music fallback; when the queue drains, background music resumes.
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue