During a recent discussion in a church technology Facebook group, the question came up about upgrading the Internet speed for a better live streaming experience. I provided a similar response to the group as you’ll see here. The inquisitor wanted to know if 5 Mbps upstream was good enough and while most people answered “no”, few of them asked any questions about where he was sending the stream, what resolution and bitrate he was trying to deliver, or any other pertinent information. These things matter.
Most folks think rightly that more bandwidth is better, but they may not also be thinking that unless their network is properly configured, the teens on the Guest WiFi in the Youth Group could be sending Snapchat, Instagram, Periscope and Facebook live streams and dominating all that new upstream bandwidth you’re paying for.
The most important consideration here is that you want to have QoS configured so that you have protected bandwidth that is dedicated from your encoder to the internet. This usually involves creating a private VLAN for video on your managed switch/router (or using port-based QoS) and throttling the “business” and “guest” VLANs so that they will not impinge on the dedicated upstream for your Streaming VLAN. This is possible on most business-class managed routers from Cisco, Huawei, Brocade, and others.
Another big consideration is using cloud-based transcoding and distribution. If your Online Video Platform or CDN supports it, you would be best served to send them a single high-rate mezzanine bitrate and allow them to create the lower resolution/bitrate derivatives while also re-transmitting your stream to the various streaming providers (Facebook, YouTube, Roku, Apple TV, etc.). When using a configuration like this, you can even build in redundancy (a backup stream from a second encoder to a separate cloud endpoint) without using as much upstream as you would just trying to shotgun your stream to the 3 or 4 usual suspects.
The amount of upstream you need for a good mezzanine bitrate should be based on the following rough formula:
(VIDEO BITRATE + AUDIO BITRATE) * 1.5-2.0 = SAFE UPSTREAM BANDWIDTH.
1080p60 (Best Quality)
Video Bandwidth = 8,000 Kbps, Audio Bandwidth = 320 Kbps. 8,320 * 2.0 = 16,640 Kbps
1080p30 (Better Quality)
Video Bandwidth = 6,000 Kbps, Audio Bandwidth = 256 Kbps. 6,256 * 2.0 = 12,512 Kbps
1080p30 (Good Quality)
Video Bandwidth = 6,000 Kbps Audio Bandwidth = 256 Kbps 6256 * 1.5 = 9,384 Kbps
720p60 (Better Quality)
Video Bandwidth = 3,000 Kbps Audio Bandwidth = 192 Kbps 3,192 * 2.0 = 6,384 Kbps
720p60 (Good Quality)
Video Bandwidth = 3,000 Kbps Audio Bandwidth = 192 Kbps 3,192 * 1.5 = 4,788 Kbps
If you’re dead set on sending 4K 30fps, I recommend 25+ Mbps per channel -protected, but I don’t recommend sending 4K unless you have a broadcast engineer on staff. In fact, for most content, 720p60 looks amazing (even on connected TVs), costs less and is more reliable. You can always record locally in 2K or 4K and upload VOD later, but for streaming, it’s a lot of effort.
In summary, 5 Mbps upstream is on the margins for safe bandwidth unless it’s dedicated and protected. 15-20 Mbps is probably the sweet spot for reliable streaming for most churches.