Highly Available Live Encoding Using Go and Kubernetes
Two years ago, iStreamPlanet set out to build a cloud-native software transcoder with the reliability and feature set to support some of the highest profile live channels and events in the world. Some of our goals included: 4+ 9’s of uptime, as little C/C++ code as possible; the ability to run 1000’s of live channels without human oversight; support for advanced features like SCTE-35 Signaling & Segmentation, Hitless merging of redundant video sources, and Dolby Digital Plus Surround Sound encoding; and the ability to update the software on running channels without customer impact. We’ll explain how we leveraged the power of Go, Kubernetes, and a mix of commercial and OSS components to make that vision a reality. The result powers the OTT distribution over 1000 live linear TV channels running 24/7, and has been used to deliver the streams for March Madness 2021, the Tokyo Olympics games, the UEFA Champions League, and more.