For the best experience use full HD.

Thursday, May 22, 2014

The Good, the Bad and the Ugly of Streaming

I'm certain many of you have noticed a change in the types of articles I've been posting lately. I've been posting a lot of gameplay video. Some of them have been quite lengthy. The unofficial reason for this is my brother enjoys watching the videos. :D  <3  The official reason for this has to do with this post I put up on April 11, 2014. I'd been running some testing of Twitch.tv versus Google Live. The tl;dr of that post was I opted to go with Google Live rather than Twitch.tv. That was for a variety of reasons, not the least of which being Twitch.tv would not show more than the 300 most viewed channels in any of their apps - including their console apps. You can't even bring up a channel by typing its URL in directly. As I watch Twitch.tv almost exclusively on my Xbox, that is unacceptable. Until it changes, I won't be streaming via Twitch.tv (except to do more testing. ;-) )

This paragraph is a bit of a tangent, but it deserves mentioning at this point. News e-zines last weekend reported Google had agreed to buy Twitch.tv for one billion dollars. This is an unsubstantiated claim. Neither Google nor Twitch.tv will discuss it. People's heads are already imploding over this possibility. It seems Twitch.tv is some sort of sacred cow with many gamers. I'll go on record now and state I support this acquisition. I don't necessarily like it that Google will become even bigger, but they have the resources to take streaming to the next level. Twitch.tv does not. If they did, they wouldn't write an app that caps available channels at 300. They would also allow streaming at higher resolution than 720P. With most laptops now coming with a full HD screen, Twitch.tv's 720P limitation is showing its age. It's old, and there's not been much done by Twitch.tv about it.

Now back to your regularly scheduled post. That's why I've been running so many live streams lately. I've been exploring the full HD+ capabilities of YouTube Live. And I have good news and bad news about it. The good news is YouTube doesn't really care what resolution I stream. They happily accept my WQXGA (2560x1600) stream. It processes without a hitch, once I get the stream going. Now for the bad. The getting it going part is the real issue with YouTube live. It's almost painful. With Twitch.tv, it's relatively easy to click "stream" and go. There is only one stream key and you can easily hard code it into your streaming program. Each YouTube live session has a unique key. You have to set up the stream, update your software, and make certain everything synchronizes before you can "go live." It's a hassle, and not a small one.

But that hassle isn't the ugly of the situation. The ugly happens regardless of which service I use. In fact, the ugly really has nothing to do with either. The ugly is video compression. Without it, streaming just isn't possible. I've done quite a few videos in the past using FRAPS. FRAPS records without compression and captures gameplay with an unmatched fidelity. That's its claim to fame. It also gobbles gigabytes of hard drive space in seconds. A few minutes of FRAPS capture will eat 25 gigabytes of storage without hesitation. Storage has never been cheaper, but you just can't store an hour of gameplay capture using FRAPS. They don't make hard drives that large. Okay, they do make hard drive systems that large, but most of us can't afford them for our nerd caves. I have half a terabyte of storage I can dedicate to video capture. I was hoping that by streaming I could move all that storage requirement on to Google's shoulders.

But with only a 5GB uplink speed, I can only hit a bitrate of about 3000. To get the video out in real-time, compression is a necessity. In a fast action game like Assassin's Creed IV: Black Flag (AC4,) that can get really ugly, really fast. The video below is a prime example of what I'm talking about. The first TWELVE (12!) minutes is me futzing with the YouTube Live and Open Broadcast Software (OBS) settings. You can skip that unless yo need a good chuckle - or like staring at the asteroid Vesta. Venus is briefly there at the beginning too. :) Once the game session actually starts, you can see the effects of the video compression fairly quickly. When I'm stopped, the graphics are clear. When I'm moving or turning, things pixellate and blur terribly. This is not a frame rate issue. You can see my yellow FRAPS frame rate counter in the lower right corner. It pretty much stays in the high twenties. I've got OBS set to send at 30 frames a second, which is the most YouTube Live will accept. After many tests, including this test with Nvidia optimized graphics settings, I can only conclude that video compression is the big ugly. So take a look at the video to see the big ugly and then read the paragraphs below the video on what I've decided to do about it.

[youtube https://www.youtube.com/watch?v=Ij59zZTanzs?rel=0]

Thanks for sticking around this long. To start the, "what I'm going to do about it" paragraphs, let me say I am not happy with the quality of my streamed AC4 sessions. AC4 is a game really not suited for streaming, even though Twitch.tv is built into Ubisoft's Uplay client. Even with the 720P resolution drop, I still get blurred graphics when I move quickly. You can see it for yourself over on my Twitch.tv channel. Here is a link to the shorter section of the test broadcast I made this week. It won't be there forever (another strike against Twitch.tv) so I put it on YouTube as well. It was actually supposed to be one long broadcast, but AC4 locked up in the middle of a fight. That's the first time it's ever done that, but I digress.

So streaming AC4 is not really an option. I am currently testing the OSB save-to-file feature to see if I can get acceptable quality full-length gaming sessions recorded. Since the broadcast is going to disk, I can set the video quality to as high as it will go. My first hour-long test did show some blurring, but not nearly as much as the live stream. And the entire hour-long test consumed less than four gigabytes of disk space! For other games that have lower end video requirements (like EVE Online,) broadcasting a live session will work rather well. Some have a Twitch.tv client built-in, like EVE Online, but I'll use OBS thank you very not. EVE Online's Twitch.tv capability forces low resolution and doesn't get 16:10 aspect ratio at all. But long streamed play sessions will pose no real video quality issues.

For shorter videos like TESO: Defeating Galthis, I'll continue to use FRAPS, because you just can't beat the quality. It also makes video editing in programs like Adobe Premiere CC a pleasure. If I'm going to do a spoiler, I should at least give the viewer as good a picture as I can. XD

That's it so far. I will certainly continue to test and adjust and test some more. And since the time I spend testing is time I'm not thinking up blog posts, I'll keep posting the videos I make: good, bad and ugly. I also need to expand it to other games I play; see which ones stream well and which don't. I've only really tested AC4 and TESO. All my EVE Online videos were done using FRAPS. Oh, and I want to adjust various video settings to see if some settings promote the compression issues more than others. I suppose this will be my summer project. It'll be fun!

No comments:

Post a Comment

Be civil, be responsible and most of all be kind. I will not tolerate poor form. There will be no James Hooks here. We are all better than that.