HLS¶
media.play.hls
Transport¶
HTTP or HTTPS; playlists and fragments use separate requests over TCP.
Supported codecs¶
Video
- H.264
- HEVC
- AV1
Audio
- AAC
- MP3
- MP2
- AC-3
- E-AC-3
- Opus
This list describes Sapsan output; decoding support depends on the player. Tracks also need valid codec parameters for packaging in the selected container.
Every Sapsan stream is immediately available over HLS (fMP4/CMAF) without extra configuration. Live streams get LL-HLS with partial segments by default.
Structured text tracks generated by Sapsan are delivered as WebVTT; source teletext or DVB bitmap subtitles alone do not constitute a ready text track. The corresponding extraction or recognition must be enabled first.
When a text subtitle track is present, LL-HLS is disabled for the entire stream: HLS uses ordinary segments. Player codec support and LL-HLS availability are separate conditions.
Playback URLs¶
| What | URL |
|---|---|
| Master playlist (all qualities) | http://server/streaming/v/<stream>/index.m3u8 |
| Single track playlist | http://server/streaming/v/<stream>/variant/<track>/index.m3u8 |
| Rewind | http://server/streaming/v/<stream>/rewind/<seconds-ago>/index.m3u8 |
| Archive by absolute time | http://server/streaming/v/<stream>/index.m3u8?from=<utc_ms>&to=<utc_ms> |
The master playlist carries qualities with RESOLUTION, FRAME-RATE, and CODECS; audio goes into rendition groups (EXT-X-MEDIA). G.711 audio (PCMA/PCMU) is not served over HLS — transcode such streams to AAC first.
HLS over MPEG-TS¶
For set-top boxes that do not play fMP4, the same stream is served as HLS with MPEG-TS segments. The URLs are the same as above, with a form segment after the stream name:
| Form | Master playlist | For whom |
|---|---|---|
| audio as separate tracks | http://server/streaming/v/<stream>/ts/index.m3u8 |
set-top boxes that understand EXT-X-MEDIA |
| audio inside the video segment | http://server/streaming/v/<stream>/ts/mux/index.m3u8 |
old set-top boxes: video and audio as one program in every segment |
Select archive playback in either layout with ?from=<utc_ms>&to=<utc_ms>. Rewind is available for separate-track TS: http://server/streaming/v/<stream>/ts/rewind/<seconds>/index.m3u8. Mixed ts/mux/ has no rewind URL.
In ts/mux/, each video forms a variant containing all published audio, up to ten audio tracks. Subtitles are omitted. MPEG-TS does not support LL-HLS. Both TS HLS layouts have a narrower codec list than continuous MPEG-TS output:
- H.264
- HEVC
- AAC
- MP3
- MP2
- AC-3
- E-AC-3
Which form the Flussonic URLs (/<stream>/index.m3u8, video.m3u8 and others) serve is described on the Flussonic compatibility page. Incomplete ts/mux/ segments and builds that bypass the cache are visible in the statistics.
Tokens in playlists¶
If playback is token-protected, ?token= is automatically appended to every nested playlist URL: variants, init segments, segments, parts, and preload hints. The player only needs to open the master playlist with the token.
Segment count¶
The live playlist length is set by the stream's segments parameter:
Set these options through central in the streamer config.
streams:
- name: tv1
inputs:
- udp: {host: 239.0.0.1, port: 5000}
segments: 6