You’ve been invited to livestream an event on top of a frozen lake in Minnesota to a global audience. Or maybe you want people around the world to be part of your book launch event. You can use services such as Facebook Live to show it to friends and family, but you want something higher quality, and on your own website. And maybe also on other websites. And you want a permanent record of it.
Here is how to broadcast your event around the world without spending one penny. You’ll need a modern smartphone, modern computer, and access to the internet. And if you can do it from on top of a frozen lake in Minnesota, you can do it from anywhere.
Every livestream needs three pieces:
- A streaming server,
- A client codec at the event site to send the stream to the streaming server,
- A way to present it from your website. Or somebody else’s.
Start at the server.
Youtube Livestream Server
Here’s how to set up Youtube to receive your livestream.
- Visit Youtube and look for a graphic in the upper right corner of the Youtube window, next to the bell drawing for messages. Click this graphic for a dropdown menu and launch Creator Studio. Create a new channel if you don’t already have one. Give it a name and description. Mine is creatively named, Greg Scott Public Videos.
- Click “Live Streaming” in the left pane, go through the dialog, and wait 24 hours for Youtube to grant you permission to livestream.
- After Youtube grants permission, click “Stream Now” in the left pane under “Live Streaming,” and scroll to the bottom of the window. Copy the server URL and stream name/key. The server URL is where you, the content creator, will send your livestream. The stream name/key identities it as your livestream. Keep it secret because the last thing you want is somebody streaming a porno show on your Youtube channel; stuff like that is bad for your reputation.
- You’ll also need the livestream URL. Content consumers will visit this URL to watch your livestream. You can also embed it in other websites. It’s in the lower right side of the window inside the box that says, “Share.”
- As of Feb. 3, 2019, don’t bother with Livestream events. As far as I can tell, Youtube livestream events are broken.
And that’s it – that’s all there is to setting up the Youtube server side of it. Next, you need a client codec at your event to send the stream to the streaming server.
The Client Side
If streaming from a Windows, modern MacOS, or Linux laptop, the best codec is OBS (Open Broadcasting Studio). Download and install it here. And here are instructions from 2013 for setting up OBS and Youtube. The details are different today because the Youtube website is laid out differently, but the concepts are still the same. Set up a webcam and mic, and use the stream name/key from above to connect your OBS codec to your streaming server.
OBS is a great piece of software, but streaming from a laptop, especially when you need different camera angles and mobility, can be a pain. It’s hard to aim the webcam, mics are always either too loud or too quiet, and bright light makes laptop monitors almost impossible to see, which makes aiming a webcam even more difficult.
Smartphones are easier to line up, easier to use, and easier on the arms than laptops. The challenge is, finding usable smartphone codec software. Since OBS has no plans to port anything to smartphones, the obvious choice is the Youtube smartphone app. One potential problem is, some articles suggest Youtube wants anyone doing mobile streaming to have 100+ subscribers to their channel before allowing it. Other articles suggest Youtube wants 10,000 subscribers. I don’t know if this is true, and I could not find anything directly from Youtube itself documenting it.
Another problem, at least with the Android version is, the Youtube app is tied to my Android Google account. I own my Youtube channel via another account, and so to make this work, I need to go to Creator Studio on my Youtube channel and set up my Android Google account as a full admin for Greg Scott Public Videos. But even after doing this, I could find no interface in the Youtube app asking for the stream name/key.
That leads to the biggest problem: when I livestream from the Youtube app on my Android phone, my phone says it’s livestreaming, but my livestream on Youtube never sees it. When I stop the stream, a new Youtube video shows up in my channel, so the stream went to my correct Youtube channel, just not to my livestream in that channel.
Maddening. So close, but yet so far.
Well, now what?
It occurred to me that since I found OBS as a streaming codec for laptops, maybe I could find a codec for smartphones. Sure enough, I found one named HD Live Stream on YouTube from Rustero Labs. I downloaded it from the Google Play Store and installed it on my Android phone. When I launched it and connected it to my Youtube livestream via the stream name/key from above, it all just worked. Here’s the proof, right here.
Simple is good. But I wasn’t home free yet. Livestreaming drains batteries, and so to cover this whole event, I needed two devices so one could charge its battery while the other streamed content. I also own a tablet with a nice builtin camera, and so it’s the logical choice for the second device.
Unfortunately, the Google Play store says the Rustero app I found above is not suitable for my larger tablet screen size. I found another one with a few thousand downloads named Streamlabs – Stream Live to Twitch and Youtube, and installed it on my tablet. Its user interface is clunkier than the Rustero Labs app, but it worked as a backup while the cell phone battery charged.
I don’t own an iPhone and so I don’t have any iPhone codec recommendation. If anyone knows of a good one, contact me and I’ll update this post and credit you with the recommendation.
You need to display your livestream somewhere. For that, you’ll need some HTML to embed into your website or other websites. Embed this HTML and your stream will display on that website inside a frame. It will look like it’s coming directly from that website. Here’s the code to embed my livestream; I don’t remember where I found it.
<iframe src="https://www.youtube.com/embed/live_stream?channel=UCBtDWsqzMZ_RB94I_F4cnRQ&autoplay=1" width="560" height="315" allowfullscreen="allowfullscreen"> </iframe>
Fill in your own channel URL above and tinker with the width and height to fit the website(s) displaying your livestream.
Here is how the block of HTML code above displays my livestream:
And that’s how I finally cracked the code to produce a quality livestream for the Holes 4 Heroes event in 2019. Now that I know how to do this, and it’s easy, I have a hunch I’ll use it with other events. And now you can, too.