diff --git a/README.md b/README.md index 4bc28db..a86d8c9 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# RadioCast +# RadioPlayer A lightweight, cross-platform radio player built with Tauri and Vanilla JavaScript. Features local playback and Google Cast integration. @@ -13,10 +13,10 @@ Before you begin, ensure you have the following installed on your machine: ## Installation 1. **Clone the repository**: - ```bash - git clone - cd RadioCast - ``` + ```bash + git clone + cd RadioPlayer + ``` 2. **Install dependencies**: ```bash @@ -106,3 +106,40 @@ To change the default window size, edit `src-tauri/tauri.conf.json`: ## License [Add License Information Here] + + +## Release v0.1 + +Initial public preview (v0.1) — a minimal, working RadioPlayer experience: + +- Custom CAF Receiver UI (HTML/CSS/JS) in `receiver/` with branded artwork and playback status. +- Plays LIVE stream: `https://live.radio1.si/Radio1MB` (contentType: `audio/mpeg`, streamType: `LIVE`). +- Desktop sidecar (`sidecar/index.js`) launches the Default Media Receiver and sends LOAD commands; launch flow now retries if the device reports `NOT_ALLOWED` by stopping existing sessions first. + +Included receiver files: + +- `receiver/index.html` +- `receiver/receiver.js` (CAF Receiver initialization + LOAD interceptor for LIVE metadata) +- `receiver/styles.css` +- `receiver/assets/logo.svg` + +Quick testing notes + +- The receiver must be served over HTTPS for Cast devices to load it. For quick local testing you can use `mkcert` + a static HTTPS server: + +```bash +# create local certs +mkcert -install +mkcert localhost + +# serve the receiver folder over HTTPS +npx http-server receiver -p 8443 -S -C localhost.pem -K localhost-key.pem +``` + +- Use the Default Media Receiver App ID while developing, or register a Custom Receiver App in the Cast Developer Console and point its URL to your hosted `index.html` for production. + +Sidecar / troubleshoot + +- If a Cast launch fails with `NOT_ALLOWED`, the sidecar will now attempt to stop any existing sessions on the device and retry the launch (best-effort). Check sidecar logs for `Launch NOT_ALLOWED` and subsequent retry attempts. +- Note: the sidecar uses `castv2-client` (not the official Google sender SDK). Group/stereo behavior may vary across device types — for full sender capabilities consider adding an official sender implementation. +