media delivery 1. Stream start time = time it takes for the video to start playing after you press ‘play’ 2. Hand–waving latency = time delay between an action occurring in front of the camera and the same action being visible on the end-user device. 3. Stream start time IS NOT EQUAL to latency. A stream may take 5s to start and only be 2s behind live. Conversely, a stream can start in 2s and be 5s behind live. 4. A live player has only ONE CHANCE to build a buffer and that is BEFORE it starts playback. 5. Live latency in segmented media streams is a modulus of the segment duration. 6. Low latency is always a trade-off against stability of playback. Low latency == small buffers.
CMAF LLC WebRTC Playback support in HTML5 NO YES YES YES YES Latency LOW MEDIUM LOW LOW VERY LOW Allows multi-bitrate playback YES YES NO YES NO Supports DRM NO YES YES YES NO Full Control over start-up logic YES MAYBE YES MAYBE NO Quality assured delivery YES YES YES YES NO Cacheable by HTTP servers NO YES NO YES NO RTMP WEBSOCKETS
stream latency 1. Reduce encoding delay • Encoder configuration setting trading quality for speed 2. Reduce segment duration • 2s is stable and good quality. 1s can also be used with little quality degradation for mid-to- low motion scenes. 3. Reduce ingest upload time • Ingest cluster located close to encoding facility 4. Reduce CDN transfer time • CDN mid-tier designed for speed of throughput 5. Reduce last mile RTT • Edge server located close to end-user. 6. Reduce player forward buffer at start-up • Better player design, more conservative ABR rules to lower risk of rebuffering 7. Use CMAF low latency segments, decoupling request units from switching boundaries.
• Microsoft and Apple, collaborating with MLBAM, Cisco, Akamai and Comcast, presented a proposal to MPEG in Feb 2016 to proposed a new media format which would be common between HLS and DASH. • MPEG approved the establishment of a new standard: • ISO/IEC 23000-20 – Common Media Application Format • This standard moved to final draft status in August 2017.
fMP4 container, specifically ISO/IEC 14496-12:201. • Common Encryption (CENC) - ISO/IEC 23001-7: 2016 • Allows both“cenc”and“cbcs”modes of operation • Supports the MPEG codec suite of AVC (ISO/IEC 14496-10), AAC (ISO/IEC 14496-3) and HEVC (ISO/IEC 23008-2) codecs but allow other codecs (such as VP9 or multichannel audio) to be signaled. • Supports captioning and subtitles • WebVTT, TTML IMSC1, CEAx08 • Has a low latency mode of encoding, copied from the DASH broadcast profile.
LIVE Encoder producing 2s segments TIME Start Now 4 Lowest latency 3s latency 2s buffer, 0s startup 5 a 5 b 2s CMAF segments with 500ms chunks 1 a 1 b 1 c 1 d 2 a 2 b 2 c 2 d 3 a 3 b 3 c 3 d 4 a 4 b 4 c 4 d 5 a 5 b 5 c 5 d 6 a 1s latency 1s buffer, 0s startup Latest available 500ms buffer, 1s startup < 500ms latency Deferred playback Segmented Stream Startup with CMAF low latency
be in 1H18? 10 sec HLS/DASH with 2 sec segments 4-8 sec HLS/DASH with 1 sec segments 1 to 3 sec HLS/DASH with CMAF LLC Source : Wowza / Streaming Media Magazine 0.5 to 1 sec WebRTC JUST DON’T BE HERE Latency - where should you be in 2018?
fragment sizes automatically reduce the hand-waving latency for segmented media. 2.Low latency requires modified player behavior for startup and buffer management 3.Player startup behavior is a large contributor to overall latency 4.CMAF Low Latency Chunks have a great potential for reaching Low Latency at scale, with cacheable content that is compatible with existing HTTP CDNs. 5.WebRTC, if it were scaled out to a broadcast network, offers the potential for robust sub-second streaming.