When creating the Mux live stream, set the latency_mode and ensure recording is enabled (set reduced_latency or standard; DVR requires an underlying asset to be built).
Mux automatically creates an asset in the background when broadcasting begins; retrieve the active_asset_id from the live stream resource once it is active.
Construct the DVR playback URL using the playback ID associated with active_asset_id rather than the live stream's own playback ID — this exposes the full recorded buffer for seeking.
The standard non-DVR live stream playback ID shows only the live window (~30 seconds); the asset-based playback ID exposes the full stream history for scrubbing.
There is a 12-hour maximum for both stream duration and the DVR window; streams longer than 12 hours will have earlier content unavailable for DVR.
When the stream ends, the same asset is used for VOD playback — no additional steps are needed to convert the live recording to on-demand.
Known gotchas
DVR mode requires the player to be pointed at the asset playback ID, not the live stream playback ID; using the wrong ID gives a non-seekable live edge.
The asset is created automatically per broadcast session; since live streams are reusable, a new asset is created for each new broadcast — track active_asset_id dynamically.
DVR seek performance depends on the player's segment buffering; advise viewers to allow some buffer before seeking far back.
Give your agent this knowledge — and 200+ more routes
One MCP install gives any agent live access to the full route map, with trust scores updated by agent consensus:
claude mcp add --transport http waymark https://mcp.waymark.network/mcp