dizquetv icon indicating copy to clipboard operation
dizquetv copied to clipboard

Nvidia HEVC Encoding error

Open DrShepard4815 opened this issue 3 years ago • 5 comments

Is there any tutorial or additional help on getting h264_nvenc fully operational in dizquetv? h264 files transcode normally with h264_nvenc in ffmpeg, but HEVC files fail and ffmpeg log reports "10 bit encoding no supported" and "No capable devices found".

GPU is PNY Quadro P2200. Latest-nvidia (1.4.3) running in Docker on an Unraid 6.9.2 server.

DrShepard4815 avatar Jun 18 '21 21:06 DrShepard4815

Same issue here with a P2000 running in Docker on a Ubuntu 20.04 host. Is there a way to enable debug logging for ffmpeg in the dizquetv docker image? Maybe that'll help us out a bit.

edwardscaleb9 avatar Jun 20 '21 22:06 edwardscaleb9

I think hevc transcoding is a more premium feature not supported in some nvidia cards.

Also you have to enable nvidia runtime in docker.

vexorian avatar Jun 20 '21 23:06 vexorian

I think hevc transcoding is a more premium feature not supported in some nvidia cards.

Also you have to enable nvidia runtime in docker.

According to Nvidia documentation, the P2000 and P2200 should be able to encode/decode HEVC 10 bit unless I'm reading that wrong. I've got "runtime: nvidia" in my docker-compose file, and I can transcode h264 content via hardware acceleration just fine. It's almost like the GPU isn't showing up correctly to ffmpeg inside docker?

edwardscaleb9 avatar Jun 20 '21 23:06 edwardscaleb9

According to Nvidia documentation, the P2000 and P2200 should be able to encode/decode HEVC 10 bit unless I'm reading that wrong. I've got "runtime: nvidia" in my docker-compose file, and I can transcode h264 content via hardware acceleration just fine.

The Plex docker on unraid words perfectly with the p2200; it transcodes HEVC 10 bit with no problem. I followed all available instructions for getting a nvidia GPU working in docker (including runtime=nvidia).

It's almost like the GPU isn't showing up correctly to ffmpeg inside docker?

This looks like the case for me. ffmpeg log in dizquetv reports "10 bit encoding not supported" and "No capable devices found".

DrShepard4815 avatar Jun 21 '21 06:06 DrShepard4815

I think the error message is being misinterpreted. When you use the encoder h264_nvenc and the message says 10 bit encoding no supported it is saying that the h264 encoder does not support encoding 10-bit content, which is true for all hardware encoders; only software encoders support 10-bit h264. Simply changing to hevc_nvenc should get it going, as the P2000 supports HEVC 10-bit encoding according to https://developer.nvidia.com/video-encode-and-decode-gpu-support-matrix-new

jasongdove avatar Feb 16 '23 17:02 jasongdove