protonscr

Enabling nvidia hardware encoding does not actually enable hardware encoding

steamclosed reviewed
ValveSoftware/steam-for-linux#4141 · opened 2015-11-18 by jaapz · updated 2016-03-29 · 11 comments · github
Jjaapz 2015-11-18 github

When I enable nvidia hardware encoding in the steam in-home streaming settings, nothing happens and steam still uses software encoding.

As my CPU is not that great, I have some trouble streaming Shadow of Mordor to my steam link, lot's of framedrops and stutter. My GPU is a GTX 970 4GB so it should handle hardware encoding very well.

When I enable the hardware encoding, and look at nvidia-settings, it reports 0% Video Engine Usage.

I am running debian jessie with latest NVIDIA beta drivers (358.13), and I already installed the nvenc headers and cuda sdk.

Is there any way I can start debugging this?

Jjaapz 2015-11-23 github

Oh and for the record, framedrops and stutter does not happen in any other games. For example I can play Bioshock: Infinite on Ultra settings and stream it to my steam link without any problems whatsoever.

When I play Shadow of Mordor without streaming, I already get a CPU usage of about 70-80%. So when on top of that my CPU also needs to do software encoding (when streaming), everything breaks down.

Jjaapz 2015-11-23 github

I also reverted to NVIDIA 358.09 because steam seems to crash every few minutes on 358.13. But hardware encoding is not used with these drivers either.

Rrmbleeker 2015-11-24 github

I've been trying to enable hardware encoding in my Steam for Linux client since whenever the option became available, but the option is never saved. Every time I restart Steam the box is unchecked again. I'm guessing it's not available yet on Linux?

Running Ubuntu 14.04, kernel 3.19.0-33-generic on an Intel Core2 Duo E8500 with 8GB RAM and an nVidia GTX 560Ti 2GB

TTele42 2015-11-24 github

Fermi generation nvidia cards including the GTX 560Ti do not have hardware encoding.

YYevPo 2015-11-25 github

Have the same issue: hardware encoding option is not saved after client restart and nvidia settings shows 0% Video Engine Usage when streaming.

My host system specs: http://pastebin.com/GUZPB2J0

?ghost 2015-12-27 github

Hi,

same here. Just got my Steam-Link and tried to get hardware encoding working on my linux host system, but it does not work. I also didn't find an error message on the terminal after starting steam from there.It always uses the software encoder (Nvidia Settings shows 0% for the video engine utilization also).

My System:
Open Suse Tumbleweed 64bit with latest steam beta and latest steam link beta build.
Nvidia 358.16
Geforce GTX 970
Intel Core i 5 3570k

The gpu should be capable of doing the hw encoding fine.

Is there anything wrong on my side (if yes, how to debug futher ? )or is the feature simply not implemented yet?

Many thanks,
Christian

Llibgradev 2016-01-09 github

Ditto.

Tried SteamOS->Workstation and Workstation->SteamOS - either way results in software encoding.

SteamOS: i5-6500, GTX770 352.55
Workstation (Archlinux): i7-2600K, GTX660 358.16

SteamOS: Tried installing libnvidia-encode1 which pulled in libnvcuvid1 (FWIW).

Tried Steam Beta client both ends. Tried 'Prefer NVFBC...' both ends.

Lleillo1975 2016-02-10 github

Have the same problem in Ubuntu 14.04.3 64bits (i5-2500, 16GB-RAM, GTX750Ti with 361.18).

In Grid Autosport I have stops in Streaming, like if the CPU can't assume the work of execute the game and make the streaming at the same time in certain moments

EDIT: I just read this in GamingOnLinux. Can someone test it. This days I'm not in home:

https://www.gamingonlinux.com/articles/steam-beta-adds-hardware-accelerated-encoding-for-nvidia-on-linux-steam-controller-major-update.6633

YYevPo 2016-02-10 github

EDIT: I just read this in GamingOnLinux. Can someone test it. This days I'm not in home:

Doesn't work for me. I installed Steam Client Beta on both machines, enabled hardware encoding and tried to stream from Ubuntu 14.04 (GTX 750Ti, 355.11) to SteamOS (GT 440).
Encoding doesn't work. It still says 'Capture method set to Desktop OpenGL NV12 + libx264 baseline' in streaming info. Maybe it is Ubuntu issue? How can I check if NVENC is enabled in Ubuntu?

YYevPo 2016-02-10 github

I installed cuda toolkit ('cuda-7-5' package from nvidia cuda repository - https://developer.nvidia.com/cuda-downloads) and now NVENC finally works. During cuda installation I was forced to install nvidia 352 driver instead of 355 because nvidia cuda repo for Ubuntu 14.04 doesn't support 355 driver. It would be awesome if nvidia put NVENC support into the main driver package.

Jjaapz 2016-03-29 github

So, I replaced parts of my computer (new motherboard, new CPU and new RAM), and decided to try again. Seems like one of the most recent Steam Beta updates has fixed my issue. I can now stream shadow of mordor in 1080p with 60fps (ultra settings) to my steam link, without any hiccups using NVFBC, and it reports to be using NVENC.

I'm not entirely sure this problem was fixed thanks to the hardware upgrade, or that a software update actually fixed it, but for me the problem is gone now.

Nothing extracted yet.