Playing a stream¶
A running stream serves itself over all the main protocols at once — there is nothing to enable, the address depends only on the stream's name. The viewer comes to the installation's address; in a cluster, the playback balancer takes them to the right streamer.
The addresses¶
| Protocol | Address |
|---|---|
| HLS | /streaming/v/<name>/index.m3u8 — the main path for web, mobile apps and Smart TV |
| DASH | /streaming/v/<name>/Manifest.mpd |
| MPEG-TS over HTTP | /streaming/mpegts/<name> — set-top boxes and VLC |
| fMP4 stream | /streaming/fmp4-stream/<name> — continuous fMP4, handy for tooling |
| Embedded player | /streaming/embed/<name> — a ready-made player page |
| Stream info | /streaming/info/<name> — JSON with the tracks and bitrates |
If the stream carries a transcoder with a quality ladder, HLS and DASH serve every quality and the player switches between them on its own.
Two ways of playing live on other pages: serving over SRT — on the restreaming page, watching the archive with rewind — on the DVR page.
Playback in a cluster¶
The /streaming addresses are the delivery of one specific machine: every streamer serves them itself, and there is no balancing on that path. In a cluster you do not need to pin the viewer to a machine — central has a playback balancer: the same addresses, only with the /playback prefix instead of /streaming, on the central address:
http://<central address>/playback/v/<name>/index.m3u8
http://<central address>/playback/embed/<name>
The balancer finds a live streamer the stream is placed on and takes the viewer there in one of two ways:
- Redirect — the player gets a 302 to the streamer's public payload URL and talks to the machine directly from then on; central takes no part in the traffic.
- Proxy — the streamer has no public address set, and central relays the media through itself.
The way is chosen by the streamer's delivery settings — see Connection and delivery.
If the cluster has edge streamers, the balancer prefers them: viewers go to the edges, and the capture streamers serve only the intra-cluster feeds. Streamers in different cities and networks are matched to viewers by CDN zones.
Playback protection applies on this path too: the policy is enforced by the streamer the balancer took the viewer to.
The embedded player¶
/streaming/embed/<name> is a complete player page: open it in a browser for a quick check, or embed it into your site with an iframe. The ?autoplay=false parameter disables autostart.

The same player shows the stream on the basic settings tab of the console.
Check the delivery¶
The fastest check is the playlist:
curl -s http://<address>/streaming/v/<name>/index.m3u8 | head
A live stream answers with a manifest listing the qualities (#EXT-X-STREAM-INF). A manifest of nothing but the header means the stream exists but has nothing to serve: almost always raw codecs without a transcoder.
- 404. There is no stream with that name — the name goes into the address literally.
- The manifest is there, the player does not play. Look at the codecs in
/streaming/info/<name>: browser players read H.264/AAC. - The stream is not green. The source first, playback second.