Main principles
Clips let you cut a segment from an ongoing live stream without waiting for the broadcast to end or the full recording to complete. This is useful for quickly publishing highlights from sports, news, concerts, or other live events. Why use clips?- Deliver important moments to viewers instantly, while the event is still live.
- Share highlights across platforms without waiting for full VOD processing.
- Convert a short live excerpt into a standalone asset in HLS (.m3u8), MP4, or as a permanent VOD.

- Sports highlights – publish goals, replays, or decisive moments immediatelly after they happen.
- News coverage – cut and share breaking news segments without waiting for the full recording.
- Live performances – highlight songs, interviews, or standout moments from concerts or shows.
Clips vs. traditional VOD
Feature | Traditional VOD | Clips |
---|---|---|
Source | Recording of the full live stream | Raw data from the ongoing live stream |
Availability | Only after the live stream has ended and transcoding completes | Immediately after the selected segment is copied from DVR |
Use case | Full replays, long-term storage, on-demand catalogs | Highlights, instant sharing, short previews |
Formats | HLS, DASH, MP4 (transcoded renditions) | HLS, MP4 |
Latency to publish | Minutes (depends on stream length & transcoding time) | Seconds (available right after clip duration ends) |
Lifetime | Permanent until manually deleted | Temporary (controlled by expiration ) |
Storage impact | Requires full file storage | Lightweight, stored in server memory until expiration |
Conversion to VOD | N/A (already VOD) | Can be converted to permanent VOD with vod_required: true |
Best for | Full-event replays, archives, monetization catalogs | Instant highlights, social media snippets, news flashes |
Clips lifetime
Instant clips are a copy of the stream from DVR buffer. They are stored in memory for a limited time, after which the clip ceases to exist and you will receive a 404 on the link. Limits that you should keep in mind:- The clip’s lifespan is controlled by
expiration
parameter. - The default expiration value is 1 hour. The value can be set from 1 minute to 4 hours (but not more than the DVR duration of the stream, see the section below).
- If you want a video for longer or permanent viewing, then create a traditional VOD based on the clip. This way you can use the clip’s link for the first time, and immediately after the transcoded version is ready, you can change by yourself it to a permanent link of VOD.
- The clip becomes available only after it is completely copied from the live stream. So the clip will be available after
start + duration
exact time. If you try to request it before this time, the response will be error code 425 “Too Early”.
Cutting a clip from live stream
API method –PUT /streaming/streams/{stream_id}/clip_recording
dvr_enabled: true
.
You can generate a clip from any part of DVR window by specifying the start time and duration. Read more about DVR window on the page DVR, Pause and rewind the live streams.
Therefore, to create a clip, the DVR must have the necessary data for timeframe you would like to save. However, once a clip is created, it exists as an independent copy and remains accessible until its time expires, even if the DVR window has already expired.
Getting a clip
Instant clip becomes available for viewing in the following formats:- HLS .m3u8 with ABR,
- MP4 in different renditions,
- VOD in video hosting with a permanent link to watch video.
master
in the URL with a value from the renditions list to access an exact bitrate/quality. This applies to both HLS and MP4 outputs.
Example:
- HLS ABR:
https://cid.domain.com/rec/111_1000/rec_eycnb3utc6bk_qsid42_master.m3u8
- HLS 360p:
https://cid.domain.com/rec/111_1000/rec_eycnb3utc6bk_qsid42_media_0_720.m3u8
- MP4 max:
https://cid.domain.com/rec/111_1000/rec_eycnb3utc6bk_qsid42_master.mp4
- MP4 360p:
https://cid.domain.com/rec/111_1000/rec_eycnb3utc6bk_qsid42_media_2_360.mp4
Getting permanent VOD
To get permanent VOD version of a live clip use this parameter when making a request to create a clip:vod_required: true
.
Later, when the clip is ready, grab video_id
value from the response and query the video by regular GET /streaming/video/
endpoint.