Skip to main content
Clips cut a segment from an ongoing live stream using its DVR buffer. Use them to publish a highlight before the broadcast ends. Clips are temporary — they expire after up to 4 hours — but can also be saved as permanent VODs.
Animation showing a live stream being cut into HLS and MP4 clips in real time
An API token is required. DVR must be enabled on the stream (dvr_enabled: true). Clips are cut from the DVR buffer — the stream must be live and actively receiving an ingest signal.

Enable DVR

dvr_duration sets the DVR buffer size in seconds (30–14400). The clip duration cannot exceed this window. Enable DVR by updating the stream:
The API returns the updated stream object with dvr_enabled: true and dvr_duration: 3600.

Create a clip

Cut a segment from an ongoing live stream. Specify duration in seconds and optionally start as a Unix timestamp. The clip becomes accessible at start + duration — requesting it before that returns 425 Too Early. An expired clip returns 404.

Create a clip from an earlier segment

To cut a segment from the past, pass start as a Unix timestamp:
To save the clip as a permanent VOD, set vod_required: true. When the clip is created, the response includes a video_id. Use GET /streaming/videos/{video_id} to retrieve the permanent HLS/MP4 URLs once transcoding completes.

List clips

Retrieve all non-expired clips for a stream.