Update README with latest features: listener spectrum, Cloudflare compatibility, and deployment notes
This commit is contained in:
25
README.md
25
README.md
@@ -10,6 +10,9 @@ It supports:
|
|||||||
- Downloading audio from URLs (via `yt-dlp` when available, with fallback)
|
- Downloading audio from URLs (via `yt-dlp` when available, with fallback)
|
||||||
- Live streaming from the DJ browser to listeners using Socket.IO
|
- Live streaming from the DJ browser to listeners using Socket.IO
|
||||||
- Live listening via an **MP3 stream** (`/stream.mp3`) generated server-side with **ffmpeg**.
|
- Live listening via an **MP3 stream** (`/stream.mp3`) generated server-side with **ffmpeg**.
|
||||||
|
- Real-time visual spectrum analyzer for listeners
|
||||||
|
- Optional password protection for the DJ panel
|
||||||
|
- Compatibility with reverse proxies like Cloudflare
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
@@ -140,8 +143,7 @@ You should see output like:
|
|||||||
`http://<DJ_MACHINE_IP>:5001`
|
`http://<DJ_MACHINE_IP>:5001`
|
||||||
|
|
||||||
2. Click **ENABLE AUDIO** if prompted
|
2. Click **ENABLE AUDIO** if prompted
|
||||||
- Browsers block autoplay by default; user interaction is required.
|
- Browsers block autoplay by default; user interaction is required.3. Enjoy the live stream with real-time spectrum visualization
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## Multi-device / LAN setup
|
## Multi-device / LAN setup
|
||||||
@@ -196,6 +198,22 @@ This shows whether ffmpeg is running and whether MP3 bytes are being produced.
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
## Deployment behind reverse proxies (e.g., Cloudflare)
|
||||||
|
|
||||||
|
TechDJ is compatible with reverse proxies like Cloudflare. To ensure proper functionality:
|
||||||
|
|
||||||
|
- Use same-origin URLs for streaming to avoid port restrictions.
|
||||||
|
- Configure your proxy to bypass caching for the `/stream.mp3` endpoint, as it's a live audio stream.
|
||||||
|
- Set cache control headers to `no-cache` for `/stream.mp3` to prevent buffering issues.
|
||||||
|
- Ensure WebSocket connections (used by Socket.IO) are allowed through the proxy.
|
||||||
|
|
||||||
|
Example Cloudflare page rule:
|
||||||
|
- URL: `yourdomain.com/stream.mp3`
|
||||||
|
- Cache Level: Bypass
|
||||||
|
- Edge Cache TTL: 0 seconds
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
## Troubleshooting
|
## Troubleshooting
|
||||||
|
|
||||||
### Listener says “Browser blocked audio”
|
### Listener says “Browser blocked audio”
|
||||||
@@ -219,7 +237,10 @@ This shows whether ffmpeg is running and whether MP3 bytes are being produced.
|
|||||||
- Crossfader isn’t fully on the silent side
|
- Crossfader isn’t fully on the silent side
|
||||||
- Volumes aren’t at 0
|
- Volumes aren’t at 0
|
||||||
- Check `http://<DJ_MACHINE_IP>:5001/stream_debug` and see if `transcoder_bytes_out` increases
|
- Check `http://<DJ_MACHINE_IP>:5001/stream_debug` and see if `transcoder_bytes_out` increases
|
||||||
|
### Spectrum visualizer not showing
|
||||||
|
|
||||||
|
- Ensure the listener page is loaded and audio is enabled.
|
||||||
|
- Check browser console for errors related to Web Audio API.
|
||||||
### `pip` missing inside venv
|
### `pip` missing inside venv
|
||||||
|
|
||||||
Some Python installs create venvs without pip. Fix:
|
Some Python installs create venvs without pip. Fix:
|
||||||
|
|||||||
Reference in New Issue
Block a user