Live streaming quality is a major concern for any business looking to grow its online presence and create more awareness. As the world of technology evolves, live video has become an essential element in connecting with potential customers. To meet this demand, businesses need equipment that will suit their needs and provide them with the ability to stream content without interruption or delay.
This article will discuss the importance of ensuring your live video streaming quality meets industry standards. It will also explore some common mistakes made when attempting to set up a live-streaming service and offer tips for overcoming them so that users can view your videos at optimal levels.
These tips apply equally to a live online classroom session, or a sports broadcast, or a live Church event – everyone can use these tips to greatly improve the quality of their live streaming session.
Note: if you want to understand how live streaming works, then read our super-guide to live streaming – everything you need to know!
Let’s get started and improve your live streaming quality ASAP!
Use Professional Cameras and Mics
Most people who generate online classes, courses, or produce webinars often commit a costly mistake with a surprisingly cheap answer.
If you record your screen with a laptop camera, it’s going to look grainy and out of focus. They usually have poor resolutions and are primarily meant for video conferencing for business purposes or chatting with family and friends – not professional live streaming.
The microphones on a laptop are also not of professional quality and will not capture audio in the same way as a high-quality microphone. A high-quality mic will sound better and allow you to record with less background noise, which can make all the difference in how professional your streaming sounds. I wouldn’t blame the laptop manufacturers for this, as a laptop is not primarily meant for live streaming and broadcasting.
Instead, invest in a good quality webcam and a mic – there are plenty of them available for $100 – $200 or less, and use them for your next live event. You’ll immediately see that the quality of your streams will dramatically improve, and your audience will love you for it.
Use Good Lighting
The next thing you need to look into is making sure you are streaming from a bright, well-lit spot that is also quiet and free from noise.
One way you can improve your live stream quality tremendously is by making sure that there is enough light in the room. If your video appears dark or grainy, it could be because there isn’t enough natural light coming into the room where you’re doing your broadcast. Try opening up those blinds!
You can also invest in a ring-light that you can place behind your phone or camera, and this will help illuminate the subject evenly and improve the quality of the video. This is a great choice if you are streaming from a place without a lot of natural lighting.
After you nail your video recording set-up (camera and mic), it’s time to turn our attention to the more technical and hidden aspects of Live Video Streaming – encoding and delivery. Let’s go!
Use the Correct Encoder Settings
If you’re not providing a high-quality experience for your viewers, they won’t want to watch your content and likely go elsewhere. In most cases, this boils down to high-quality video and preferably HD-video quality.
After your camera captures video, the video is sent to an encoder to be compressed based on your configured settings. These settings include (typically) video resolution, video codec, audio codec, video bitrate, audio bitrate, GOP size, Keyframe (IDR) Interval.
If you want to provide high-quality HD streaming, then you’ll have to use either 5 – 6 Mbps with either H.264/AVC or HEVC. And this means that your users need to have an internet connection that provides them 8-9 Mbps (at least) to play without interruption or buffering. However, this number decreases significantly when live streaming from mobile devices because of cellular data limitations and other factors like poor signal strength or low network bandwidth.
But, how do you decide these encoder settings?
The best way to choose your encoding settings is by understanding your audience and their streaming limitations and conditions. For example, if your audience is in a rural area or a country with mostly 3G speeds, you should not be configuring very high bitrates for your video compression. You can also consider producing lower-resolution videos (360p, 480p, etc.) that’ll be easier to deliver to phones on spotty networks.
Choosing the right encoding settings is a trial and error process. First, make sure you have a good analytics (QoE) tool installed and use the data to guide your decisions. We will discuss the use of analytics later in this article.
Generate Multiple Bitrates for ABR Video Streaming
Some video streamers or broadcasters produce only a single bitrate out of their encoders and this is not advisable because you can’t take advantage of ABR streaming and provide a great user experience. The problem with providing only a single stream is that the players cannot adapt to changes in the network condition and dynamically switch to a different bitrate or resolution to ensure that the playback doesn’t stall.
However, if you produce multiple streams (perhaps, three) of different bitrates and resolutions, then the player can inspect its available bandwidth and intelligently choose one of the bitrates to adapt to the changes in the network conditions (aka, ABR streaming).
But, producing multiple bitrates is not enough. You need to convert them to an ABR streaming protocol such as HLS / DASH before delivering them to your users. Let’s look at that next.
Use HLS & MPEG-DASH for Video Streaming
HLS (HTTP Live Streaming) and MPEG-DASH (Dynamic Adaptive Streaming over HTTP) are two of the most popular video streaming protocols for transferring video over the Internet today. Both HLS and DASH come with several years of R&D, innovation, improvements, and they are usually the first choices when it comes to delivering video over HTTP.
These protocols take a video and chop it up into small segments and enable each of these segments to be delivered independently of each other. This segment-based delivery allows video players and servers to dynamically choose the next video segment from any rendition while adapting to the fluctuations in the network conditions and the player’s buffer.
So, a combination of the right encoder settings, multi-bitrate transcoding, and the use of HLS and DASH can help you produce high-quality live video streams with ease.
Choose the Correct Segment Duration for HLS & MPEG-DASH.
After you decide to use either HLS or MPEG-DASH, the most important step is choosing the right segment duration during the packaging step (i.e., creating the HLS/DASH compliant stream). The packager, as you know, chops up a video into small, equal-sized, chunks and normally, you have to configure the size of a chunk in your packager or your live streaming provider’s platform.
What is the effect of the video segment duration on your live stream?
- If the segment duration is small (e.g., 1 second), then the player has to request the CDN for video every second, and this consumes a lot of resources on the player & CDN. However, the startup delay will be lower on the flip-side because the player has to wait for three seconds or less before playing the video (assuming the player is configured to wait for 3 segments to arrive before playing the video).
- If the segment duration is large (e.g., 10 seconds), then the player has to download a lot of data for every video segment (10 seconds worth of data on every request!). While the player is downloading this large chunk of video, if the bandwidth fluctuates, there is nothing that the player can do while the download is in-flight. It can only switch-down (ABR) on the next segment download. Apart from this, large segment sizes tend to cause large startup delays/latencies.
So, look at your data, understand your audience, examine your use-case, and then choose the right segment duration for your live stream.
Use a High-Speed Internet Connection to Stream
AFter you capture, transcode, package your videos and store them on a server, it is now time to deliver them. You might be using a cloud server, or your own computer as a server, but one of the most important things to ensure is that you have a reliable, high-speed internet connection to sustain high-quality video streaming.
If you want to deliver HD-quality video, then you need to have enough bandwidth to sustain requests from 100s of users, all asking for high-quality, high-bitrate video from your server.
A good quality internet connection is also needed to stream your video from your camera to the video encoder, in case your video encoder is in the cloud or is handled by a live streaming platform. If you cannot reliably stream video from your camera to the video streaming platform, then the output video will stutter and freeze. This is something that is easily avoidable!
In addition, you can also use a CDN to deliver video from your origin server – let’s look at this next.
Use a CDN (Content Delivery Network)
Not using a CDN is another surprising mistake that people often make or are not aware of. CDN stands for Content Delivery Network and is used to stream a video to a large number of people with ease. CDNs have large caches (memory) that store the most recent segments of video delivered and so when a user joins or seeks back, the webserver doesn’t have to be bothered. The CDN delivers the cached video and keeps the response time and quality of the video streaming high.
By using a CDN, a live streamer can ensure that,
- the video segments are delivered on time to geographically distributed users.
- buffering times and frequencies are reduced.
- the load on the webserver/origin servers are reduced
Popular CDNs are Akamai, Fastly, Cloudfare, KeyCDN, Medianova, amongst others. If you are using a live streaming platform provider, then be sure to ask them which CDN they are using and how well it serves the region where your audience is at.
If you are new to CDNs, then check out OTTVerse’s gentle introduction to Content Delivery Networks.
Protect your Content With DRM
You might think that DRM is really not that important while streaming your church’s event or a sporting event at your college, but, the downside of not using DRM can be huge and costly. If anyone and everyone can steal your streaming URL (mpd for DASH or m3u8 for HLS), insert it into a video player, and start restreaming your content, then you are in for a costly shock.
If your streams are stolen and restreamed, you can expect your CDN bill to be higher than expected, and you can expect a dip in your revenue in comparison to your costs.
Especially if you are a pay-per-view service, subscription-based, or advertising-supported, then when people steal your streams and restream them illegally, you will lose a lot of revenue. Using a good DRM vendor and the right technologies can go a long way in preventing these headaches.
If you are new to DRM, then read OTTVerse’s Hitchhiker’s Guide to DRM for a gentle, and deep explanation of how DRM works and the various types of DRM such as Widevine, Fairplay, and PlayReady.
Use Analytics to Understand your Audience
Live streamers must use an analytics service (or DIY) to collect usage/consumption statistics in addition to QoE and QoS information. Almost everything in the video streaming pipeline can be optimized with the right quality and quantity of data. Here are some of the important pieces of information that can help you analyze, troubleshoot, and improve the quality of your live streams.
- Latency or Start-Up Delay: This measures how long it takes for the video to show up after the user presses Play.
- Buffering Duration & Percentage
- Number of Starts
- Exit Before Video Start: After the user presses Play, does the user leave the video before the first frame shows up? If yes, why?
- For AVOD providers, it’s important to track the Ad Fill Rates, Ad QoE, Completion Rates, Quartiles of Completion, etc., to optimize ad delivery.
How does all this data help? Well, take the Exit Before Video Start metric, for example. If this number is high, then it means that many people are clicking play and then simply leaving your platform without watching the video. The root cause could be poorly performing pre-roll ads or a large video startup delay that frustrates your users. So, this is a metric that you need to pay attention to and possibly reduce your HLS/DASH video segment sizes?
Having the right quality and quantity of data can greatly improve your streaming quality.
While this isn’t directly related to live streaming, it is a feature that can boost your engagement and your following. Simply record your live stream and host it for people to watch the live stream again at a time of their choice. This is often referred to as catch-up or DVR and is a very popular method of re-using your live streams to reach a larger audience and increase your use base and revenue.
Use a Professional Video Platform
After all these tips and tricks, the problem boils down to this – are you going to build your own video streaming platform or, are you going to use a professional, managed video streaming platform? Both have their advantages and disadvantages, but, for the most part, you are better off going with one of the commercial video live streaming platforms out there.
We will review the top video streaming platforms in a future post, so stay tuned and subscribe to OTTVerse.com to get notified.
These commercial-grade platforms generally come with robust transcoders, have support for HLS and DASH streaming, use CDNs, and deliver video via CDNs. They also help you set up the players and provide you with usage and QoE analytics.
As we come to the end of this post, I hope you are enable to implement some of these ideas to produce and deliver broadcast-quality livestreams for your sporting, community, church, concert live streaming events.
If you have any further tips or suggestions to share, please add them in the comments section and we’ll be happy to incorporate them into the article.