Bridge

Keep DRM channels available by routing them through a compatible playback and capture path.

Bridge mode is on
No method is configured yet, so DRM channels still follow the normal disabled-DRM behavior.
Getting started
  1. Set up a method. Pick one under Methods and fill in its settings.
  2. Turn on Bridge mode with the switch above.
  3. Enable a DRM-capable source. See Coverage for the ones each method supports, then add it on Sources.
  4. Run a Stream Audit on each source you want bridged. The audit detects DRM and marks eligible channels for bridge output; without it, existing channels still look like ordinary or disabled streams.
  5. Add the bridge M3U to your DVR from Feeds, alongside your regular feed.

Methods

HDMI Capture
Not set up
Single stream

Best for a budget, one-stream setup: one Android/Fire TV device and one fixed HDMI capture input. It cannot serve simultaneous channels.

HDMI Capture setup guide ↗ Set up ↓

Coverage

Source PrismCast HDMI ah4c Channels Next step
Amazon Prime Free Channels ○ ○ ○ audit needed of 117 Set up a method ↑
PBS ○ ○ ○ no channels yet Set up a method ↑
Spectrum ○ ○ ○ no channels yet Set up a method ↑
Vidaa Free TV ○ ○ ○ audit needed of 228 Set up a method ↑
Also supported — 8 sources not enabled on this server
Source PrismCast HDMI ah4c Channels Next step
DirecTV Stream ○ ○ ○ — Enable source →
ESPN ○ ○ ○ — Enable source →
Fubo TV ○ ○ ○ — Enable source →
NBCUniversal TVE ○ ○ ○ — Enable source →
Philo ○ ○ ○ — Enable source →
Sling Freestream ○ ○ ○ — Enable source →
The Roku Channel ○ ○ ○ — Enable source →
Warner Bros Discovery TVE ○ ○ ○ — Enable source →
● supported and live ○ supported, not live here – not verified for this method
PrismCast's browser capture works for any source exposing DRM license handling. HDMI and ah4c Capture use FastChannels Player's native bridge, which is re-tested one source at a time. Each live method's bridge playlist is on Feeds; import it alongside your regular feed, which excludes bridge-only DRM channels.

Settings

📺
FastChannels Player devices
Every Fire TV / Android TV device running the player — live status and one-click updates
Enable hardware capture
Enables the FastChannels Player companion app used by HDMI Capture and ah4c Capture on every device; it switches on automatically with either of them, and switching it off pauses both. It only applies to verified DRM sources: Sling, NBCUniversal TVE, PBS, Amazon Prime (free), DirecTV Stream, Vidaa, Philo, Roku, and Fubo.
Show captions when available
Renders an English subtitle/CC track when available. Takes effect on the next tune.
Devices are listed from the HDMI Capture IP, ah4c's tuner list, anything added here, and any device FastChannels has tuned. Updates install the player bundled with this FastChannels version over ADB.
📡
ah4c Capture
Let ah4c allocate a tuner, FastChannels Player device, and encoder for each concurrent tune
Use ah4c when several channels may run at once or each Fire TV/Android TV has its own encoder. ah4c selects the assigned TUNERn_IP; the exported scripts forward that device address to FastChannels for every tune.
Enable ah4c Capture
Publishes a separate ah4c Capture M3U on the Feeds page. Each tune uses ah4c’s assigned tuner instead of the HDMI Capture stream. Turning this on also turns on hardware capture above.
Where ah4c is reachable. Its /play/tuner/<channel> endpoint is what the generated M3U points at.
After updating FastChannels, use Update ah4c scripts so ah4c keeps starting FastChannels Player correctly. The Scripts column in the tuner check shows whether each tuner is up to date.
ah4c activity Checking…
Advanced: HDMI Capture device fallback
Normal ah4c operation uses its own TUNERn_IP values. The HDMI Capture device in the HDMI Capture card remains a compatibility fallback for an ah4c script that does not provide a tuner address.
📲
HDMI Capture
Single stream — one FastChannels Player device captured through one fixed HDMI encoder
Best for one concurrent stream. The FastChannels Player companion app runs on a Fire TV or Android TV device; its HDMI output is captured back into your DVR through a fixed encoder URL.
Enable HDMI Capture
Publishes the HDMI Capture M3U on the Feeds page once the device IP and capture stream URL below are saved. Turning this on also turns on hardware capture above.
adb port (:5555) is derived automatically. Required for HDMI Capture; also retained as a compatibility fallback when ah4c does not name a tuner device.
Install or update the player and change its sleep settings from the FastChannels Player devices card above; this device is listed there once saved.
Stop playback when nobody's watching
For HDMI Capture, stop playback after about five minutes without Channels DVR activity or a FastChannels /watch heartbeat. Leave this off for third-party clients pointed straight at an M3U. ah4c stops its assigned device through its own disconnect hook.
Fixed capture stream
Set the stream produced by the one HDMI encoder. With Channels DVR’s native capture:// source, use that device channel’s stream URL.
Where the captured bridge stream is read after the Player device is triggered. If the capture device is in Channels DVR, use the picker below instead of copying an M3U entry by hand.
No camera source in Channels DVR yet?
Create a native USB/HDMI capture source in Channels DVR, then FastChannels will select its exported stream automatically. Confirm the new capture channel plays in Channels before relying on it for bridge playback.
Uses capture://v4l2/video0/hw:1,0/?framerate=60. Device names are from the computer running Channels DVR, not the FastChannels container.
Need to paste it manually instead? In Channels DVR, open Manage → Export → Copy M3U, open that URL, then copy the non-comment /stream.mpg line directly below your capture channel's #EXTINF entry. Paste it above and save.
🔓
PrismCast Capture Browser capture
Route DRM channels through a PrismCast capture server so they play in Channels DVR
Enable PrismCast Capture
Use PrismCast's Chrome capture method for DRM-capable sources. Bridge mode above must also be enabled before its output is published.
Your PrismCast server (default port :5589). When both toggles are enabled, DRM channels go through PrismCast and everything else streams direct. Like the regular feed, it splits into a standard playlist at https://fast.homeridge.net/m3u/prismcast (pairs with /epg.xml) and a Gracenote one at https://fast.homeridge.net/m3u/prismcast/gracenote.
Where PrismCast's Chrome reaches this server's /watch pages. DRM needs a secure context: use loopback (http://127.0.0.1:5523) when PrismCast's Chrome runs on the same host as FastChannels' published port, such as a native/Homebrew PrismCast install with FastChannels in Docker. Use trusted HTTPS when PrismCast runs on another host. Blank reuses the Server URL.
A plain http:// LAN IP isn't a secure context — DRM won't decrypt.
Caps the video variant loaded by the browser before PrismCast captures it. Lower this on underpowered servers if DRM streams black out or PrismCast reports buffering/recovery.