Fix generation JSON/Lyria errors, add Winamp player, and ship Echoes of the Sahel.
Harden DeepSeek JSON parsing with retry, pre-sanitize Lyria prompts, and instrumental fallback. Add pure HTML Winamp skin at /winamp with playlist export support. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -136,7 +136,21 @@ At the default cap of 10 new songs/day with Lyria Pro, projected max spend is **
|
||||
| GET | `/api/songs` | Saved library |
|
||||
| POST | `/api/songs/{id}/play` | Play a saved track |
|
||||
| GET | `/stream/{file}` | MP3 stream |
|
||||
| GET | `/player` | Web UI |
|
||||
| GET | `/player` | Full DJ dashboard |
|
||||
| GET | `/winamp` | Winamp-style HTML player (streams `/stream/{file}` locally) |
|
||||
|
||||
## Winamp player (pure HTML)
|
||||
|
||||
Lightweight **Winamp 2.x–style** skin — no React, no API required for playback. Shuffles saved songs from the embedded playlist.
|
||||
|
||||
| Where | URL |
|
||||
|-------|-----|
|
||||
| **Local** (with server) | **http://127.0.0.1:8787/winamp** — streams via `/stream/{file}` |
|
||||
| **Public** (tinqs.com LFS) | **https://tinqs.com/tinqs/live-radio/src/branch/main/gateway/winamp.html** |
|
||||
|
||||
Controls: play/pause, stop, prev/next, shuffle, volume, clickable playlist. Same `/*__PLAYLIST__*/` embed as `gateway/index.html` — updated by `python -m ozan_radio export-web` or automatically when the server saves a track.
|
||||
|
||||
Full dashboard (`/player`) still needed for DJ chat, Lyria compose, and settings.
|
||||
|
||||
## Magenta RealTime 2 (optional live layer)
|
||||
|
||||
@@ -172,7 +186,7 @@ After generating new tracks locally, refresh the public page:
|
||||
|
||||
```powershell
|
||||
python -m ozan_radio export-web
|
||||
git add gateway/index.html gateway/playlist.json
|
||||
git add gateway/index.html gateway/winamp.html gateway/playlist.json
|
||||
git commit -m "Update public radio playlist"
|
||||
git push
|
||||
```
|
||||
|
||||
Reference in New Issue
Block a user