I wanted to share a bit of an experiment I've been working on called PrismCast — a streaming server that captures live video from web-based TV players and delivers it as HLS streams for Channels DVR.
PrismCast was directly inspired by Chrome Capture for Channels, and I'm grateful to the Channels DVR team for creating the foundation that made this project possible, and hope the community enjoys this contribution.
Why PrismCast?
- Native HLS output — Serves fMP4/HLS streams directly, which Channels DVR tends to handle better than MPEG-TS.
- Runs as a service — Designed to be installed as a system service that starts automatically at login. One command to install, runs in the background.
-
Real-time web dashboard — Monitor active streams with live health status, duration, and memory usage. When recording, it even shows the name of the show
being recorded. - Channel management UI — Add, edit, and delete custom channels directly in the browser. No config files to edit.
- Intelligent recovery — Issue-aware recovery that chooses the right fix for different problems (buffering gets different treatment than paused playback).
- Site profile system — Data-driven configuration makes it easy to add support for new streaming sites.
- Quality presets — Choose from 480p to 4K with automatic adaptation to your display.
- Live log viewer — Stream server logs in real-time for easy troubleshooting.
Getting Started
npm install -g prismcast
prismcast service install (to install and start the PrismCast service)
...or...
prismcast -c (to run in console mode)
Then open http://localhost:5589 in your browser. To add to Channels DVR:
- Go to Settings → Custom Channels → Add Source
- Select M3U Playlist
- Enter: http://:5589/playlist
- Set Stream Format to HLS
PrismCast comes with most major US television networks preconfigured. Just authenticate with your TV provider and you're ready to go.
Requirements
- macOS (Linux/Windows may work but are untested)
- Node.js 22 or later
- Google Chrome
Links
- GitHub: GitHub - hjdhjd/prismcast: Chrome-based streaming server for Channels DVR.
- npm: https://www.npmjs.com/package/prismcast
Feedback, bug reports, and contributions are welcome! If you've got a streaming site that works well with PrismCast, consider submitting a PR to add it to the preconfigured channels.