- Deleted unused API test files, RTSP diagnostic scripts, and development utility scripts to reduce clutter. - Removed outdated database schema and modularization proposal documents to maintain focus on current architecture. - Cleaned up configuration files and logging scripts that are no longer in use, enhancing project maintainability.
1.8 KiB
1.8 KiB
RTSP Streaming Access Guide (Tailscale)
Your Tailscale IP
100.93.40.84
Access URLs
Replace exp-dash with 100.93.40.84 in all URLs when accessing from outside the VM.
1. MediaMTX Web Interface (Best for Testing)
http://100.93.40.84:8889/static/
This shows all available streams with a built-in player.
2. Direct WebRTC Player for Camera1
http://100.93.40.84:8889/camera1/webrtc
This is a browser-based player that works without VLC.
3. RTSP URL (for VLC/ffplay)
rtsp://100.93.40.84:8554/camera1
For VLC:
- File → Open Network Stream
- URL:
rtsp://100.93.40.84:8554/camera1 - Or use:
rtsp://100.93.40.84:8554/camera1?transport=tcp
For ffplay:
ffplay -rtsp_transport tcp rtsp://100.93.40.84:8554/camera1
Important Notes
-
Stream Timeout: MediaMTX closes streams after ~10 seconds if no one is watching. Make sure to:
- Start RTSP first:
curl -X POST http://exp-dash:8000/cameras/camera1/start-rtsp - Then quickly open the viewer within 10 seconds
- Start RTSP first:
-
Ports Exposed:
- 8554: RTSP
- 8889: WebRTC/HTTP API
- 8189: WebRTC UDP
-
Network: Tailscale creates a VPN, so you can access these URLs from anywhere, as long as your client device is also on the same Tailscale network.
Testing Steps
-
Start the stream:
curl -X POST http://exp-dash:8000/cameras/camera1/start-rtsp -
Quickly open a viewer (within 10 seconds):
- Open browser:
http://100.93.40.84:8889/static/ - Or:
http://100.93.40.84:8889/camera1/webrtc
- Open browser:
-
Check status:
./check_rtsp_status.sh
Troubleshooting
If you see "no stream is available":
- The stream might have timed out (waited >10 seconds without viewer)
- Restart the stream and quickly connect
- Check logs:
docker compose logs api --tail 20 | grep RTSP