Over the past several weeks I've been testing two live streaming providers. Everyone knows about Twitch.tv. It is THE de facto leader in-game play streaming. But it isn't the only option. Recently Google began a live streaming service through YouTube. As I already have a YouTube account setup for videos I've done previously utilizing Fraps, I wanted to see how YouTube Live compared to Twitch.tv. The final result of the comparison actually surprised me and not for a reason I would have ever guessed. But I'm not going to tell you about that until the end. No tl;dr for you my dear reader, or your little dog! Muwhahahahahahaha. >:D
Since this is a blog post about live streaming, I'd be remiss to not mention how you live stream. Let's do a quick side jaunt into that arena. The first thing you can do, which is relatively simple, is see whether or not the game you want to play supports streaming as a built-in function of the game. For example, Assassin's Creed IV: Black Flag allows you to stream your game play directly to Twitch.tv by simply giving it your Twitch.tv stream key. But, this only streams one game, and most of us play many games and want to stream them all.
That's where Open Broadcast Software (OBS) comes in. OBS is a free application that will allow you to stream anything running on your computer. You don't even have to stream games. You can stream tutorials on how to set up OBS. Here's a really decent one from gotembro. Now that I've supplied that link, I don't have to tell you how to do it. That's good, because that isn't the point of this post. However, I do want to point out a couple of things he doesn't mention. The one that I find most glaring is that you can't use "Monitor Capture" or "Window Capture" to stream all games. For example, let's go back to Assassin's Creed IV: Black Flag. With that specific game you must use "Game Capture." And what's more, you have to run OBS in administrator mode to do it. OBS will warn you about that if you attempt to stream a game that requires administrator mode, but it's a pain in the you know what to shut down and restart everything. So point #2 is to just run OBS as an administrator from the launch icon. That'll avoid the issue altogether. There's your "pro" tip of the day. ;-)
So in that tutorial, gotembro covers how you get your Stream Key from Twitch.tv and where to input it into OBS. YouTube Live is a little different, but not all that different. But first, you'll have to request Live Streaming for your YouTube account. Go to your YouTube Account Settings Overview page. Under Additional Features, there is an option to "View additional features." Click that link.
[caption id="" align="alignleft" width="425"] View additional features on YouTube account.[/caption]
[caption id="" align="alignright" width="258"] YouTube Additional Features Page[/caption]
Once you are in Additional Features, you will see a list of features available to you in the lower half of the display. Live events is one of them.
Mine currently shows a green dot for a status. That means it's turned on. Before it is turned on, it will be a button that says "Enable" just like Monetization currently has above. Just click that button. In no time at all you should have a confirmation live streaming is active on your account. Once it is active, you will have a Live Events item under your Video Manager settings.
Clicking on that item shows a list of scheduled broadcasts and the "New live event" button (see below and to the left.) It is possible with YouTube Live to schedule broadcasts ahead of time and then advertise the place (your channel) and time of the broadcast automatically via Google and any other social media to which YouTube supports direct connects. This is not something I've seen in this exact manner with Twitch.tv. You can advertise the time of your next broadcast to be certain, and there are connections to social media to make it easier, but you can't stack them one after the other like a T.V. listing and provide that list to your viewers in quite this way. I find it more functional. You also get reports on your stream by way of Google Analytics, as well as complete tie in to all your other Google services. It's more an environment than a monolithic broadcasting island.
[caption id="" align="alignleft" width="428"] YouTube Live Events[/caption]
[caption id="" align="alignright" width="282"] OSB Broadcast Settings[/caption]
But let's get back to streaming using OBS. There is a significant difference between how Twitch.tv allows streaming from a 3rd party program and how YouTube does it. With Twitch.tv you get one stream key. That key will work "forever" - or at least a long time. With YouTube, every single Live event has its own unique key. That unique key must be put into the OBS Broadcast Settings each time. It's more hassle than Twitch.tv with it's single key.
It's only a few extra key strokes to do the copy/paste, but it also keeps you from just clicking "Start Streaming" in OBS to get going. YouTube requires more planning. In fact, it requires considerable more planning because it verifies the quality of the stream before it actually allows you so send it out. After clicking on the New Live Event button, you get the set up screen shown below to the left.
On this screen you want to look at the bottom first. See the two types of stream you can do? You must choose "Custom" is you are going to stream a game via OBS (or any other software.) The "Quick" option is only for Google Hangouts and it only works with webcams. Going up the page, the next section is where you set your advertisement options and who can see the stream. Above that you have your standard tag and description section. At the top, you have the title and the date and time field. You do not need to add an end time, but the option is there nonetheless. The start time does not have to be in the future. If you want to "immediately" stream, set the start time to some time in the past. Your stream will already be "in progress" as far as YouTube is concerned when you get to the next screen. Oh, and the Advanced Settings tab is just your standard YouTube video Advanced Settings tab you've always used. It's now time to create the event, starting with the most important configuration page of all.
[caption id="" align="alignright" width="379"] Setting Up YouTube Live Encoding[/caption]
[caption id="" align="alignleft" width="421"] Create a New Live Event[/caption]
The next page in the event creation sets up your encoder settings. This is where you tell YouTube Live what your streaming software is. Google promotes Wirecast and supports the Flash Media Live Encoder (FMLE) directly. But it also supports any "Other Encoders" that adhere to the YouTube Live standard, such as OBS. At this point you select the ingestion bandwidth most suitable to your Internet connection speed and then select "Other Encoders." Have a look at the "Recommended settings" in item #1. Configure OBS to match. You should only have to do this once. It won't change again. Below that you see the "Stream Name." That is the same thing as your Twitch.tv Stream Key. That is the thing that changes for every broadcast. Just copy and paste that "Stream Name" into the OSB "Play Path/Stream Key" field. Once you've done that, click on "Save changes" at the top right corner of the page. Then click "Live Control Room" to go there.
If you have not started your stream yet, you will see a warning at the top of your Live Control Room page. To make the warning go away, all you need to do is start your stream in OBS. You will then get a page that looks like the one to the right. In the middle of that page you will get a real-time evaluation of your stream quality.
[caption id="" align="alignleft" width="377"] Live Control Room - Oops[/caption]
[caption id="" align="alignright" width="383"] Live Control Room - Good[/caption]
This is YouTube Live's version of Twitch.tv's Dashboard. However, you are not yet live. You are in "Preview" mode. This is where you make certain your stream is actually good.
To preview your stream before committing to it, click the "Sync to preview player" option if available. Then click on "Preview." YouTube will prepare the stream and then switch you to the "Preview Stream" page. If you could not select the "Sync to preview player" before, do so now. Then click on the play button in the center of your "Preview" video at the bottom. You should then see your stream in the "Preview" player. Verify your stream status is still good. When you are satisfied all is well, click on the "Start Streaming" button at the top.
You'll get a couple more messages from YouTube and then you'll be live. You can see a duration timer at the top as well as a view other new statistics like "Peak Concurrent" viewers. The "Analytics" tab gives you even more detailed information. You can also click the "View on Watch Page" option at the top of the page to see your stream as a viewer would see it. To get back to the Live Control Room just click on the Analytics option under the stream window.
To end your stream, click on the "Stop Streaming" button at the top of the Live Control Room page. Do not "Stop Streaming" in OBS first. If you do that YouTube Live will freak out. Tell YouTube first, and then you can stop the stream in OBS.
Wow, that was a lot of stuff wasn't it? It's a veritable YouTube Live how to article. It was necessary though. I think most gamers understand the basics of Twitch.tv. I felt it important to put YouTube Live on a semi-equal footing. Thanks for getting this far. Now I can tell you which one I decided to use and why.
For all it's more detailed set up requirements, I had to go with YouTube Live. I like that the streams go directly into my YouTube video channel when done. The hour-long stream I did took an overnight to fully process, but that's a damn sight faster than Twitch.tv. Twitch.tv's recent announcement they would no longer automatically archive streams was a real factor in my not going with them. In fact, not only do you have to specifically turn archiving on, they still will not keep archived videos forever. To make up for this, they allow you to upload to YouTube. But when you do, there is a big hairy warning that videos longer than 15 minutes might fail to upload, so would you like to break the videos into 15 minute segments. That's stupid. I know it has to do more with YouTube limits than Twitch.tv, but that does not change the fact I DO NOT WANT. For the record, I had no issue uploading my 30 minute TESO resource gathering video to YouTube when I said no thank you to the 15 minute splits. But it took over a day for it to get into my channel. The Live Events I recorded on YouTube Live took less than half that time and were twice as big.
But even with Twitch.tv no longer being an automatic "forever" video archive, I was still tempted by the simplicity of their stream now model. As you can see from the above, it takes more than a few minutes to set up a YouTube Live stream. Of course, I haven't tried to set up a forever stream with YouTube Live so I can use just one Stream Name forever. I don't know it YouTube would allow me to do it. But that's for another day. My heart was telling me to go with Twitch.tv because I really liked them.
I'm over that now. You see, I like watching my stream through my Xbox while I'm streaming. I've done that in the past, but I didn't realize it was because of WHEN I was doing it. During "prime time," which is quickly becoming any time, you have to meet Twitch.tv's requirements before they will broadcast your stream. So here's the dirty little secret about Twitch.tv that turned me off of them,
[caption id="" align="aligncenter" width="964"] Twitch TV Only Serves 300 Top Streamers[/caption]
If you read the whole thing via the link I provided, this was originally an Xbox related question. I found it because I couldn't find my channel with the Xbox Twitch.tv app search function. I didn't expect it to appear in the listings you can browse through, I just expected to be able to pull it up directly. I couldn't. It isn't part of the index fed to the Xbox, or any of the other Twitch.tv apps. I've confirmed this is true with the Android app as well. That's chicken shit in my book. It is now obvious to me that unless you're a game company or a very popular streamer (which means you're likely sponsored by a game company,) Twitch.tv isn't interested in you. At least YouTube treats my channel the same as any other schmuck just wanting to share a little fun with his friends without making money doing it. This is the biggest reason I'll be using YouTube Live from now on. If Twitch.tv isn't interested in what I'm about, I'm not all that interested in what they're about. I'm sure that's precisely what they're after. Meh. That said, I still think they are the place to watch gaming tournaments. And one other thing, you can't watch live streams through the YouTube Xbox app at all, at least not yet. I'm hoping that will change. At least you CAN watch YouTube Live via their other apps without Google injecting a limit in how many streams are accessible.
There, now you know why you've started to see more live streams out of me. I needed to settle on whether to use Twitch.tv or YouTube Live. There are obviously pros and cons for each service, and they change according to what you are after. But for now, YouTube Live meets my needs best. But as fast as things change on the streaming front, it looks like I may have to reevaluate all of this in six months. Oh joy.