Here’s What You Need to Know About Streaming Protocols

Eighty percent of people would rather watch a live stream than read a blog post. The typical viewer watches a live stream for at least twice as long as they stick with a standard video. The conclusion is simple: why not give live streaming a try? Yes, streaming live video does require some degree of technical understanding. To that end, this article introduces readers to the concept of streaming protocol concepts and applications.

Live streaming solutions are increasingly popular, and for good reason! Live video is engaging, fresh, personal, and easy. Here at DaCast, we aim to educate our readers about live streaming, including the technology that worksbehind the scenes. In simple streaming cases, a streaming protocol isn’t something you’ll need to consider. When using consumer-grade platforms like Periscope or Facebook, for example, the streaming protocol is invisible to you.

However, many users require more control and deeper features. Usually, this means using a professional online video platform with live streaming capability. These platforms add a lot of power, and they are a bit more complex. For intermediate-advanced streamers, however, understanding streaming protocol options marks a significant step toward creating better streams.

Let’s turn now to a basic review of streaming protocol basics, before we turn to a review of several different protocols.

Understanding streaming protocol basics

So what is a streaming protocol? Common protocols include MPEG-DASH, HTTP Live Streaming (HLS), Smooth Streaming, and HDS. A streaming protocol is a standardized method for delivering multimedia (usually video or audio) over the internet.

streaming protocolEssentially, a streaming protocol defines a specific method for sending “chunks” of content from one device to another. It also defines the method for “reassembling” these chunks into playable content on the other end.

That points toward one important aspect of streaming protocols: both the output device and the viewer have to support the protocol in order for it to work. If, for example, you’re sending a stream in MPEG-DASH, but the video player on the device to which you’re streaming doesn’t support MPEG-DASH, your stream won’t work.

For this reason, standardization is important. There are currently four major video streaming protocols in widespread use, which we’ll look at in detail in a moment. But first, let’s clear up some potential confusion.

Streaming protocol vs. codec

A streaming protocol is different from a “codec.” Codec stands for “compressor/decompressor.” A codec is a method for making video files smaller. Raw video is made up of many still images played quickly in sequence (typically at 30 frames per second). Now, imagine thirty 2 megapixel photos—that’s a lot of storage space!

streaming protocolThe solution is compression, which uses mathematical algorithms to intelligently discard data that isn’t very important. For example, if a corner of the video is black, and remains black for a few seconds, you can toss the individual pixel data and just include a reference instead.

Compression standards exist separately from streaming. Non-streaming media also uses compression. However, certain streaming protocols only support specific codecs. We’ll note this below.

Streaming protocol vs. transport format

Another source of potential confusion is transport format. This refers to the “container” or “package” that’s used for video transmission. A container format usually contains compressed video, compressed audio, and metadata such as subtitles, timing info, etc.

This data is transmitted via a streaming protocol. The transport format defines how the content is stored within the individual chunks of data as they are streamed. Common transport formats or containers for streaming video include MP4 (fragments) and MPEG-TS.

MPEG-DASH (3GPP)

Overview

streaming protocolNow, let’s begin to take a look at the actual streaming protocols. First up is MPEG-DASH. This is the latest of the streaming protocols and one that is beginning to see broader adoption.

MPEG-DASH, like the other protocols here, uses standard HTTP web servers. This reduces the cost and technical difficulty of implementation when compared to legacy methods of streaming such as RTP.

It’s also an adaptive bit-rate (ABR) protocol. This means it will automatically detect changes in the internet connection speed of the viewer and serve the best available quality video at any given time. This reduces buffering. MPEG-DASH is also an open standard that isn’t controlled by any one company.

Video codecs supported

  • H.264 (the most common codec)
  • H.265 / HEVC (the next generation successor)
  • WebM
  • VP9/10
  • Any other codec (MPEG-DASH is codec agnostic)

Audio codecs supported

  • AAC
  • MP3
  • Any other codec (MPEG-DASH is codec agnostic)

Transport/package format

  • MP4 fragments
  • MPEG-2 TS

Playback support

  • Native support on Android devices
  • Plays back on most Samsung, LG, Philips, Panasonic, and Sony TVs made after 2012
  • Works on Chromecast
  • Supported on YouTube and Netflix
  • Not natively supported via HTML5, but players can be implemented via Javascript and Media Source Extensions

Segment duration

  • Variable

Apple HTTP Live Streaming (HLS)

 

Overview

HLS streaming protocol is an alternative protocol developed by Apple. Today, HLS is the most widely used streaming protocol on the internet. Like MPEG-DASH, HLS is an adaptive bit-rate protocol and also uses HTTP servers. HLS is an evolving specification, as Apple adds features regularly.

HLS is one of the protocols that DaCast uses.

Video codecs supported

  • H.264
  • H.265 / HEVC (added to the HLS protocol in spring 2017)

Audio codecs supported

  • AAC
  • MP3

Transport/package format

  • MPEG-2 TS

Playback support

  • iOS and MacOS devices
  • Safari, Chrome, Firefox, and Edge web browsers
  • Many set-top boxes, such as Roku
  • Many online video players, such as JW Player and the DaCast all-device video player

Segment duration

  • 10 seconds (can be manually reduced as part of reducing latency)

Microsoft Smooth Streaming

Overview

streaming protocolSmooth Streaming is a streaming protocol that Microsoft developed in 2008 to meet early needs for an adaptive bit-rate streaming protocol.

To deploy Smooth Streaming requires working with Silverlight, Microsoft’s proprietary developer plugin framework. One strength of Smooth Streaming is support for PlayReady DRM to thwart piracy.

Video codecs supported

  • H.264
  • VC-1

Audio codecs supported

  • AAC
  • WMA

Transport/package format

  • MP4 fragments

Playback support

  • Browsers with the Silverlight plugin
  • XBox
  • Windows Phone
  • iOS devices
  • Windows computers
  • Many Smart TVs

Segment duration

  • 2-4 seconds

Adobe HTTP Dynamic Flash Streaming (HDS)

Overview

The final streaming protocol we’ll look at here is Adobe’s answer to the adaptive bit-rate need, HDS.

streaming protocolHDS evolved from Adobe’s original standard for streaming Flash video, RTMP (which is often still used for stream ingest). However, HDS has some major advantages. These include the adaptive bit-rate feature, as well as the ability to cache content on browsers and CDNs to reduce load on servers.

HDS requires Flash, and thus doesn’t work on iOS devices. Yet it is still widely used because it delivers some of the lowest latency in the industry. The DaCast OVP uses HDS for viewers with Flash player for this reason. Our platform also pushes HLS video streams to those who don’t support HDS.

Video codecs supported

  • VP6
  • H.264

Audio codecs supported

  • MP3
  • AAC

Transport/package format

  • MP4 fragments

Playback support

  • Any device with Flash player installed
  • Adobe AIR applications

Segment duration

  • 2-4 seconds
[Tweet “Let’s compare streaming protocol: HLS, MPEG-DASH, HDS, and Smooth Streaming. #onlinevideo #livestreaming”]

Conclusion

We know that the world of live streaming can be a very confusing place. Becoming an expert requires knowledge of not just streaming protocol but also codecs, container formats, CDNs, video workflows, and much more. That’s why we’re here to help. Articles like these aim to give you a good grounding in the technology of live streaming so that you can worry less about these complexities and more about producing successful streams.

In this blog, we’ve gone over the basic functionality of four of the most popular streaming formats: MPEG-DASH, HDS, HLS, and Smooth Streaming. Each streaming protocol has an upside and a downside, depending on the specifics of your situation. Whom you are trying to reach—and which devices they use—is especially important to know.

However, HLS is a good baseline for most use-cases. It remains the most popular streaming protocol for good reason. That’s why it, along with HDS, is our default protocol here at DaCast. However, technology is always evolving, and we’ll surely be using different methods in the future. To stay up-to-date on these changes, follow our blog for more articles like this! For regular tips on live streaming and exclusive offers, join our LinkedIn group.

Not yet a DaCast customer but interested to learn more? Our streaming solutions include secure video upload, lots of customizeable features, and even China video hosting for VOD. Why not take advantage of our 30-day free trial to test out the DaCast platform for yourself?

button

Thanks for reading and, as always, good luck with your broadcasting!

By Max Wilbert.

Leave a Reply

Your email address will not be published. Required fields are marked *