Question / Help Avermedia C985 Encoding.

Boostsnail

New Member
Hey everyone! I just started streaming a couple of weeks ago and love it. I am also loving OBS and its free services, however, I do have a few questions. First off, here are my PC specs:
MOBO- ASUS P8P67 Pro
Processor- i5-2500k @ 3.30 GHz
RAM- 8gb ddr3
GPU- GTX 580
I understand my PC is a little dated for streaming, but I will mainly be focused on console streaming anyway. Because my PC is a little dated, I purchased the C985 because of the claimed "low CPU usage". My stream quality looks very nice, but I am pegging my processor out if I run 60fps and better x264 encoding quality. This raises concerns for "next-gen" gaming since more and more games will be running 60fps. I guess my question is, can I, and if so, how do I take advantage of the cards built-in encoding abilities?

Here is a log from my most recent "Stream Preview".


Code:
02:51:59: Open Broadcaster Software v0.583b - 32bit (´・ω・`)
02:51:59: -------------------------------
02:51:59: CPU Name: Intel(R) Core(TM) i5-2500K CPU @ 3.30GHz
02:51:59: CPU Speed: 3310MHz
02:51:59: Physical Memory:  4095MB Total, 4095MB Free
02:51:59: stepping id: 7, model 42, family 6, type 0, extmodel 1, extfamily 0, HTT 1, logical cores 4, total cores 4
02:51:59: monitor 1: pos={0, 0}, size={1920, 1080}
02:51:59: Windows Version: 6.1 Build 7601 S
02:51:59: Aero is Disabled
02:51:59: -------------------------------
02:51:59: OBS Modules:
02:51:59: Base Address     Module
02:51:59: 012A0000         OBS.exe
02:51:59: 6B1E0000         OBSApi.dll
02:51:59: 6F5E0000         DShowPlugin.dll
02:51:59: 6F660000         GraphicsCapture.dll
02:51:59: 70620000         NoiseGate.dll
02:51:59: 6F540000         PSVPlugin.dll
02:51:59: ------------------------------------------
02:51:59: Adapter 1
02:51:59:   Video Adapter: NVIDIA GeForce GTX 580
02:51:59:   Video Adapter Dedicated Video Memory: 1560739840
02:51:59:   Video Adapter Shared System Memory: 2684235776
02:51:59:   Video Adapter Output 1: pos={0, 0}, size={1920, 1080}, attached=true
02:51:59: =====Stream Start: 2013-10-31, 02:51:59===============================================
02:51:59:   Multithreaded optimizations: On
02:51:59:   Base resolution: 1280x720
02:51:59:   Output resolution: 1280x720
02:51:59: ------------------------------------------
02:51:59: Loading up D3D10 on NVIDIA GeForce GTX 580...
02:51:59: ------------------------------------------
02:51:59: Audio Format: 44100hz
02:51:59: Playback device Default
02:51:59: ------------------------------------------
02:51:59: Using desktop audio input: Speakers (Realtek High Definition Audio)
02:51:59: ------------------------------------------
02:51:59: Using auxilary audio input: Microphone (Realtek High Definition Audio)
02:51:59: ------------------------------------------
02:51:59: Audio Encoding: AAC
02:51:59:     bitrate: 160
02:51:59: ------------------------------------------
02:51:59:     device: Video Camera           ,
02:51:59:     device id \\?\usb#vid_045e&pid_0294&mi_00#7&1ff92a36&0&0000#{65e8773d-8f56-11d0-a3b9-00a0c9223196}\global,
02:51:59:     chosen type: YUY2, usingFourCC: false, res: 640x480 - 640x480, frameIntervals: 333333-2000000
02:51:59:     use buffering: false - 0, fourCC: 'YUY2'
02:51:59:     audio device: Disable,
02:51:59:     audio device id Disabled,
02:51:59: 
02:51:59: Using directshow input
02:51:59: Using text output
02:51:59: ------------------------------------------
02:51:59:     device: AVerMedia HD Capture C985 Bus 4,
02:51:59:     device id \\?\pci#ven_1af2&dev_a001&subsys_a0011af2&rev_00#4&1d7623a1&0&00e2#{65e8773d-8f56-11d0-a3b9-00a0c9223196}\{957bd672-7934-4b55-b81a-3e22b14c679a},
02:51:59:     chosen type: YV12, usingFourCC: true, res: 1280x720 - 1280x720, frameIntervals: 166666-666666
02:51:59:     use buffering: false - 0, fourCC: 'YV12'
02:51:59: 
02:51:59:     device audio info - bits per sample: 16, channels: 2, samples per sec: 48000, block size: 4
02:51:59: Using directshow input
02:52:00: Scene buffering time set to 700
02:52:00: ------------------------------------------
02:52:00: Video Encoding: x264
02:52:00:     fps: 30
02:52:00:     width: 1280, height: 720
02:52:00:     preset: medium
02:52:00:     profile: high
02:52:00:     keyint: 60
02:52:00:     CBR: yes
02:52:00:     CFR: yes
02:52:00:     max bitrate: 2500
02:52:00:     buffer size: 2600
02:52:00: ------------------------------------------
02:52:00: MMDeviceAudioSource: Frequency for device 'Speakers (Realtek High Definition Audio)' is 384000, samples per sec is 48000
02:52:00: MMDeviceAudioSource: Frequency for device 'Microphone (Realtek High Definition Audio)' is 352800, samples per sec is 44100
02:52:11: Total frames encoded: 308, total frames duplicated: 0 (0.00%)
02:52:11: Total frames rendered: 312, number of late frames: 0 (0.00%) (it's okay for some frames to be late)
02:52:12: 
02:52:12: Profiler time results:
02:52:12: 
02:52:12: ==============================================================
02:52:12: video thread frame - [100%] [avg time: 1.124 ms] [children: 22.2%] [unaccounted: 77.8%]
02:52:12: | scene->Preprocess - [12.5%] [avg time: 0.14 ms]
02:52:12: | GPU download and conversion - [9.79%] [avg time: 0.11 ms] [children: 7.92%] [unaccounted: 1.87%]
02:52:12: | | flush - [5.6%] [avg time: 0.063 ms]
02:52:12: | | CopyResource - [2.14%] [avg time: 0.024 ms]
02:52:12: | | conversion to 4:2:0 - [0.178%] [avg time: 0.002 ms]
02:52:12: Convert444Threads - [100%] [avg time: 0.498 ms] [children: 98.8%] [unaccounted: 1.2%]
02:52:12: | Convert444toNV12 - [98.8%] [avg time: 0.492 ms]
02:52:12: encoder thread frame - [100%] [avg time: 0.85 ms]
02:52:12: ==============================================================
02:52:12: 
02:52:12: 
02:52:12: Profiler CPU results:
02:52:12: 
02:52:12: ==============================================================
02:52:12: video thread frame - [cpu time: avg 0.6 ms, total 187.201 ms] [avg calls per frame: 1]
02:52:12: | scene->Preprocess - [cpu time: avg 0 ms, total 0 ms] [avg calls per frame: 1]
02:52:12: | GPU download and conversion - [cpu time: avg 0 ms, total 0 ms] [avg calls per frame: 1]
02:52:12: | | flush - [cpu time: avg 0 ms, total 0 ms] [avg calls per frame: 1]
02:52:12: | | CopyResource - [cpu time: avg 0 ms, total 0 ms] [avg calls per frame: 1]
02:52:12: | | conversion to 4:2:0 - [cpu time: avg 0 ms, total 0 ms] [avg calls per frame: 1]
02:52:12: Convert444Threads - [cpu time: avg 0.325 ms, total 187.2 ms] [avg calls per frame: 2]
02:52:12: | Convert444toNV12 - [cpu time: avg 0.325 ms, total 187.2 ms] [avg calls per frame: 2]
02:52:12: encoder thread frame - [cpu time: avg 0.217 ms, total 62.4 ms] [avg calls per frame: 1]
02:52:12: ==============================================================
02:52:12: 
02:52:12: =====Stream End: 2013-10-31, 02:52:12=================================================
 

unwary

New Member
You can't use the hardware encoder portion of the live gamer hd in OBS. It's only for Xsplit or Recentral. I've heard that the encoding quality isn't all that great. It's somewhere between the Very Fast and Super Fast preset in terms of quality.

You might be better off using Quicksync since you have the i5-2500k. Though you'd still have to up your bitrate to compensate the lower quality encoding compared to normal x264 software encoding.
 

dodgepong

Administrator
Community Helper
Using the hardware encoder on the C985 might be possible in the future, but as unwary said, it's pretty poor quality.

QuickSync is a viable option, assuming you have a compatible motherboard.
 

Boildown

Active Member
ASUS P8P67 Pro
The P67 chipset doesn't support Quicksync, so that won't work. I have a similar one (Evo instead of Pro from the same line) in my encoding PC.

I thought consoles have HDCP protection for their HDMI/DVI out, but if not, then you should be good to go with your setup. However you can't use Medium preset. I have a 2600k, and it can only barely do Medium, and its significantly better at encoding tasks than your 2500k. Step it up to Fast or Faster until it runs ok. The quality difference isn't that much and your CPU isn't capable of more anyways, and its not underperforming or anything, it is as expected.
 

Boostsnail

New Member
Thank you for the responses! I am actually running medium preset currently, but FPS set to 30. With these settings, I am getting about 60-80 cpu usage streaming GTA 5, and it looks quite good. If I run 60 FPS, I have to speed the x264 to faster, but then the stream gets pretty pixelated when moving around, which sucks because 60 FPS games, well, you move around a lot.

As for the HDCP protection, you must be thinking of PS3, which does have HDCP. Xbox, however, does not (unless watching Netflix, xbox video, etc).
 

Boildown

Active Member
Boostsnail said:
Thank you for the responses! I am actually running medium preset currently, but FPS set to 30. With these settings, I am getting about 60-80 cpu usage streaming GTA 5, and it looks quite good. If I run 60 FPS, I have to speed the x264 to faster, but then the stream gets pretty pixelated when moving around, which sucks because 60 FPS games, well, you move around a lot.

As for the HDCP protection, you must be thinking of PS3, which does have HDCP. Xbox, however, does not (unless watching Netflix, xbox video, etc).

Well, and this is usually the opposite of what is recommended when people have problems: You could overclock some. Hah. My 2600k is at 4.3, which is pretty mild as far as Sandy Bridge OCs go, but it definitely helps.

You can also experiment with middle ground between 30 and 60 FPS, like 40, 45, or 48. (Before someone jumps in and says 40 and 45 are bad framerates, but 48 is ok, they misunderstood someone's post. All of those are equally "not ok", because they aren't a 1/x division of 60 fps. But in my experience this doesn't matter at all, so they are all viable options.)

And be careful about the actual video recorded. I've seen where there's no problems in the log file yet when I watch the video I record to the hard drive, it looks very stuttery. It seems to happen when the preset is too strong but doesn't always show in the log file that it happened. Only seems to be a problem when I'm pushing the limits of my CPU, so I leave a lot of headroom and then its fine. But I haven't done this in a while so maybe it was fixed in a more recent version.
 

Boostsnail

New Member
Thanks again! I haven't tried to record anything using this card, I bought it so I could stream console games on Twitch. I also got the card in hopes I could stream higher CPU based PC games easier and better with the built-in encoder, but it seems that is not possible currently with OBS. I wouldn't want to if the quality is bad anyway.
 
Top