Guest: Gabe Kangas (LinkedIn)
Company: Owncast (Twitter)
Show: Let’s Talk
Owncast is a self-hosted live video and web chat server that gives people the ability to control their content in a way they’ve never had. Owncast came into being partially because of the pandemic. Gabe Kangas, Maintainer of Owncast, says, “When people started streaming online more and more when they were stuck at their homes, I started hearing more and more scary stories about people getting kicked off of different services, and them kind of being held hostage and their content being owned and controlled by these third-party services.”
Because of this, Kangas thought, “why isn’t there a live streaming platform that people can control, operate, own, and customize themselves?” To that end, he created Owncast. According to Kangas, the benefits of working with this platform are the ability to work with a provider, such as Linode or DigitalOcean, and deploy Owncast with a single click. The problem, however, is getting people “in the door,” which Owncast is working on.
As far as hosting providers, Kangas says, “the growth of these one-click marketplaces that hosting providers have been starting to offer their customers has just been a huge boon for everybody.” These providers are helping to put open-source software in front of people that may have never known it even existed. This is, according to Kangas, a “win-win-win” because it’s “easy for a user to install it, it’s easy for the developer to get it in front of people, and it drives demand for additional hosting products from the hosting provider.”
But how would a user pick a provider? To that, Kangas speaks to scale when he says, “I see what other people are using and what other people have had success with. And that’s why on the Owncast website, we do document, ‘Here’s a handful of providers that people have had success with,’ because we don’t want to waste your time with trial and error.”
Owncast also supports GPU-accelerated encoding. Although this is a niche, users who have the hardware to support it will get a significant performance increase from the feature.
The summary of the show is written by Jack Wallen
Swapnil Bhartiya: Hi, this is your host, Swapnil Bhartiya, and welcome to another episode of TFiR: Let’s Talk. And today we have with us Gabe Kangas, maintainer of Owncast. Gabe, it’s great to have you on the show.
Gabe Kangas: Yes, absolutely. Thanks for having me.
Swapnil Bhartiya: So let’s start with some of the basics. Tell me, what is Owncast? What is this history and the story of this project? Why was it created?
Gabe Kangas: Yeah. Like a lot of fantastic and creative ideas, Owncast is a part of the pandemic story. When people started streaming online more and more, when they were stuck in their homes, I started hearing more and more nightmare stories about people getting kicked off of different services, and them kind of being held hostage and their content being owned and controlled by these third party services. And I really thought, why isn’t there a live streaming platform that people can control and operate and own and customize themselves? Just like you can run your own copy of WordPress for your blog, why can’t you run your own livestream? So that’s kind of the core story behind it. Wanted to give people the control and the way to operate their content that they just didn’t have before.
Swapnil Bhartiya: Talk a bit about the benefits that you offer, vis-a-vis putting it on some streaming platform, number one. Number two is that people should be like, “You know what? I am willing to bear this cost, because ownership is more important than the time I’m investing there.”
Gabe Kangas: Yeah. So it’s a very real trade-off. Like you said, there are things like installation costs that is not financial, but it is time. You might have to learn something new. You might have to understand how to provision a server for the first time. But that’s why with Owncast, as much as possible, we’re trying to make it as easy as possible, and making it easier every day.
So things like partnering with hosting providers and allowing these one-click installs is super important for us. So you can sign up with Linode or DigitalOcean or Vultr and just go into their marketplace and say, “Give me a server that’s already running Owncast,” and they will provision that for you. And then you just pay your monthly hosting fee and you’re good to go, which I think that type of workflow makes it way easier for people who don’t really want to think too much about it. Then they’re able to gradually learn because someday they’re going to have to update it, so then they have to read the documentation and figure those things out.
But getting people in the door, super important, and we’re working on making that easier all the time. So as it stands, you can get Owncast up and running and streaming in about a minute, so that’s about as good as you can get, as far as trying to make it easy for someone who doesn’t really know anything about the software or about a server. So yeah, that trade-off is real, but people like us who write free and open software can do our best to try to make it approachable for everyone.
Swapnil Bhartiya: So talk about the importance of these hosting providers, so that you get best of both worlds. You get to use open source software that you have full control over, then you also choose the provider that you believe in or you trust. So talk about the importance of hosting providers, how they further democratize access to these technologies.
Gabe Kangas: Yeah. I think the growth of these one-click marketplaces that hosting providers have been starting to offer their customers has just been a huge boom for everybody, really. From a open source developer standpoint, it puts our software in front of people that may have never seen it before. I know I will browse through some of these marketplaces and be like, “Oh, that app looks cool. Oh, I should try that one out.” And then it’s a win-win, because every one that I do try out, the hosting provider is getting another customer or getting another $5 a month, or whatever it is. So it’s really kind of a win-win-win. It’s easy for a user to install it. It’s easy for the developer to get it in front of people. And then it drives demand for additional hosting products from the hosting provider.
So I really look forward, for this type of pattern to continue growing over time. Some of the providers that I mentioned, Linode and DigitalOcean and Vultr, they’ve all been doing a really great job and I look forward to seeing more of these companies doing something like that, because there’s almost no downside. Everybody wins, and it makes it really easy for people to try new software. Even as an experienced person, such as me, I use these marketplaces because if I can just install something real quick by pressing a button, why not? Why put more effort into it than I have to? These are great. So yeah, really looking forward to this continuing to grow. And everyone who’s been taking advantage of it so far, I think has won.
Swapnil Bhartiya: You want to be neutral. You want to be as unbiased as possible. But if I ask you, “Hey, I want to run my own stream using Owncast,” what kind of things I should look at when I pick a hosting provider?
Gabe Kangas: Yeah. The nice thing about running your own software is you can make decisions that are catered very specific to your needs. So there’s a whole scale of options. Everything from, some people run an Owncast server from their homes, just using their home internet. They put it on a Raspberry Pi and they stream to a handful of their friends. And that works great, because what their expectations and what their use case is, is compatible with that very specific type of install.
Where on the other side, if you are running a big event and you’re going to have any number of viewers, you might want to offer many more different qualities of video for different types of networks and for mobile. And because of that, you’ll want something that can have a lot more CPU power. So then going to a commercial hosting provider makes the most sense. And there, you can say, “I want to pay X dollars a month,” and then you would get provisioned the CPU power that matches that. So then you can configure Owncast to say, “Okay, I have this much CPU, so I’m going to offer this to my viewers.”
And Owncast specifically has a pretty cool option where you can configure an S3 object storage provider in it. So if you are concerned about how much local bandwidth you’re using, whether it’s in your house or in a hosting provider, you only have so much bandwidth to work for, so instead of using that bandwidth, you can actually offset your own costs by putting that video on a storage provider and then having your viewers pull it down from there. So something like S3 storage is going to be significantly cheaper at large scale than getting the bandwidth directly to your own server.
But most people don’t have that use case. Most people kind of know, “I’m going to have 30 viewers.” And in that case, the bandwidth allocated to you from your hosting provider is probably enough. But on the same hosting provider, most of them do offer object storage. And you can say, “Well, I’m willing to throw another $5 a month at the problem, to make sure that bandwidth isn’t an issue.” And that’s another benefit of going to a commercial hosting product, because they can offer you more services such as object storage.
Swapnil Bhartiya: You initially mentioned three names, Linode, DigitalOcean, Vultr. The hosting space is a very, very crowded space and they’re all kinds of players. And my question more or less was, to help your users to pick the right hosting provider. So once again without giving any names or taking any sides, you can say, “If you want to put Owncast on any of these, these are the five things you should look at.” So what are the things that people should look at when they’re picking a provider?
Gabe Kangas: Yeah. Okay. So if you have a very specific use case and Owncast, is that a very specific use case? I recommend doing what I do. I see what other people are using and what other people have had success with. And that’s why on the Owncast website we do document, “Here’s a handful of providers that people have had success with,” because we don’t want to waste your time with trial and error. We just say, “Hey, if you don’t have any other preference, maybe you should try out one of these three because they work great.” Just answer the question for you directly. If you are a more technical person or you have a preference to a hosting provider already, yeah, absolutely go use it and see how it goes.
But things like video delivery is a very specific use case. Video transcoding is very specific and it’s different than just serving some PHP files. Right? So knowing which providers might work for you is, answering that question upfront in documentation and as a user reading that documentation, I think answers the questions most of the time. And because of that, people do just kind of use the providers that we recommend, because with these one-click marketplaces we can say, “Hey, just go over here and press “Install” and you’ll be good to go.” And we know it’s going to work because other people are using it. So just word of mouth and recommendation, I think, goes a long way, especially on the internet where people blog about things and talk about their successes and failures and share it.
Swapnil Bhartiya: You talked about video encoding, all those things. A lot of providers are now also offering GPU. Does Owncast also leverage those technologies, or you can do everything purely from CPU?
Gabe Kangas: Yeah. Owncast does support GPU-accelerated encoding. However, that is a very niche use case because of exactly what you were saying. If you are in kind of a normal budget tier hosting platform, you are probably not going to have access to GPU hardware. You have to pay substantially more to do that. So we assume out of the box that you are using CPU-based encoding.
However, if you are somebody who wants to run an Owncast server from home and you have a rig with a GPU in it, or even a Raspberry Pi that actually has a video encoding chipset built into it, you can flip that switch in Owncast, get significantly better performance, and open up your options because you’re using the GPU. So you do have both options, and GPU encoding is awesome if you have access to it. But with Owncast, we don’t assume that you’re going to.
Swapnil Bhartiya: What are the use cases where it’s ideal? Where people are like, “Hey, know what? I want to stream so Owncast is the perfect solution for me.” And number two is, if you can share some use cases or some examples where people are successfully using it and they have built a great audience for themselves.
Gabe Kangas: Yeah. Owncast works really great in one of two camps. And one is the really obvious one, that’s kind of the Twitch replacement, where you are looking for that out of the box chat interface or the web player where anyone just shows up and they take part in the stream. And there’s been a lot of really creative people who’ve been streaming things using Owncast with that mindset. Everything from a film festival, I saw use Owncast, which I thought was very cool. An independent film festival. A lot of musicians and DJs stream content on Owncast. So that’s awesome. They got the chat and it’s a interface that’s very familiar, if you’ve ever used Twitch.
On a less than pleasant note, due to COVID, there are two families that I’m aware of that have actually livestreamed, using Owncast, funerals. Because it’s private and they can keep it internal and they know who they’re giving that invite out to, and they didn’t feel comfortable doing something like that with Twitch or Facebook or Instagram, for obvious reasons. So Owncast allowed them to do something that they couldn’t do, that was very important to them at a really lousy time.
On the flip side of having that chat and the web interface and the player, organizations use Owncast as a piece of their infrastructure for larger projects. So companies such as Okta and Siemens have used Owncast to power their developer events, so they can embed the video player into things that they’re already using and pages that they already have built, apps they already have built. So you can build something, put it in the app store and use the Owncast video feed to power your application. That has been really useful to people.
So there’s kind of a spectrum that goes from individuals streaming their small creative endeavors, to a large corporation who wants to just add livestreaming to things that they already have built. And it seems to work for people, regardless where you fall on that spectrum.
Swapnil Bhartiya: Gabe, thank you so much for taking time out from your schedule and talk about Owncast. And I look forward to talk to you again, because as you mentioned, there are so many things in the pipeline, so I’d love to keep an eye on that. Thank you.
Gabe Kangas: Yes. Thank you for having me.