Question / Help Capture PC Specs and Stats

Bensam123

Member
Does anyone have utilization numbers and specs for a secondary PC encoding at 1080p@60 at a medium preset?

I'm currently in the planning phase for a capture PC as it seems like the next logical step for me and also the cheapest of the options available (unless OBS adds lan encoding sometime soon). It is really hard to find hard concrete benchmarks or stats on what is a good processor to use besides 'oh yeah, I got a 3570k and it works good', which really doesn't help me trying to make a well informed decision.

Really any utilization statistics would be good. 720p@60 medium would also be a good baseline I'm interested in as well. I can benchmark my current PC (with a 8350) just encoding something on the screen, but I don't know how a local workload using monitor capture differs from using a capture card (if there is more overhead or whether or not utilization numbers will be generalizeable to a capture PC). As right now 1080p@30 uses about 30% of my processor, 60 around 50% (on average in high motion scenes), so I could technically buy a cheaper processor for a secondary PC and still be alright.

I don't plan at streaming at 1080p@60 yet, but it's a option I want to keep open if I'm going to dump money on a new PC.
 

Jack0r

The Helping Squad
Problem is, all you can get is x264 benchmarks which are done by video encoding and I think only on the veryfast preset. In most cases set up for 2 pass encoding as well.
So they wont really give you exact results to say, these and these processors can do 1080p up to 30fps and these make 60 no problem, on this and this preset.
What I normally do is check who can do 1080p60 on medium right now, what cpu does he have, and what rough benchmark values does that cpu get. For example passmark values:
ihwxsuZEXDyHm.PNG

Now I hope you tested some fast paced content, as 50% seems a bit low for medium preset and 1080p60, but assuming you did. Any CPU in the 9000 points range should be enough for your plans and still give you a bit room to tweak the preset assuming you really only get 50% usage.

From my experience I can say that using a capture card is slightly more cpu intensive than using OBS's capture methods, but its normally pretty low, especially compared to other software :D

If you want to get a CPU below 9000 points, it could also work, but then I would again see if you can find someone that tested it a bit.
 

Boildown

Active Member
For 1080p60 at medium, I would get a hexa-core, to be safe. The problem with any advise anyone is going to give you is that it depends on your content... some is easier to encode than others. So someone claiming that their i7 2600k had no problem with 1080p60 at Medium might not be lying while at the same time when you duplicate their setup, it doesn't work for you. Because you try to encode more complex video than they do. So take any advise with a grain of salt, unless you're using the same input video you might not get the same results.

Also some people are happy with 5% duplicated frames, while others (like me) are unhappy with anything over 0.5% duplicated frames. (Typically I advise that people should aim for 1% or fewer.) The difference between 5% and 0.5% can easily be one or two presets difference. I.e. I might be able to hit Medium preset if I'm happy with 5% duplicated frames, however if I think that looks like ass and insist on 0.5% duplicated frames or lower, it might only be able to manage Fast or Faster. How are you to know which is the case, when someone claims X CPU can do Y preset?

Now you also mentioned 1080p30. This is probably do-able on an i7-4770k, and you can use a cheaper capture card, like an Avermedia Live Gamer HD to do it. To do 1080p60 you need a more expensive capture card, like one of the Micomsoft cards imported from Japan, or a high-end one, like a Datapath. And you'll need a better CPU for 1080p60 as well.

My advise would be:

1) Don't obsess over the preset so much. Fast is visually indistinguishable from Medium for most people, yet uses probably half the CPU. Instead I would get something you can afford easily (get an AMD 8-core or Intel 4/8 with HT at least though) and tweak your settings to use the best preset it can do, without obsessing that you must make a certain one.

2) Make sure that single-CPU gaming/encoding won't work for you first. A second PC is a large expense, don't do it unless you're sure.

3) Before getting a capture card, try this: https://obsproject.com/forum/threads/guide-two-pc-configuration-without-capturecard.6757 (pretty much the LAN encoding thing you mentioned).

4) Don't get a capture card for better quality... the best quality is capturing the game locally, because of color conversions, or something like that. Get it for off-loading the CPU, or because what you're trying to stream can't be encoded locally (DirectX 8 or lower game, console, you use SLI/Crossfire, etc).

5) If you're thinking of streaming to Twitch, don't do 1080p60 to Twitch.
A) 3500 bitrate isn't enough to make it look good, even at Medium preset, and Twitch considers anything over 3500 bitrate to be abusing the system.
B) Flash, which is used by Twitch's web browser video player, can't manage to playback 1080p60, or even 720p60 for that matter. Seriously, use a framerate monitor when playing back a Twitch VOD in fullscreen (FRAPS works well for this). The framerate will swing wildly between 30 and 50 or so, but it'll never really hit 60 or stay close to it, when playing back the VOD, even on the best computer, even with the source video was encoded at 60fps. Flash just sucks. So its pointless to stream to Twitch at higher than 40-45 FPS or so.
 
Last edited:

AndehX

Member
Boildown makes extremely good points here. Especially about streaming to twitch at anything higher than 40 fps. It's pointless for the reasons mentioned above. Stick to 30 or 40 fps. I would only ever consider 60fps if I was streaming to somewhere like hitbox.tv
 

Bensam123

Member
Yeah, I was looking at some benchmarks and they list first pass and second passes, but I don't know exactly how that relates to the workload x264 has for live streaming. Anandtech has that listed for most of the CPUs they benchmark.

http://www.anandtech.com/bench/product/188?vs=698

Cumulative scores aren't really that great at assessing a particular workload, which is what I'm looking at right now. This is just for streaming so that's specifically what I want and the best bang for the buck. Hexacore seems like complete overkill as I can do 1080p@30 for most games on the computer I'm playing games on, my 8350. The idea of building a capture PC is because I don't have the $650 to dump on a hexacore setup for a primary gaming computer.

It'd actually be nice if one of the developers or someone who is more familiar with the encoding algorithm for live streaming could chime in here as to what sort of workload it's best represented by.

Interesting information on capture cards using more processing power Jack0r. I thought it would've required less...

Depending on the price I can get away with a capture PC for around $400, that depends largely on the processor... which is what I'm looking at right now.

I made a thread on LAN encoding about a year before those guides popped up on here (-_-). In it's current implementation though, it's not flexible enough to use mainstream and it still runs into issues. I was hoping Jim would eventually get around to working on it as he originally expressed interest in it, but the rewrite happened and dev power has been sucked into that for like the last six months. Otherwise I could just make do with my server for no additional cost to me.

https://obsproject.com/forum/threads/encoding-over-lan-and-gpu-assisted-encoding.329

1080p@60 is a forward looking baseline. I know all about flash limitations and strain on viewers. Flash wont stay the same, streaming wont stay the same, workloads aren't equal forever. This isn't a computer I plan to throw away the moment something new comes along because I didn't plan ahead.

If you're looking for a resource on capture cards, OBS has one for comparisons. I already have two cards in mind that I'm looking at, this once again depends on the cost of the CPU, which is what this largely circles around.

https://docs.google.com/spreadsheet/ccc?key=0AgpHJw8rCd_VdEVRXzVJbUV2M0xDZEdxWGNXRkpDLWc#gid=0
 

Videophile

Elgato
You definitely want a 4930k or wait for the new X99 chipset 8-core 5930k. My 4770k can do 1080p30 at fast and its got a 4.2 OC. The jump from 1080p30 to 1080p60 is pretty big, and honestly, who needs it? Twitch does not recommend it due to most people not being able to watch and the bitrate of 3500 is pretty low.

I myself am getting a 2-cpu Xeon 2620 setup for 1080p60.

To do 1080p60 at OK Quality look at the streamer Widigity bear. He has 2(!!!) 12 core xeons(!!!) and his stream is not smooth all the time. He streams BF4 at 1080p60.

Just some points.

-Shrimp
 

Bensam123

Member
Please read the first post before replying. This isn't for the computer that I'm using for gaming, it's for a secondary PC that will handle just capture and encoding. I'm well aware of flash limitations.

I'll do more experimentation with CPU utilization and post back here with results. It's really hard to find helpful information on this anywhere besides 'throw a hex core at it' (which is extreme overkill) or people who have relatively little experience throwing off the cuff recommendations around. I'll probably end up getting a 8320 and parts off fleabay, but we'll see.

Widgity had no idea what he was ordering when he bought that PC, there is no way that is possibly needed and he doesn't even have it setup properly to take advantage of all the cores (if you ask him, x264 isn't setup to take advantage of that many cores by default). Maybe if he was streaming 4k or something like that... I could see that possible being remotely utilized. I have nothing against him and I do watch his channel, but he isn't the most knowledgeable person when it comes to computer hardware. Software I'm sure is the complete opposite. Someone who didn't know what they were talking about probably recommended it to him and he took their recommendation.


Can anyone confirm whether or not the Avermedia C985 works with OBS? It's what I'm considering right now. I have no interest in the built in encoder. Just looking primarily at video quality.
 
Last edited:

Boildown

Active Member
Yeah the C985 works with OBS, it was my first capture card. Note that even though it can take a 1080p60 input, it can only output 1080p30 or 720p60, not 1080p60.

A 12-core CPU presumably means x264 will see 24 CPUs with hyperthreading and want to open 36 threads. That's way beyond the diminishing returns for 1920x1080 resolution with x264. Not only that, but each of those cores is relatively slow. The upcoming octo-core Haswell-Extreme CPU will be right in the sweet spot for people with lots of money to burn... 24 threads opened by x264 with that setup is right at the maximum anyone should have for x264 at 1080p, and all those cores will be running as fast as anything Intel makes. That setup will last a long, long time, even when HEVC is commonplace. I'd consider it myself if I'm not still in my streaming lull, kinda waiting on Star Citizen atm. But also, its going to be a lot of money for little return, so probably not.
 

Bensam123

Member
Update on this, 1080p@60/veryfast preset uses 65% of my 8350@4.2. 1080p@30/veryfast uses around 30%. This was in TF2 playing as scout, so it's representative of a worst case scenario as far as encoding goes. 1080p@30/fast uses around 70% processor utilization once again. Doubling the FPS pretty much doubles the cpu utilization.

720p@60/fast used about 65% of my processor, 720p@60/medium started dropping frames (but I had to run a game in the background, so I don't know if this is doable with a capture PC). 720p@30/med resulted in 50% utilization.

So it's not that far fetched to see a medium preset sucking down a hexacore for 1080p@60. I don't have a 4670k to compare this to, so I don't know if Intel would fare better or not. It definitely looks like 1080p@60/veryfast is doable on a 8350. A 8320 could easily be OC'd to similar speeds and found for cheaper.


Yes, I saw the limitations. I'm not looking for the be all end all of capture cards as those cost a couple thousand, It just looks like the best bang for the buck. I don't intend to do 1080p@60, I just want the option to do so and some growing room.

I saw haswell-e, I'm going to assume Intel is going to be dicks and make the six core model $550 and the eight a nice $1k. You can buy alot of alternative hardware for those prices. I really hope Jim takes a look at lan encoding again, it'd totally bypass the crap with capture cards (which is one of the reasons why I didn't buy a capture PC in the first place).
 
Last edited:

Boildown

Active Member
For the lan side, I'm pretty sure he's said on the suggestions forum that those kinds of things will be possible in the OBS Studio release. Based on how long its taken to get a basic release of that out though, I'd guess that this will be a feature that will take some time to be added, unless someone other than Jim decides to do it first.

The Datapath E1S model capture card is pretty awesome and would do what you need and more, and I found mine on Ebay for $250, and since then I've seen them for as low as $200. They are way better than anything else in that price range. They do need a PCIe x4 slot, or I also found out they could run in a PCIe x16 SLI slot sharing with the video card in x8/x8 mode. Of course they aren't always actually for sale on Ebay, they appear typically once a month or so. It seems 1080p60 is too much for just a PCIe x1 slot to handle.

If you want to save money on your CPU, consider a lower (but not lowest) end Haswell CPU, with Intel HD Graphics 4600, and use Quicksync for all your encoding. This is the least expensive one: http://www.newegg.com/Product/Product.aspx?Item=N82E16819116945 . Haswell's Quicksync has been measured to have quality on average around the level of x264's Fast preset, which is better than the 8350 is capable of in software. And this CPU is still cheaper than even the 8320.
 

Bensam123

Member
Intels aren't cheap. You get more bang for your buck on AMDs below $200 almost always hands down. I'm looking at 8320s on eBay for around $130. Give it a bit of a clock boost and it's at 8350 speeds. A 4330 can't compete with that, it's only dual core too.

Quicksync isn't better then CPU encoding as far as compression goes. It's not the equivalent of fast, it's the equivalent of superfast (which is easier and less compressible then veryfast, the default encoding preset). Overall you end up with worse quality using Quicksync over veryfast at the same bit rate, regardless of processor. The same goes for NVENC, that's why I'm not just straight out buying a Intel to use Quicksync, I'd take a quality hit doing that and it's going to end up about the same price... as well still having part of the workload on my main PC.

The Datapath sounds pretty solid, but a little too high and and not readily available. Hopefully lan encoding happens and I wont need a capture card. The whole loss of quality thing still irks me
 

Boildown

Active Member
Intels aren't cheap. You get more bang for your buck on AMDs below $200 almost always hands down. I'm looking at 8320s on eBay for around $130. Give it a bit of a clock boost and it's at 8350 speeds. A 4330 can't compete with that, it's only dual core too.

Quicksync isn't better then CPU encoding as far as compression goes. It's not the equivalent of fast, it's the equivalent of superfast (which is easier and less compressible then veryfast, the default encoding preset). Overall you end up with worse quality using Quicksync over veryfast at the same bit rate, regardless of processor. The same goes for NVENC, that's why I'm not just straight out buying a Intel to use Quicksync, I'd take a quality hit doing that and it's going to end up about the same price... as well still having part of the workload on my main PC.

That was true before Haswell. But this review, which appears to be very comprehensive, shows that the Haswell edition of Quicksync is much improved over the predecessors, even on a quality per bitrate basis: http://www.tetrachromesoftware.com/q264Test1Analysis/q264test_1.html .
 

Jack0r

The Helping Squad
Compare%20Encoders%20-%20hd_other_samsung_earth_from_above%20on%20has1%20-%20Main%20Profile%20-%20PSNR.png

Worst, charts, I, have, seen, in, my, life. Bad color choice, no interactivity, too small, no information about how a PSR of 38 or 46 might look (he just says that his x264 results change if he tunes for psnr, but still does it for the tests ?! wtf ?!), only info about the quality tests: a nature scene was used (which is typically very comparable to the encoding we do here, NOT) So whats the min and max for psnr? His linked wikipedia article gives no clear answer to that. Only some examples.

http://www.twitch.tv/jack0r/b/521214293 720p 30fps 3000kbit veryfast x264
http://www.twitch.tv/jack0r/b/521614562 720p 30fps 3000kbit preset2 Haswell QS

At this point I should also mention that I am using a normal i7 4770, an Iris pro chip would give different results. But try getting one of those for a desktop :)

Example for an interactive chart: http://jack0r.com/high/720vs1080.html

EDIT> Totally forgot to talk about Lan Encoding. How exactly are you thinking this will work?
The gaming PC will still have to create a video stream and send it to the second PC. You could maybe try to send over a totally lossless video but your network should be in the gbps range then I think. Currently the easiest way is to do it with quicksync or nvenc. Just use a bitrate around 50mb/s and then encode it further on the second pc to a streamable bitrate. But if you have no qs or nvenc, the cpu on the gaming PC will still have to do this.
 

Bensam123

Member
Yeah, everything I've heard is the encoder for haswell is worse then sandybrige and ivy bridge, with the exception of iris, which you can't buy for the desktop cause Intels a tool like that... If we were talking about Iris, that would be on par with very fast. Quicksync and Nvenc always seem to run into issues with high motion, the normal scenes are great though. Lots of fast turning and changes in direction are it's achilles heel, which is really what FPS's are.

Lan encoding has been covered a few different times. If you don't have access to a encoder like NVENC or Quicksync, you'd use the very lightest profile and a extremely high bitrate. 25-100Mbps and it's almost completely lossless, while incurring minimal compression artifacts. The second computer accepts the stream and then re-encodes it. It doesn't need to be lossless or raw monitor data. The impact of doing this is very minimal, much more so if OBS natively did it, but it's a duct tape job for proof of work.

You can sorta do this already with Xsplit, some people worked on a different method with a opensource RTMP server. I used a adobe server for my testing. It still runs into problems and it's a PITA to setup and use.
 

Jack0r

The Helping Squad
I did that with OBS and nginx, but even ultrafast preset has some effect on the gaming PC and you have the effect of the capture as well. I thought you talked of something different, that is equal to a capture card capture.
XSplit is also just running a lightweight red5 server to do it. And you still do encoding on the main pc there :) I am not saying the impact is big, but you should still have a beefy system to not feel it.
 

Bensam123

Member
Aye, I already measured the impact... It's pretty negligible compared to running full on encoding though. Running ultrafast uses like absolutely no cycles, especially if you use OpenCL on top of it. From utilization numbers associated with Quicksync it almost sounds on par with it, if not better at some points. It's too bad OCL causes crashing. All of that could be smoothed out if lan encoding got some loving though.
 

Boildown

Active Member
The comparison is for Intel HD Graphics 4600, which is included on many but not all Haswell CPUs. I don't see how Iris or other Intel HD Graphics that are not Intel HD Graphics 4600 play into these charts at all.

I agree that the color choices are bad, you can't or can only with great effort distinguish between Very Slow and Slow, Medium and Fast, and Very Fast and Super Fast (and what happened to Faster and Ultra Fast?). I don't criticize his lack of "interactive" pictures. In still frames its usually difficult to pick out differences, and the videos should be taken as a whole, not judged by one frame out of 50,000. And then there's the factor of seven different encodes to "interact" between, and the dozens of tests just like this one he performed. Using the chart as he did, was entirely appropriate and gives us the necessary information.

As you can see from the blue line, the Intel HD Graphics 4600 "Q264" set to its middle preset, "4" (they go from 1 through 7), at the bitrates we run to Twitch, moves between Slow, Medium, and Fast, before falling off at higher bitrates. I challenge you to find another encoding solution to beat Q264's "Slow" quality equivalence at 2000 bitrate than that $140 i3-4330 Haswell I previously linked.
 
Top