NVENC Hardware encoding broken on 1.20.2.3370

Server Version#: 1.20.2.3370
Player Version#: Any

The latest PMS beta has hardware encoding broken. It decodes with the GPU but encoding fails.
The server believes an incompatible driver is installed.
Going back to the latest public release makes NVENC transcoding work again.

Sep 28, 2020 06:59:19.216 [0x152ceebf5700] ERROR - [Transcode] [FFMPEG] - The minimum required Nvidia driver for nvenc is 418.30 or newer Sep 28, 2020 06:59:19.217 [0x152cec7e3700] ERROR - [Transcode] [FFMPEG] - Driver does not support the required nvenc API version. Required: 10.0 Found: 9.1

Which driver version do you have installed ?

(1.20.2 did update the API)

440.59. I’m unable to manually update it to the latest driver as I’m running it through a docker on Unraid. If that is the issue I will have to forward the problem.

The container might well be your problem.

Knowing the OS and environment when stating the problem does help us a great deal (avoids these extra exchanges)

My apologies for not providing all this information beforehand. I’ve been digging through Reddit and the forums trying to find any solutions and it escaped my mind when I wrote my initial post. :sweat_smile:

I contacted Linuxserver which maintains the Plex container that I’m using and they told me the following:
“Since we don’t bundle any Nvidia drivers in the container, it’s plex that is the cause of this I would think. You should report it to plex.”

Running nvidia-smi within the container shows the correct driver version that I’m running.

Link to the container: https://hub.docker.com/r/linuxserver/plex

FWIW, I saw this problem as well with 440 drivers (thread here), but was able to resolve it on my system by updating to the latest 450.66 drivers. I am not using a docker for my plex install, so you might also need to update the nvidia-docker helper container as well, unless you are using the newer 19.03+ docker GPU resource capability.

1 Like

Thanks for the suggestion but unfortunately the driver version is out of my control. I will forward your solution to the maintainer of the Nvidia build of the Unraid OS in case it can help out :blush:

I am experiencing the same issue. Plex says it needs a minimum of Nvidia driver version 418.30 and unraid currently has 440.59, i get the same error message with driver version 440.100.

I’ve been having similar problems. I just bought a Quadro P200 and tried all kinds of things to get hardware acceleration working. At first only nvdec worked out of the box with version 1.20.2.3370, then i got nvenc on 1.14.1.5488 to work but nvdec stopped. I got them both working in the end but only after messing around with things for 2 days and using version 1.18.9.2578, the sweet spot apparently.

My advice is to ensure your graphics drivers are the latest version and then try to install an older version of PMS.

Some reasons why this might be:

FFmpeg is the component reporting the issue in your log, but it’s the FFmpeg bundled with Plex and not the system version. How the Plex team has compiled FFmpeg will vary from version to version depending on which version of the Nvidia Video Codec SDK they have used i.e. version 9.1 vs 10. If they have upgraded the Nvidia Video Codec SDK recently, this directly affects which version of the nvidia driver is required and the nvenc API it supports. So your only real options are:

  1. Downgrade Plex Media Server (like I did above)
  2. Hope Nvidia release a newer driver for your card which supports the Nvidia Video Codec SDK v10 which FFmpeg inside of PMS is compiled with.

Despite what the error message says, the Nvidia Video Codec SDK V10 has the following minimum driver requirements:

  • Windows: Driver version 445.87 or higher
  • Linux: Driver version 450.51 or higher

But I can’t be 100% sure which version of the Nvidia Video Codec SDK they have used in compiling FFmpeg, so the above is a guess that the log message is wrong which is why it fails despite the fact your driver version seems to be valid.

But this does explain why it didn’t work for me, because i’m on driver version 440.100 and nvenc didn’t work for me on the latest version of PMS 1.20.2.3370.

To be clear, I’m not sure the Plex team can resolve this issue, other than compiling FFmpeg with an older version of the Nvidia Video Codec SDK, which isn’t a likely solution.

2 Likes

I don’t use unraid, but it sounds like version 6.9.0 Beta 29 has the nvidia 450.66 drivers included.

You are correct! I didn’t know they had updated it, but running 6.9.0 beta 29 works perfectly with 1.20.2.

FWIW when my PMS notified me of the 1.20.2.3370 update I looked at the release notes and it stated that 450.66 was the minimum required Nvidia driver for hardware encoding on Linux. I don’t know why it only showed up in the release notes on my server and not in the release notes posted anywhere else.

1 Like

That’s weird. I rarely check the release notes on my server as it auto updates but I keep up with the notification posts on the Plex subreddit and I haven’t seen that mentioned there either.

I’m having the same issue on Windows. I have Windows Driver Version 441.66 and the PMS logs indicate that version 418.81 or newer is needed. So the only fix at this time is to roll back to a previous version and never install and PMS update since this probably wont get fixed anytime soon because of the dependency on FFMpeg?

Are you not able to update to a newer driver on your Windows box?

The version that I have is the newest available from Nvidia for Windows 2012 R2

@adamesslinger join us at Updates after 1.20.1.3252 breaks NVENC

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.