The online broadcasting industry is constantly evolving to enhance the streaming experience for broadcasters and viewers alike. RTMP and HLS are two protocols that software engineers have tested in a few different roles in an attempt to optimize the live streaming process.
Although RTMP (real-time messaging protocol) is currently the most popular protocol for ingest, HLS has become a viable option for some streamers, as well.
In this blog post, we’re going to take a look at the HLS protocol and how it works for HLS ingest. From there, we’ll discuss how encoding comes into play before we cover a few hardware and software encoders that are compatible with HLS ingest.
Table of Contents
- What is HTTP Live Streaming (HLS)?
- What is HLS Ingest and Why is it Important?
- The Role of Encoders in Live Streaming
- Software vs. Hardware Encoders
- Top Hardware Encoders for HLS Ingest
- Top Encoding Software for HLS Ingest
- HLS Ingest on Dacast
- Encoder Settings on Dacast
What is HTTP Live Streaming (HLS)?
HLS stands for HTTP Live Streaming and refers to the streaming video protocol that plays different roles in live streaming. It works by splitting videos into 10-second chunks that can be easily broadcasted in real-time.
HLS was developed by Apple to work with an HTML5 video player. It was originally launched to replace RTMP, which delivered live streams to Adobe’s Flash player. In the years since its launch, developers have updated the protocol, and it has become nearly essential for online video.
One of the most attractive features of HLS is that is compatible across just about any device and operating system. That means that it works seamlessly on smartphones, tablets, computers, and other internet-enabled devices. It works well with Apple operating systems, Windows, and Linux, as well.
What is HLS Ingest and Why is it Important?
Now that you understand what HLS is, it’s time to delve into HLS ingest. In order to understand HLS ingest, you must have some idea of how to live streaming video functions.
The workflow for a live online broadcast looks something like this:
- Camera(s) capture video and audio
- The video may be sent to a switcher or mixer, which edits multiple sources together and adds graphics and other effects as needed
- The video then goes to the live streaming encoder, which converts it into a broadcastable format
- The encoded video is sent to a live streaming solution, which may partner with a CDN provider to deliver the stream to the final destination
- Finally, the viewer receives the live broadcast on their device via an HTML5 video player
For the last 5 years or so, most live streams have reached viewers using the HLS protocol, and most live streams have been ingested from the encoder to the video streaming solution using the RTMP protocol.
Now, however, end-to-end HLS delivery is becoming more popular, meaning that HLS is used for both delivery and ingest. When HLS is used at the encoder stage, rather than only at the delivery stage, it is referred to as HLS ingest.
Although end-to-end HLS delivery and ingest provides a seamless streaming experience, there are a couple of things that are preventing this workflow from becoming the standard.
For one, RTMP ingest is capable of lower latency than HLS ingest. This means that using a combination of both protocols gives you access to low-latency streaming while still maximizing compatibility.
Additionally, RTMP encoders are more readily available than HLS encoders. Since RTMP and HLS transport video just a little bit differently, it’s important that you use an encoder that is compatible with the type of video ingestion that you’re using.
There are a few HLS-compatible encoders on the market, so this is not a major issue. You just need to be intentional when selecting your encoder.
The Role of Encoders in Live Streaming
Encoders play an important role in the live streaming process. As we briefly mentioned, encoders, covert RAW video files from your cameras/mixers into a format that is suitable for live broadcasting.
When using HLS ingest, encoding also involves splitting the video into short segments for sequential broadcasting. With this process, the segments are ultimately put back together into a smooth stream by the end-user device.
Encoders are an essential part of live streaming because otherwise, you’d be left with bulky video files that could not be streamed over the internet.
With this information in mind, let’s shift gears and start looking at encoders in more concrete detail.
Software vs. Hardware Encoders
There are two types of encoders available for broadcasting: hardware encoders and software encoders.
Software encoders are applications designed to run on computers. There are also stream software solutions available for mobile devices and tablets. It is typical for streaming software to have tools for mixing, editing, and other functions in addition to encoding tools.
In general, software encoders are more popular than hardware. Using a software encoder allows you to build your own configuration, use existing computers and workstations, and swap out components to upgrade or repair your machines.
Hardware encoders, on the other hand, are dedicated pieces of equipment that run independently of a computer. These devices allow you to plug in cameras and other equipment in one end, and output streams to the internet via Ethernet or Wi-Fi. They come in the form of rack-mounts, as well as mobile camera-mount and backpack-mount sizes.
Hardware encoders are typically used in high-end production scenarios. In certain cases, they can be faster, more durable, and more reliable than software encoders, and the price tag reflects that. However, software encoders have greatly improved over the past decade, and many professional broadcasters rely on them today.
Top Hardware Encoders for HLS Ingest
There are a variety of hardware encoders on the market. However, do note that very few of these have native support for HLS ingest live streaming. Almost all encoders output video in RTMP or other formats.
However, there are a number of HLS-compatible hardware encoders. These include:
Typically, these encoders cost in the range of $2,000-$3,000 and up. They offer native support for high-end SDI inputs and other features.
Top Encoding Software for HLS Ingest
There are many different types of software encoders on the market today, from different manufacturers, but as with hardware, most of these don’t support HLS ingest streaming.
HLS Ingest on Dacast
This HLS encoder is unique among streaming software solutions on the market today because it is free, whereas most other software encoders are paid tools. Additionally, the open-source nature of OBS Studio gives it a wide range of functionality.
Another major advantage of the OBS Studio HLS encoder is that it brings low latency live streaming to mid-range hardware. Many software encoders available today require high-end workstation-grade hardware.
This HLS encoder is lightweight and can run on consumer-grade laptops or desktops. Only an i5 or better processor and 8 GB of RAM are required. This makes it much easier to set up professional-grade live streaming while keeping your budget reasonable.
Yet another benefit is how easy this software is to use. Most stream software solutions require extensive configuration, but we’ve automated most of the common settings for the Dacast version of OBS Studio.
This means that you can start a stream by simply connecting a video source, pasting your Dacast stream URL, selecting a quality preset, and clicking “Go Live.” Even less experienced broadcasters can go live in just a few moments.
Want to access all of our features and see how our streaming software solution can help you reach your streaming needs? Try Dacast risk-free for 30 days with our free trial.
Encoder Settings on Dacast
Before we wrap things up, let’s quickly review some of the required encoder settings for streaming with Dacast.
These settings are required for live streaming on our platform, regardless of your selected resolution and bitrate.
|VIDEO CODEC||H.264 (x264 may work)|
|FRAME RATE||25 or 30|
|KEYFRAME INTERVAL||2 secs (or 2x frame rate)|
|RATE CONTROL||Constant (CBR)|
|AUDIO BITRATE||128 kbps|
|AUDIO CHANNELS||2 (Stereo)|
|AUDIO SAMPLE RATE||48 kHz (48,000 Hz)|
Resolution & Bitrate Settings
The following configurations will help you achieve your intended video quality. You can choose from the ultra-low definition, low definition, standard definition, high definition, and full high definition.
Please ensure that your encoder is set up with these exact settings to help prevent streaming issues.
|Name||Ultra-Low Definition||Low Definition||Standard Definition||High Definition||Full High Definition|
|Video Bitrate (kbps)||350||350 – 800||800 – 1200||1200 – 1900||1900 – 4500|
|Resolution Width (px)||426||640||854||1280||1920|
|Resolution Height (px)||240||360||480||720||1080|
Live streaming technology is evolving on a regular basis, and as a broadcaster, you want to stay ahead of that cutting edge so that you can produce the best streams possible.
As HLS becomes more common for stream ingest, software and hardware choices are likely to diversify. However, for now, there simply aren’t many streaming solutions on the market that support this process.
If you’re looking for a solution for live video streaming that supports HLS low latency streaming AND which remains affordable and easy-to-use, Dacast may be the right streaming solution for you.
You can try out our platform and test all of our professional broadcasting tools risk-free for 30 days. No hefty sign-up fees or credit card required.
Do you have further questions or comments about these stream software applications? We’d love to hear from you in the comment section below. For regular live streaming tips and exclusive offers, you can join the Dacast LinkedIn group.