In the previous article, I described how a bad video experience is usually caused by packet loss and explored some of the ways to prevent it. Users who adopt a software-defined networking approach, such as the Kollective SD ECDN, generally find that after deploying it they have much more bandwidth available due to the delivery efficiencies gained and overall reduction in network traffic flowing through gateways. Now that there is much more bandwidth available to play with, we can turn our attention to another question: what is the right bit rate to use for my video event?
There are many factors that impact your choice of bit rate, so in addition to meeting the requirement dictated by whichever codec you’ve chosen, the decision involves several tradeoffs. All of it comes down to a pretty simple premise though. The first thing you must understand about choosing a bit rate is that the more bits you use, the better quality you will have.
Drivers of Quality
Now, what are the primary drivers of quality? Generally, the drivers of quality within a video stream come down to resolution and frame rate. Resolution is how many horizontal lines a frame of video has from top to bottom. The more lines of video, the more “clear” the picture is. Frame rate is the number of frames in one second of video. The more frames per second the video has, the smoother the motion.
When choosing a good frame rate and resolution for your video stream, you should think about the content of your video, specifically motion and video complexity. The more motion your video has, the higher frame rate you would ideally want in the video stream. For example, if you watch a basketball game at 10 frames per second, it will look like a cartoon flip book or strobe light. For sports events and even for a very animated CEO, it’s nice to have a decent frame rate, such as 30 frames per second.
Recommended Bit Rate per Resolution and Frame Rate (fps) | ||||
---|---|---|---|---|
360p | 480p | 720p | 1080p | |
15 fps | 300 kbps | 500 | N/A | N/A |
30 fps | 650 kbps | 850 | 1200kbps | 3000 kbps |
60 fps | N/A | N/A | 2250 kbps | 4500 kbps |
Video complexity refers to the level of detail in the video. A talking head is a single speaker in front of a static background and does not contain very much video complexity. If you want to show slides with very small fonts, though, you will have a high degree of complexity in that frame of video. Some applications, such as Kollective’s Webcaster, keep the slides in a separate stream which gives you more flexibility. If you are including slides in the video, you will need to have a good amount of resolution or the slide will appear blurry. All of this comes down to another important consideration: the quality expectation.
Expectation of Quality
The quality expectation of your stakeholders is primarily a function of the video culture within your organization and depends on how expectations around video have been set in the first place. Audiences within organizations that are relatively immature with regards to video are often happy to have any video, while organizations with a more comprehensive video strategy will want more from the experience. To get the quality most people are used to seeing at home, you must have a high enough bit rate to support the video complexity and motion content of the source you’re pushing to viewers. To attain that bit rate, you must first solve the delivery problem I discussed in my previous blog on packet loss.
Another, related problem in large organizations is that not all locations have the same internet capacity. What can we do for them? Do we always have to cater to the lowest common denominator in terms of inbound available bandwidth? The answer is you can push multiple bit rates, and in the next article in this series we discuss multi-bitrate streams (MBR) as well as adaptive bit-rate (ABR) and look at the pros and cons of these different approaches.