|
I've been quick to recommend people use DXTory instead of xsplit's screen region, but until now I hadn't really done much research on the subject. I decided to do some very rough benchmarks comparing screen region to game source and dxtory. These results will probably vary between systems a lot due to different CPU and video cards. This test is only testing capture, no streaming occurred.
The Results
- Baseline (no capture): 100 fps, 45% CPU usage.
I loaded a unit test map and spawned enough units to give me a nice stable 100 fps on my i5 2500k with an NVIDIA GTX 560 Ti, 1680x1050, medium graphics.
- XSplit screen region (1680x1050): 90 fps, 60% CPU usage.
As expected, CPU use within xsplit jumped once adding the screen region. I was actually surprised how low the FPS hit was though, if you have the spare CPU this seems like a good (and free) method to use.
- XSplit game source: 62 fps, 66% CPU usage.
Pretty terrible. Would not recommend, it maxed out XSplit's CPU usage across a single core and caused a 40% FPS drop in SC2. Despite SplitMedia's claims that game source is ready for prime time, it clearly has a long way to go.
- DXTory (with scaling): 82fps, 55% CPU usage.
Was surprised again by the FPS hit, I thought DXTory would cause the lowest FPS drop prior to these tests. This test involved scaling options set in DXTory to match the XSplit window size (1152 x 720).
- DXTory (no scaling): 82fps, 50% CPU.
Same as above, but with no scaling set so that XSplit has to do the scaling. The CPU hit from this is very low, which seems to indicate something else is causing the FPS drop as there is clearly a lot of CPU to spare.
- DXTory (Synchronous Surface Lock): 92fps, 55% CPU.
Enabling the advanced option 'Synchronous Surface Lock' seems to increase FPS considerably with a minor CPU hit. This option may be video card dependent, so do your own testing do determine whether this helps or not.
The Problem You might look at the results and think you'd be fine using the built in screen region in XSplit. Several pro-gamers have complained that even on high end PCs, streaming makes their game feel laggy. I tried to quantify this lag and found that screen region does indeed cause frame lag. If you capture your game using the screen region feature, expect to see a few frames of input lag.
You can tell if there is frame lag by dragging your mouse around the mini-map very fast and observing if the white rectangle keeps up with your mouse cursor. I shot video of my screen at 60fps and reduced it to 1fps to show the results here:
No Capture (regular SC2):
XSplit Screen Region:
DXTory:
(If the above images no longer work due to bandwidth use, you can download the test videos here).
You can clearly see that the XSplit screen region method introduces frame lag that is not present with no capture or DXTory. Another interesting thing I noticed is that screen region will still cause increased CPU use and frame lag even if it is disabled in the xsplit sources window. I strongly recommend removing all unused screen regions for this reason.
Update: Disabling Aero seemed to remove the frame lag issue with screen capture for me. Your results may vary as this is probably video card dependent.
DXTory Worth It? DXTory isn't free and costs around $50. Whether this is worth it to you depends on whether you are sensitive enough to notice the frame lag caused by xsplit screen capture. If you want the best gameplay experience when you stream, then DXTory is a must. If you aren't at the level where frame lag is affecting your game, then xsplit's screen region is surprisingly efficient, if a little CPU hungry. Another benefit of DXTory is being able to capture in Fullscreen mode, which some pro-gamers prefer to use instead of Windowed Fullscreen.
|
DXtory helps reduce the amount of bitrate as well, no? I know someone showed almost near HQ quality with a below 1MB upload.
http://www.teamliquid.net/forum/viewmessage.php?topic_id=272764
I use DXtory because GameSource is still terrible and screen region is, as you show above, still pretty bad. What's great about DXTory is that it stays on the game-screen, so I can alt-tab to a private skype conversation and it won't show the audience what I am doing.
|
DXTory is just a capture method, none of them will have any effect on bitrate or CPU used during the encoding.
|
I think Rich is saying that streaming with dxtory is better than with xsplit. That's... good I guess. Yes let's go with that. Good.
|
No, you need to stream with DXTory + XSplit.
|
R1CH, you're a savior to all streamers mate. Thanks very much for the research
|
United States12125 Posts
R1ch, you're fucking amazing.
|
I didn't even know there was this synchronous surface lock, I've got an ati 7970 so we'll see how that effects my performance. And not sure if others do this, but disabling flash/having only one browser tab up for stream control will significantly increase fps. Playing with flash enabled in the background reduces my fps by like 20%, and cause the occasional stutter.
|
Hahah i read it as Xsplit captures meth i was confused for a bit but haha R1ch the hacker man.
|
Yeah closing all background applications using GPU / CPU is important when streaming. Browsers especially can be playing flash-based ads that will use CPU and GPU resources. On that note, the TwitchTV dashboard video preview must be paused, pressing "Hide Video" does not actually stop it from playing and consuming resources, it only hides it.
|
Thanks R1CH, was looking at streaming options and messing around with Xsplit's free version, good to have extra advice. 5/5
|
Had no clue it was this noticeable. Wow.
|
T.O.P.
Hong Kong4685 Posts
How about other video capture software like VHScreenCap and SCFH
|
VHScreenCap is essentially the same as XSplit (SplitMedia bought vhscreencap and vhmulticam and made xsplit out of it). Haven't tested enough with SCFH, think it's probably on par with xsplit but it's incredibly annoying to setup.
|
Nice tests. Just drove by here to point out that the title in the sidebar is:
XSplit capture meth…
which could have been the title of an entirely different kind of thread.
|
Very nice tests, was planning on doing the same. Ive gotten the same results as you with region vs game source. Shocked to see dxtory beeing that better though.
|
R1CH, I noticed that I get way better framerates when I keep Aero enabled (like 180-220 fps with various screen capture methods (x-split inbuild, uscreen, scfh, dxtory), while I only get 20-50 fps when I disable aero.
When aero is disabled opening X-Split and having it visible on my 2nd screen without any screen capture alone reduces it from 250 to 90.
I always thought that Aero is bad for performance so I am a bit confused now.
Also game source is at 150fps for me with Aero enabled and at 20-30 fps with Aero disabled.
Does gamesource also cause the framelag?
|
R1CH you are a god amongst men! Thanks for this post.
|
Are your tests done in fullscreen or fullscreen windowed mode? I've noticed that while using XSplit and fullscreen mode, the UI flashes, and thus you have to run it in fullscreen windowed, but DXTory works fine in fullscreen mode.
|
Forgot to mention, these tests were with Aero enabled. Will re-test a bit later with Aero disabled but I suspect this will not make any difference unless there are layered windows.
|
|
|
|