Current Streaming Through RTMP
RTMP, or Real-Time Messaging Protocol, has historically been the most common protocol utilized for streaming video data over the internet. Originally developed by Macromedia for use with Flash, the protocol faces many challenges influencing streaming reliability, including its lack of support for HEVC encoding, inability to transmit at high resolutions, and vulnerability to bandwidth issues. Because RTMP transmits as a continuous, single stream of data, low bandwidth may often cause interruptions or complete stream failure.
MPEG-DASH: Modern Alternative to RTMP
As many CDNs and browsers move away from support for Flash, the Motion Picture Experts Group (MPEG) developed a new technique for media streaming: DASH, or Dynamic Adaptive Streaming over HTTP. Rather than relying on a consistent, continuous stream, DASH utilizes fragmented “chunks” sent across a TCP/IP connection as file segments along with an index for viewers to download in sequence. This segmented transfer also allows for adaptive streaming, which enables dynamic adjustment of a stream to different bitrates (or sizes) of the media stream, providing the most stable end-user experience with minimal buffering, even at low connection speeds.
While DASH is a much more modern (and inherently more reliable) method for streaming, it cannot guarantee for resiliency alone. Unlike RTMP, DASH does not define how transmission should be completed, instead, it leaves implementation to the streaming platform. Without a designed application layer, an encoder will likely push segments once via TCP, but if there are any network issues along the transmission path exceeding the TCP retransmission timeout (a few seconds), content will still be missing on the receiving server. So, while it would be better than RTMP, it wouldn’t be as good as it could be or have much resiliency – that’s where the Resi Live Stream Platform comes in.