Skip to content

Get an HLS CMAF playlist for a video. Returns a master playlist when `track` is omitted, or a single-track media playlist when `track` is supplied. The playlist references each segment + per-track init segment via getVideoBlob, addressed by content hash. The `uri` is an AT-URI pointing at a playable record — today only place.stream.video records are supported, but the surface is collection-agnostic so other record types can join later.

GET
/xrpc/place.stream.playback.getVideoPlaylist
uri
required

AT-URI of the record to play back (e.g. at://did:plc:…/place.stream.video/).

string format: uri

AT-URI of the record to play back (e.g. at://did:plc:…/place.stream.video/).

track

Track ID (stringified u32 matching the MUXL container) for a single-track media playlist. Omit for the master playlist.

string

Track ID (stringified u32 matching the MUXL container) for a single-track media playlist. Omit for the master playlist.

start

Start time in milliseconds from the beginning of the video. Defaults to 0. For a place.stream.video record whose source is a place.stream.media.defs#sourceClip, this is in the clip’s local timeline (0 == the clip’s start).

integer

Start time in milliseconds from the beginning of the video. Defaults to 0. For a place.stream.video record whose source is a place.stream.media.defs#sourceClip, this is in the clip’s local timeline (0 == the clip’s start).

end

End time in milliseconds. Omit to include all remaining content. Local to the clip’s timeline when playing back a sourceClip record.

integer

End time in milliseconds. Omit to include all remaining content. Local to the clip’s timeline when playing back a sourceClip record.

sid

Opaque playback session identifier. Omit on the master playlist request; the server generates one and embeds it in every sub-playlist URL it returns. Players never have to construct it themselves — they just follow the URLs the master playlist hands them, which carry the sid into media-playlist + segment requests. Used downstream to correlate a player’s playlist + segment fetches for view-count accounting.

string

Opaque playback session identifier. Omit on the master playlist request; the server generates one and embeds it in every sub-playlist URL it returns. Players never have to construct it themselves — they just follow the URLs the master playlist hands them, which carry the sid into media-playlist + segment requests. Used downstream to correlate a player’s playlist + segment fetches for view-count accounting.

Success

Bad Request

object
error
required
One of:
string
message
required
string