full diff

place.stream.playback.getLivePlaylist

stream.place +2 −1
From
bafyreignbz34y2yydgsnprxnj7qzye62vadcwe4nkepqpsg5nuyhakl34i indexed 2026-11-04 01:29 UTC View this version
To
bafyreia5tcagzk52nd333nrbadbebw2emh6bwr4fpjyaanfofajdjnufy4 indexed 2026-08-20 16:30 UTC View this version

Compatibility

backward compatible Backward compatible. 2 non-breaking changes.

Non-breaking changes (2)
  • AddedVertex AddedVertex { vertex_id: "place.stream.playback.getLivePlaylist:output" }
  • AddedEdge AddedEdge { src: "place.stream.playback.getLivePlaylist", tgt: "place.stream.playback.getLivePlaylist:output", kind: "prop", name: Some("output") }

Migration guidance

Added

  • AddedVertex { vertex_id: "place.stream.playback.getLivePlaylist:output" }

Notes

  • Non-breaking: AddedEdge { src: "place.stream.playback.getLivePlaylist", tgt: "place.stream.playback.getLivePlaylist:output", kind: "prop", name: Some("output") }

Changes

11{
22 "$type": "com.atproto.lexicon.schema",
33 "defs": {
44 "main": {
55 "description": "Get an HLS CMAF playlist for a live stream. 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 getLiveSegment. Segments come from an in-memory sliding window fed as the stream is ingested (or replicated to this node), so a playlist is only available while the stream is live here.",
66 "errors": [
77 {
88 "description": "No live segments are currently windowed for this streamer on this node.",
99 "name": "StreamNotLive"
1010 },
1111 {
1212 "description": "The requested track ID is not present in the live stream.",
1313 "name": "TrackNotFound"
1414 },
1515 {
1616 "description": "The streamer's account is unavailable (e.g. banned).",
1717 "name": "StreamUnavailable"
1818 }
1919 ],
2020 "output": {
21 "encoding": "*/*"
21 "encoding": "*/*",
22 "schema": null
2223 },
2324 "parameters": {
2425 "properties": {
2526 "sid": {
2627 "description": "Opaque playback session identifier. Omit on the master playlist request; the server generates one and threads it through the sub-playlist + segment URLs it returns, for view-count correlation.",
2728 "type": "string"
2829 },
2930 "streamer": {
3031 "description": "The streamer to play back: a DID (did:plc/did:web/did:key) or a Bluesky handle, which is resolved to its DID.",
3132 "type": "string"
3233 },
3334 "track": {
3435 "description": "Track ID (stringified u32 matching the MUXL container) for a single-track media playlist. Omit for the master playlist.",
3536 "type": "string"
3637 }
3738 },
3839 "required": [
3940 "streamer"
4041 ],
4142 "type": "params"
4243 },
4344 "type": "query"
4445 }
4546 },
4647 "id": "place.stream.playback.getLivePlaylist",
4748 "lexicon": 1
4849}