ingest: support multiple weighted OpenSubsonic playlists
RADIEO_SUBSONIC_PLAYLIST now accepts a comma-separated list of playlist names or ids, each optionally weighted with a '=<number>' suffix (e.g. 'Chill=3, Focus, Party=2'); default weight is 1 and 0 disables an entry. The provider caches each playlist independently and walks them in weighted-random order on every pick, falling through past empty, renamed or unreachable playlists so the source never stalls. Picking the playlist first (by weight) then a song uniformly gives each its configured share regardless of length. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
parent
5dd50f37b7
commit
40061446c9
5 changed files with 117 additions and 48 deletions
|
|
@ -68,7 +68,9 @@ cp .env.example .env
|
|||
Fill in `.env`:
|
||||
|
||||
- **OpenSubsonic server**: `RADIEO_SUBSONIC_URL` / `USER` / `PASSWORD` and the
|
||||
playlist to broadcast in `RADIEO_SUBSONIC_PLAYLIST` (name or id). Works with
|
||||
playlist(s) to broadcast in `RADIEO_SUBSONIC_PLAYLIST` — a comma-separated
|
||||
list of names or ids, each optionally weighted with a `=<number>` suffix
|
||||
(e.g. `Chill=3, Focus, Party=2`; default weight 1, `0` disables). Works with
|
||||
any OpenSubsonic-compatible server (Navidrome, Gonic, Airsonic…). Leave empty
|
||||
to disable this source. To make the player's "source" link work for library
|
||||
tracks, enable sharing on the server (Navidrome: `ND_ENABLESHARING=true`); the
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue