Minimum GPU for x264 1080p 60fps @ Medium Preset

ToejaM

Member
TL:DR
I think the issue I'm having is GPU related but I'd just like to ask anyway, whats the minimum GPU for 1080p60fps @ medium x264 preset.

Current Spec:
CPU: Ryzen 7 1700 @ 3.6Ghz
GPU: GTX 670 2GB
RAM: 16GB 3000mhz LPX Vengeance
MOBO: B350 PC Mate

Runs 720p60FPS medium preset absolutely fine with no encoding lag or dropped frames @ 8000kbps.

Problem:
I cannot do 1080p60fps on medium preset without HUGE encoder lag.

Testing:
Instead of interupting my stream I've been just running bandwidth tests by watching a 4K doom video at 2x speed just so that it continues to update the screen with as many changes and fast paced action as possible, if I could find something high speed that was more green or had lots of grass I'd probably use that as I know grassy games and green games tend to stress the encoder more, plus youtube quality is already pre-compressed but this is ok for now, if it seems fine in this I give it a real world test.

936p60fps @ medium
If I drop it down to 936p60fps @ medium preset I still get encoder overloaded with the CPU at around 50% usage and GPU around 70% usage. Its very minorly dropping frames at 1.0-1.5% in a short test but watching the video back, it's definitely noticeble and makes it look like I have an annoying intermittent stutter and thats not acceptable for me, it really only happens when I'm playing something that is high movement, which means it'll happen if I play an FPS and snap around which I don't want happening on stream. Slower action games would probably be fine.

936p60fps @ fast
On 936p60fps @ fast preset instead of dropping over 1.0-1.5% of frames, I'll drop 0.1% frames, I'm going to guess if a combination of browser sources and fluffy extras that activate at the same time that I might use will cause issues and encoder lag but this is untested. It took around 30minutes for the frames to settle at "0.0%".

720p60fps @ medium
With my current setup of 720p60fps @ medium I still do drop frames right at the start but it takes about 3mins or so before it evens out and my total dropped frames turns into "0.0%"

Conclusion
I know that 0.1% frames is negligible but it's more the time it takes to settle onto 0.0% aswell as the current setup can go quite a while without a frame dropping to the encoder where as 936p it reliably will continue to drop a frame here or there which I think will give me issues down the line.

Additionally, this is on the fast preset and I'd like to run it on the medium preset as I know anything below that isn't going to be possible with what I have (I think) nor is it worth the gear upgrade.

I feel like my GPU is a tiny bit below what's needed about and almost anything would probably be better. The issue is graphics cards right now are expensive and you can't get a good cheap card like a 1060 new or used.

Looking at a comparsion between the GTX 670 and a 1050 shows the 1050 is suprisingly behind on paper.


However, the 1050 is much newer tech and I wonder if that would be enough for it to not struggle?

Questions:

1.
What would be the minimum GPU range required to stream using the CPU at 1080p60fps (Likely 936p for now until bitrates go up on twitch at least) on the medium preset. I don't necessarily mean something brand new, an older card is fine too if I can pick it up second hand.

2.
I think I know the answer to this but is the CPU I'm using enough for 1080p6fps medium preset regardless of the GPU I put in there? I'm sure I've seen other peoples setup with similar and they've said it worked.

3.
Would the CPU ever be enough for streaming 1440p with the right card in there?

Thanks for reading :)
 

DayGeckoArt

Member
If you're not gaming on the same card, then you can get a Quadro T400 which has the latest NVENC chip and costs about $140. But I'm guessing you are gaming on it, so I would just try to get the newest card you can that is also powerful enough for your games. Each generation gets a better encoder and mostly the same as other cards within the same gen.

There's a chart here that shows the generations https://en.wikipedia.org/wiki/Nvidia_NVENC
 

ToejaM

Member
I should have clarified, that this is a dedicated streaming rig, using it to offload any input lag and resource usage on my gaming rig
 

TryHD

Member
If you're not gaming on the same card, then you can get a Quadro T400 which has the latest NVENC chip
Quadro T400 has 6 Gen NVENC like Pacal, sadly not the newest NVENC like consumer Turing and Ampere. If you want to go Quadro, you need Quadro RTX cards to get latest NVENC.
 

DayGeckoArt

Member
Quadro T400 has 6 Gen NVENC like Pacal, sadly not the newest NVENC like consumer Turing and Ampere. If you want to go Quadro, you need Quadro RTX cards to get latest NVENC.

Thanks, I read that on an Amazon review and assumed it was true. But it turns out the only improvement in the 7th gen vs 6th gen is some film grain feature for NVDEC (the decoder) so we aren't missing out on anything https://en.wikipedia.org/wiki/Nvidia_NVENC
 

TryHD

Member
Thanks, I read that on an Amazon review and assumed it was true. But it turns out the only improvement in the 7th gen vs 6th gen is some film grain feature for NVDEC (the decoder) so we aren't missing out on anything https://en.wikipedia.org/wiki/Nvidia_NVENC
No you miss out on B Frames for H265 and Ref frames for H264. If you try to set refs for H264 on 6th gen you get
warning: Multiple reference frames are not supported by the device

Also I would trust NVidia more in this case than wikipedia https://developer.nvidia.com/video-encode-and-decode-gpu-support-matrix-new
 

ToejaM

Member
Just to update:

I streamed last night at 936p fast and the result was very clean, definitely better than at 720p medium. Looking at the stats between medium and fast there isn't a huge amount between them, I'd certainly like to get it on slow at some point but not sure if thats a CPU limitation or a GPU.

I played Tarkov for the evening and the only times I noticed an encoder overloaded was during transitions which I expected but nothing in fluid fast gameplay or heavy green/grassy areas.
 

Attachments

  • droppedframes - Copy.PNG
    droppedframes - Copy.PNG
    14.7 KB · Views: 232

R1CH

Forum Admin
Developer
Note that GPU makes no difference to x264 encoding, which only uses the CPU. NVENC on a modern GPU is roughly equivalent or better to x264 medium.
 

ToejaM

Member
Just to update this thread:

I'm now using a GTX 1060 in the stream rig. Still unable to stream 1080 60fps medium or fast, it's 100% CPU limited even overclocking up to 3.9ghz. It's not feasable to run that overclock in the extreme heats so going to 4.0ghz wouldn't be worth it and I doubt even running it as a test would even work, the extra 100mhz won't be enough. So above, R1CH is correct (shocker right!?) though I would hazard if you had a lot of moving parts to your scene, a lot of videos and browser sources firing off then you may need a better GPU.

Anyone that is running a Ryzen 7 1700 and doing 1080 60fps on medium x264 preset isn't playing fast paced games. I'd be extremely curious to see anyone doing it, what settings they're running and what overclock they're running, given 4.1ghz is about the top end for a 24/7 stable overclock on this CPU without extreme heat or cooling, I just don't think this CPU is able to do it.

I've retested 936 60fps on fast and I still get issues with transitions causing encoder overloaded and a little amount of dropped frames which is a shame so for me this is a no-go, however it is minor but I like my stream to be as fluid and un-hiccupy as possible.

Unless there is a magic command line parameter that I could put in that doesn't affect quality or has a big impact for negligible quality loss that I've been missing I think the road ends here for this CPU.

On the plus side, if you're running a GTX 670 and you have better than my current CPU you'll be fine as the 670 seems to handle it well enough.

I hope overall this thread helps someone in the same position as me with this CPU because I've seen quite a few posts around the internet saying it's possible, which sure in some cases it probably is if you're playing a slow paced game but it's not 100% possible in all situations with this CPU with zero flaws. 720p @ 60 fps medium is the best we get.

Ultimately though if you have this CPU and a capable GPU (I'd say a 970 or better), wait until what ever streaming platform you're using ups the bitrate so that the line between CPU and GPU encoding is negligible, the later the GPU the better the nvenc quality though if unlimited bitrates come in this may not matter.

The bonus here is I bought a second hand 1070 to give to my youngest son to take his 1060 so it was win-win all round.
 
Top