Question / Help C985 Low Stream FPS

Bensam123

Member
So, I recently procured a Live Gamer HD (C985). It seems to work appropriately, except for a few hiccups here and there (I'm still trying to get my 144hz monitor to work in clone mode). However, the capture computer's FPS in OBS shows up around 22ish. While previewing the CPU is sitting at about 42%, so I'm fine on that. This is at 1080p base and 720p downscale.

The input from the capture card is set at 1080p@30. Running it at 720p@30 or 60 doesn't change the FPS on OBS.

I tried a bunch of different configurations to see if I could boost it, but nothing I tried seems to have helped.
 

Attachments

  • 2014-05-07-2245-29.log
    36.2 KB · Views: 57

Boildown

Active Member
Between the old CPU and ancient video card, I'm not too surprised. Why are you capturing to disk with CFR off? Letting the encoder vary the framerate is only going to hide problems. If you have personal reasons for disabling it, fine, I know we've disagreed on this setting in the past, but during testing you should definitely have CFR on.

That said, around 50% duplicated frames even with CFR off is a real bad sign. I'd guess its the ATI Radeon HD 4250. I'm not very familiar with the red team's video cards, but that thing sounds ancient. Even that CPU should be able to do a lot more.

For that capture card, you want to send it a 1080p60 input, and let it downscale it to 1080p30 or 720p60 itself. I have no idea if that video card is capable of cloning like that or not.

Here's a capture card that's far superior: http://www.ebay.com/itm/Datapath-VisionRGB-ES1-HD-capture-card-/221432509162
Here's a video card that's great for a dedicated OBS streaming box: http://www.newegg.com/Product/Product.aspx?Item=N82E16814487026
 
Last edited:
that gpu is pretty much trash, in comparison to the low/medium end gpus out now (r9 270) the 270 is 2140% stronger of a gpu than his card.
as for the datapath, no sense in getting that. the avermedia c985 is a stellar card. i used to use that when i streamed console.

one of your problems is your settings are all wrong.
Video Encoding: x264
fps: 30 <-- there are two settings for fps, one is by double clicking on the avermedia card under sources and the other is in settings > video. however if you jump up to 60fps you need double the kbps to maintain the same quality. simpley because you're adding double the frames. simple math 2,000kbps @ 30 fps = 66.66kbps per frame, 4,000kbps @ 60fps = 66.66kbps per frame. without going double you lose quality. without being partner, or continuously having enough viewers for quality options, you end up making those without the internet speed needed buffer so much they leave.
width: 1280, height: 720 <-- not showing downscale this looks like custom is being set (not that big of a deal)
preset: veryfast <-- fine (shower preset will give you better clarity in the video at cost of more cpu usage) i personally run medium with an i7. this is a tricky setting as running the cpu above 85% will cause the stream to lag/frame drop (even if obs doesnt report it)
profile: high <-- set to main
keyint: 60 <-- set to 2
CBR: no <-- check mark under encoding
CFR: no <- check mark under advanced
max bitrate: 3100 <-- if you arent partner dont run above 2,500
buffer size: 3100 <-- same as above but with cbr checked it will be grayed out
quality: 9 <-- once you check mark cbr this setting will be grayed out.
 

Bensam123

Member
Why would the GPU matter on a capture PC? I wasn't capturing to disk, I was running preview. Varying the framerate is how I found the problem in the first place.

I said I wanted the option available for 1080p@60. The PC itself is one I actually own. It cost me a total of 0 dollars to use.

I'm not buying a different capture card because you 'disagree' with the one I own. Very unhelpful post.


I wasn't trying to stream at 60fps. I was trying different settings to see if I could get the FPS to balance out. That meant toying with the options on the avermedia card, regardless of that input making it to the live stream.

CBR wouldn't change anything, but I tried it just to see and it still didn't. CBR has nothing to do with the FPS output and doesn't have anything to do with my problem.

Key interval is set to 2 in the settings. It shows up at '60' in log files.

This isn't basic troubleshooting stuff. If you haven't had experience with the c985 or capture cards with similar issues you probably wont be able to help diagnose this.

Please read the original post fully before replying to the topic.
 
Last edited:
cbr is what twitch servers are requiring. your fps all depends really on what the game/hdmi is outputting.
as for my comments about fps/kbps math, thats just some helpful tips.

what i'm guessing here is that your weak gpu is why you're not getting the fps any higher. i'm actually shocked that card gets above 10fps. i gave my kids my old HD 4760 and pretty much any game i tried with that didn't get above 28fps.

this is why my first line of text is about your gpu.
your fps out is based entirely on the gpu output.
 

FerretBomb

Active Member
Jolly, read his post, or the logfile. He's testing locally to troubleshoot an issue. I'm pretty sure Bensam has at least a tiny grip on what's needed to stream to Twitch by now, as he's been around for a couple of years. I know that you're trying to help, but... well. A lot of your info/suggestions in other threads have been kind of inaccurate in general.


Bensam, the video card theoretically could be causing an issue actually; for example, the nVidia GTX 2XX line had VRAM slow enough that it caused issues with OBS in general and actually would drag down the rendering speed, as OBS does use the GPU for compositing/scaling and such. I ran into that problem on my own setup. Have you tried capturing a source/game locally on your encoding machine (without the C985) to confirm it isn't an issue with the encoding system itself, sans the capture? It'd at least rule out a variable, as you hadn't mentioned if you'd done that already or not.
 

Bensam123

Member
Yeah, it may weirdly relate to the GPU... But I'm unsure how. I suppose I could pop the raid card out for troubleshooting, I'll try that later tonight. I don't have the option of adding a dedicated video card to that system and the GPU is embedded.

Is there anyway to disable GPU acceleration completely in OBS? It'd be helpful if a dev chimed in here. I'll also try a lower base resolution without a downscaler to see if that changes anything in that regard.

I do also remote into the computer, but I tried it locally with a monitor without either google remote or RDC and it didn't seem to change anything. One thing I noticed is if I have the preview on the FPS drops to 7-10 even though the CPU usage doesn't change.

I'll also give capturing on itself a try later tonight. One of the problems with that is it isn't powerful enough to really run any sort of content to capture at the same time as capturing it, like a game.


And yes, I do appreciate the help guys. But basic troubleshooting isn't going to cut it here. This is coming from someone who usually helps others with their problems the same as you're trying to help me with mine right now, so please keep that in mind.
 
Last edited:
Jolly, read his post, or the logfile. He's testing locally to troubleshoot an issue. I'm pretty sure Bensam has at least a tiny grip on what's needed to stream to Twitch by now, as he's been around for a couple of years. I know that you're trying to help, but... well. A lot of your info/suggestions in other threads have been kind of inaccurate in general.
the only thing that wasn't completely accurate was the "necessity" of an i7. however it greatly helps when trying to acheive maximum quality/clarity.

i've read his post in its entirety a few times.

what i'm getting from the post is that his video being streamed is on a computer with an
II X4 640 Processor, HD 4250 gpu, then captured from the gpu by the avermedia on the same machine.
provided this is correct, the gpu would be the issue here since its not going to output anything higher than the 22ish fps because obs doesn't output a constant framerate like a 120hz tv would.
you can actually test this on your own by running a preview of your browser on obs and set fps to something high like 60 - 120fps, you'll likely get a low of 10 and a high of 45fps depending on the video card you've got and movements happening
right now my 7950 is mining so i'm using the igpu on my i7, getting those same figures.

what i'm guessing that you're under the impression that obs fps should be a constant to w/e you set it at, right? if so thats not how it works. it acts more like a stopping point, but if its not getting the required fps from w/e its capturing you're not going to hit the cap

Granted i'm tired but i'm pretty sure we are all talking about the same thing here, correct?
 

Bensam123

Member
No, it's a capture PC. I have two PCs. A primary one which I normally use and a capture PC which consists of the hardware you mentioned and the C985.

For the sake of nitpicking, 120hz TVs commonly don't actually accept a 120hz input, only 60hz. They use interpolation to get a 120hz picture. I appreciate the help though bro.


I'm working with some of the things you suggested Ferret, I'll get back to you guys on what I find.
 

Jack0r

The Helping Squad
God, I hope no new users ever sees this thread. Its so full of, I cant even describe it....

22:51:11: video thread frame - [100%] [avg time: 71.348 ms] [children: 5.97%] [unaccounted: 94%]
22:51:11: | scene->Preprocess - [5.27%] [avg time: 3.761 ms]

Your PC needs 70ms to create a picture. For a 60 fps stream, if I remember correct its allowed to at max need 16ms and for a 30fps stream, max of 33ms. I can only see the GPU being the reason for this slow timing. While the cpu is not the most powerful, it should be enough to do 720p 30fps encoding on veryfast. And I guess you kept an eye on your CPU usage to make sure its not the CPU running on 100%.
There is no way to stop OBS from using the GPU as far as I know. Using the GPU is one of the reasons OBS is as fast as it is. I personally got a cheap passive cooled 5450 for about 40euro for the encoding box. OBS capturing my CC at 1080p uses it up to 50%.
 

Boildown

Active Member
Why would the GPU matter on a capture PC?
Bensam, you've been on these forums for a long time. The GPU absolutely has an effect on OBS's ability to capture, and you should know this. You're having the same problem everyone that comes here and wonders why their GTX260, GT620, or Intel HD Graphics (with no number) doesn't work right. Except probably 10x worse. You're right, a lot of encoders work in software only, but Jim designed OBS to take advantage of the GPU to make things faster, but this also means it has an additional requirement over just a CPU, unlike other encoders.

Jollyriffic clearly didn't realize you weren't streaming. Also that keyinterval is measured in the log in frames, not seconds.

I said I wanted the option available for 1080p@60. The PC itself is one I actually own. It cost me a total of 0 dollars to use.
Ok, but you should be aware that that capture card allows 1080p60 input, but only 1080p30 output. If you want 60fps output, you have to downscale at least to 720p.

I'm sorry I mentioned the other capture card, but it allows you to capture at whatever resolution and framerate you want, limited only by single-link DVI (or HDMI), and doesn't cost that much more (on ebay) than the capture card you just purchased and may be able to still return.

And I absolutely stand by the video card I linked. You need a new video card, and for $119 you can't get one better than that for dedicated streaming. The NVEnc on the GTX750 / 750Ti is better than all other Nvidia cards at the moment, because it uses the updated Maxwell chipset instead of Kepler. Quality and performance are both improved. And its cheap.

The cheapest video card you should get to get you out of your current jam is probably the $100 option listed here: http://www.anandtech.com/show/7981/best-video-cards-april-2014 , but you should spend the extra $20 and get a GTX750 IMO.
 

FerretBomb

Active Member
Seconded, I missed the bit about wanting to have the option for 1080@60; the LGHD card accepts that as an input, but as Boildown mentioned it will only accept an input source at that res/rate. It doesn't actually capture at that rate... it's limited to capturing at 1080@30. AverMedia is notorious for this specific bit of intentionally-obfuscated, marketroid bullshit weasel-wording.

The Datapath VisionRGB cards definitely are able to capture at that rate however. The newest one can actually capture at 4K resolutions at full speed. They're kind of pricey, but the OBS native input source plugin to grab direct from the card and bypass DirectShow (I believe?) could be worth it.

Personally, I more favor the Micomsoft SC-512N1-L/DVI as it's cheaper to buy a new one (instead of relying on the capricious nature of eBay), has WAY more input options (HDMI/DVI/Component/Composite/S-Video) as well as a passthrough daughterboard that can be removed for tight-quarters or if it's just not needed. Down side, it has to use DirectShow for capture so it has a few MS delay... enough to be an issue if you're trying to play a game via the preview or projector window (so plan to use the passthrough if you play rhythm games). Up side, @paibox said he's talking with Yuan (the parent company/original chip manufacturer) to possibly get access to their SDK and allow a direct-access native plugin to be developed for OBS.
Oh, also there ARE more updated drivers (Yuan uses a universal driver it appears) but they can be a little hard to track down, unless you know that the Startech PEXHDCAP uses the same chip apparently (also appears to be a similar card for almost half the price, but gets TERRIBLE reviews for some reason).

Really very happy indeed with the one I just picked up. :)
 

Bensam123

Member
I fully realize the C985 can't do 1080p@60. The original thread wasn't just about buying a capture card, it was about putting together PC parts for said baseline, that includes a capture card and discussing the performance baselines required to yield a fluid stream at certain settings. The c985 cost me $85 on eBay and was a good stopping point for me as well as the PC costing 0 dollars. Talking to people is part of planning bro, just because we talk about something doesn't mean I need to do it.

That said, this thread IS NOT about making a 1080p@60 streaming computer, it's not helpful that you keep trying to infer that for some reason there is more wrong here then what I'm having trouble with because I didn't buy the capture card you suggested and you seem to think I don't know the capture card only does 1080p@30. I was not planning on streaming at 1080p@60 any time soon so this works perfectly... for now.

Also the 'you have to buy X hardware to fix Y problem' is also NOT helpful. Brute forcing a problem with better hardware for a problem that can otherwise be fixed with a little nitty gritty is a disservice to those you're trying to 'help' simply because you didn't take time to fully troubleshoot the problem. It's a waste of time and money.


Onto actual useful information and not browbeating. After doing some troubleshooting, I found out a few things.

-Running OBS with video preview disabled increases FPS dramatically.
--I'm not certain why this happens, but it provides a pretty big boost to FPS. I can run 1080p videos on the machine without any problem, so the fact that this is happening could indicate a bug in OBS somewhere. This could be a symptom of a bigger problem and there may even be excessive overhead on more powerful machines that simply 'brute force it' away. (keep reading).

-The filter setting definitely provides a FPS boost when using a 'lesser' filter. Trilinear > Bicubic > Lanczos.
--This is a big boost to FPS settings.

-Going off of the above, I went to straight up 1080p@30 base and could preview at full speed without FPS loss on OBS.

-Taking this further, I changed base resolution down to 1280x720@30/60 and can take the input at full FPS (both times of course when the capture card is set to match).

It appears that using a 1080p@30 input (from capture card) on a 720p base resolution doesn't change performance at all. I have yet to actually try these on a live stream, so it should be interesting to see what happens here from a quality standpoint. I will be testing 1080p@30 capture on 720p base and then a 720p capture on 720p base.

I still need to work out sound piping, but that's an entirely different issue (I use a 7.1 surround sound setup, so I need to downmix before sending it over HDMI). There are a few options available for this I'm trying out, I'll make a post on this once I reach that point.

Some base stats:
Athlon 2 x4 640@3.6ghz
720p@30/veryfast = ~35% processor usage
720p@60/veryfast = ~70% processor usage
1080p@30/veryfast = ~75% processor usage

All of the above appear fluid and don't have any issues. They were stats pulled from playing PS2 in heavy firefights, so worst case scenario.


So lowdown. Disabling video preview and changing the base resolution to whatever you want without a downscale fixed my problems. It didn't require me to buy a $110 video card and a $350 capture card. I'm not sure why disabling preview increases FPS. It'd be nice if you could completely disable GPU acceleration as I have plenty of CPU cycles free and would like to use the downscale option.

I essentially 'built' a streaming PC for $85 and about six hours worth of troubleshooting due to lack of information.
 
Last edited:

Boildown

Active Member
Can you post a log file containing at least five minutes of high action video so we can verify that your changes make such a difference with that hardware? With CFR set to ON, as well (not saying you have to keep it that way, just for this test). If true, that's pretty impressive and will be a good thing to tell people with low-end hardware in the future. Saving to disk, this time, not just a preview.
 

Bensam123

Member
I'm not saving to a ancient SATA hard drive. I'll post a clean one after I do a stream with the hardware. I'm glad you have such confidence in me and my skills though.

And no, I'm not turning CFR on to satisfy your impulsive stream homogenization tendencies.
 

Boildown

Active Member
You really need to cut out the hostility. You've done nothing but complain and insult everyone who's responded to your requests for help. I've tried to ignore it, but I think this is probably the end.
 

Bensam123

Member
I've only acted in kind to your hostile posts Boiled, which could never possibly be wrong and I'm a bad person for thinking otherwise. Not only was I wrong, I was supposed to believe you on 'merit' while you ask me for log files. I suppose you'd have to wonder why I'm being kind of hostile in return.

Ferret I found helpful and did not bitch at him.

But taking that a bit further, I'm now helping everyone who seemed to require a $100 video card and a $300 capture card.

The actual stream tonight was the last segment of the log file. I was messing around before I started streaming.

VOD: http://www.twitch.tv/bensam123/b/527506125
 

Attachments

  • 2014-05-10-0115-26.log
    48.5 KB · Views: 8

Bensam123

Member
Adding a update to this with more information I've figured out.

I've tried out some other configurations and it appears that duplicated frames start popping up in some cases. On the stream this seems to show up as tearing and stutters.

720p@30 base with 720p@30 capture causes 20% duplication
720p@30 base with 1080p@30 capture causes 20% duplication
720p@30 base with 1080p@30 capture with CFR still causes 20% duplication
720p@30 base with 720p@60 capture no duplication

This seems to be a problem with the frames being delivered from the capture card not always being in sync with the frame rate for the output. The higher frame rate for the source removes the duplication issues. CFR doesn't seem to effect anything.

I've also noticed my virtual audio cable will go out of sync over time. I'm not sure why this is. I use it for microphone input, but I don't use a cam so it's not noticeable. I'm sure this would eventually result in a sync issue with a camera if I did.


I got around my 7.1 surround sound issue using VAC. I use a 7.1 speaker VAC with speaker pins as my output device. I then set the VAC cable in recording to 'listen' on my speakers and then use a VAC audio repeater to repeat it over the avermedia HDMI cable output. It downmixes the 7.1 input.

I'm sure there is some latency involved with this going from game output > VAC speakers > VAC record device output > normal speakers, but if there is I can't really feel it and I'm pretty sensitive to latency. I have to add a 100ms offset to the global audio input on the capture PC in order to compensate for the buffer on audio repeater. I still have occasional issues with overflows on my main PC, but I'm working on ironing those out.
 

Attachments

  • 2014-05-10-1744-07.log
    12.1 KB · Views: 8
  • 2014-05-12-2309-48.log
    16.5 KB · Views: 8
  • 2014-05-14-0029-34.log
    7.4 KB · Views: 7
  • 2014-05-14-0031-57.log
    7.8 KB · Views: 7

Lain

Forum Admin
Lain
Forum Moderator
Developer
If you're capturing a console, the consoles will typically play at 29.97 or 59.94 fps, not 30 ot 60 fps. That small distinction may not seem like it means much, but for compositing it does make a difference because every 13~ish seconds (for 59.94) the timing of the input frames starts to get real close to the timing of OBS' frames if OBS is at 30, and combined with inaccuracy in windows timing, can cause their frame timings to 'overlap' and can randomly miss input frames. In the rewrite I've already written in a few measures to hopefully prevent this issue, such as streaming at 29.97 and 59.94 fps, among other things.

It's most likely why running OBS in 720p at 60fps prevents issues with the capture device running at 29.97 FPS.
 
Top