- Basic Youtube Streaming
- More Sophisticated Youtube Streaming
- Client Codec
- Well, Now What?
- To the Next Level
- Creative Connectivity
Shortly after Holes 4 Heroes 2019, I wrote a blog post about how to present a quality livestream without spending one penny. But by early 2021, the COVID-19 global pandemic forced us to raise the bar. The new Youtube and Facebook streaming interfaces also made that blog post so last-decade. Time for an update.
Necessity is the mother of invention, and to maintain COVID-inspired social distancing, Holes 4 Heroes 2021 went mostly virtual. Instead of one large group on top of Medicine Lake, this time, small groups on top of thirteen frozen lakes across Minnesota participated, with a command center on top of Medicine Lake.
Thanks to Michelle Church of Churchmouse Media, Sara Schrode and Angie Koch with Fishing For Life, the organization that puts on the Holes 4 Heroes event every year, and Mike “Cold Front” Kurre for producing a complex video program that rivals programming from major TV news organizations. Here is how we did it.
Every livestream needs at least three ingredients:
- A streaming server,
- A client codec at the event site to send the stream to the streaming server,
- A way to present it on your website. Or somebody else’s website.
Complex events connecting multiple sites also need a virtual meeting service and a production team to organize it all.
But first, start simple with just a streaming server, a computer and a webcam.
Basic Youtube Streaming
Here’s how to set up Youtube to receive a basic livestream.
- Visit Youtube and sign in to your Youtube account. Create one if you don’t already have one.
- After signing in, look for a graphic in the upper right corner of the Youtube window, next to the bell icon for messages. Click this graphic for a dropdown menu and launch Youtube 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 the “go live” button on the upper-right side. The first time you do this, you will need to enable livestreaming and wait 24 hours for Youtube to grant you permission to livestream.
- After Youtube enables livestreaming, if not already signed into Youtube, sign back in, and click the “Go live” button again. It will take you to the Youtube streaming window.
- Notice the graphical menu on the left, with three choices:
- To start a stream right now from this computer, just click the “Webcam” menu icon and follow the directions.
- When finished, the video will be in your Youtube channel, ready for a title, description, and other details.
More Sophisticated Youtube Streaming
Maybe you want to schedule a streaming event for later and advertise it. Or, maybe the event is on top of a frozen lake and you need to stream from a mobile device. Or maybe you need to share a computer screen or switch among multiple input sources. This is where client codecs, Youtube events, and stream keys come in handy.
- In the Youtube streaming window above, click the “Manage” menu icon and follow the prompts to set up an event.
- Now, go to the “Stream” menu icon and copy the stream key, stream URL, and back up server URL. Paste into your client codec as appropriate.
- The stream URL and backup server URL is where you, the content creator, will send your livestream, so people across the internet can interact with it.
- The stream 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.
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 your content to the streaming server.
If streaming from a Windows, modern MacOS, or Linux laptop, one of the most popular codecs is OBS (Open Broadcasting Studio). OBS is free and open source and has a thriving community behind it. Download and install it here. Here is one of many OBS setup tutorials. 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, is a hassle. 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. But smartphones also come with challenges. One biggie is, finding usable smartphone codec software. Since OBS has no plans to port anything to smartphones, the next obvious choice is the Youtube smartphone app. But that leads to the next challenge. Youtube wants 1000 subscribers to your channel before allowing mobile streaming. Without 1000 subscribers, the Youtube smartphone app will claim it’s streaming, and Youtube will leave a video behind after a streaming session, but Youtube will not stream it.
Another challenge, at least with the Android Youtube client 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 set up my Android Google account as a full admin for Greg Scott Public Videos. Which might eventually work if I tinker long enough, but it’s not worth the trouble.
Well, now what?
It occurred to me that since I found OBS as a streaming codec for laptops, maybe I could find a smartphone codec to make Youtube “think” I’m streaming from a computer. 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 key from above, it all just worked. Here’s the original proof from Holes 4 Heroes 2019.
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 codec with a few thousand downloads named Streamlabs – Stream Live to Twitch and Youtube, and installed it on my tablet. It worked just fine from the laptop 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.
Wonderful. I created a live video stream and it plays on my Youtube channel. If everyone I care about knows how to find my Youtube channel, this might be good enough. But maybe sponsors or partners or I want to embed it in a frame on our websites and then advertise our own URLs to the public. This could be great for marketing.
I have a couple choices.
- I can embed this specific stream in my website, just like embedding any other video. Copy the video URL from Youtube and embed it into my website, just like embedding any other recorded video. The challenge is, I won’t know the embed URL in advance, which makes testing ahead of time impossible. Or,
- I can embed all video streams from my Youtube channel. Every time I do a livestream event, it will show up in the embed frame on my website. It’s the same URL for every event, so I can set it up in advance and test it.
For that, I’ll need some HTML to embed into my website. Here’s the code to embed livestreams from my Youtube channel. Note my channel ID, ?channel=UCBtDWsqzMZ_RB94I_F4cnRQ
<iframe src="https://www.youtube.com/embed/live_stream?channel=UCBtDWsqzMZ_RB94I_F4cnRQ" allowfullscreen="" width="560" height="315" frameborder="0"></iframe>
To embed your livestream, you need to replace my Youtube channel ID in the HTML above with your Youtube channel ID. Here’s how.
- Go to your Youtube channel, click the menu icon in the upper right corner, and select settings.
- Go to advanced settings.
- Copy your channel ID.
- Get rid of my channel ID in the HTML above.
- Paste your channel ID in its place.
- Embed the resulting HTML where you want it in your website.
Here is how the block of HTML code above displays my livestream. This will look ugly when I’m not running a livestream event because the video will only be available when I’m streaming to Youtube.
And after years of trying, that’s how I finally cracked the code to produce a quality livestream for Holes 4 Heroes 2019 and Holes 4 Heroes 2020. I also used what I learned to produce several webinars, including How to Set up Your Internet Identity on Facebook Live, and A Dozen or so of Greg’s Cybersafety Tips on Youtube.
To the Next Level
And then COVID-19 turned the world upside-down. When large crowds gather during a global pandemic, lots of people tend to get sick, and sometimes they die, Like everyone else, Fishing For Life needed to adjust. Staff meetings became virtual, and so did events. And that’s why Holes 4 Heroes 2021 featured small groups on top of many lakes across Minnesota, instead of the usual large crowd on top of one lake.
Holes 4 Heroes 2021 needed to transform from mostly physical with a few livestreamed highlights, to mostly virtual for an internet audience.
The technology challenge is straightforward; bring people together in a video meeting and have one participant use a client codec to livestream the meeting. Services such as Zoom, Bluejeans, Teams, WebEx, and others, all work with OBS. Fishing For Life already uses Bluejeans for virtual staff meetings, but none of the virtual meeting services offer the polished production quality Fishing for Life needed.
Enter Michelle Church of Churchmouse Media. Michelle is a professional video producer, focusing on livestreaming events for churches without the staff to do it on their own. No doubt, COVID-19 kept Michelle busy the past several months. We used Streamyard, a video meeting service tailored for professional-looking video streams. Similar to the client codecs above, Streamyard offers a $20 per month plan that allows streaming to custom streaming URLs using a stream key.
Fishing For Life wanted to show the livestream on both its Facebook page and website. Fortunately, Streamyard can stream to multiple streaming services, and so Michelle set up this event to feed both the Fishing For Life Facebook page and my Youtube channel.
It worked. Michelle juggled live split screen interviews, graphics, and sponsor-recorded videos, Sara and Angie organized upcoming interview segments, and Mike conducted almost four hours of nonstop internet interviews about fishing and the Minnesota outdoors. The team produced a video that rivals anything from any TV news network. See for yourself.
And now that we have this capability, we’ll enhance it in years to come.
With smartphones and cell towers, we take internet connectivity for granted these days. And it mostly worked on the small group lakes around Minnesota. But the command center site on top of Medicine Lake needs a more substantial and dependable connection than cell phone data. Fishing For Life is grateful to Nextera Comunications for bringing a 20 mb microwave connection out on top of Medicine Lake year after year. The microwave signal starts from the top of an office building Southeast of the lake, and a few cooperative trees provide line of sight in the winter when trees have no leaves. The signal hits a portable Nextera receiver, travels through a temporary cat-5e cable to my firewall, and from my firewall to a portable LAN on top of the ice, complete with business-class WiFi.