Kodi Community Forum

Full Version: NVDEC (NVDECODE API) support in Kodi to decode 4K/8K 10-bit/12-bit HDR on Linux?
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Any thoughts on Kodi VideoPlayer supporting NVDECODE API (formerly called NVCUVID API) for Nvidia GPU-accelerated video-processing as it is now supported by FFmpeg as well as Libav on Linux?

More information on the website for Nvidia Video Codec SDK => https://developer.nvidia.com/nvidia-video-codec-sdk

That is, enable the use of NVDECODE/NVDEC as an alternative to or replacement of VDPAU on Linux because VDPAU does not support 10-bit video decoding however NVDEC supports 10-bit and even 12-bit.

I don't have inside information from Nvidia but from the outside it looks like Nvidia have abandoned development of VDPAU in favor of this NVDECODE API as its new cross-platform unified API.


All focus is on it so looks like Kodi VideoPlayer should move to NVDECODE/NVDEC (formerly called NVCUVID/CUVID) to get 4K/8K HDR hardware video decoding working with Nvidia graphics on Linux.

Video SDK forums: https://devtalk.nvidia.com/default/board...hnologies/

This 'new' API enable hardware accelerated video decode on Linux (and Windows) for HEVC and VP9 up to 12-bit @ max 8192 x 8192 resolution and more on newer Nvidia graphic controllers:


FFmpeg doesn't yet feature a 12-bit hwaccel accelerated pipeline for HEVC Main12 but FFmpeg v3.3 and later already have a 10-bit hwaccel accelerated pipeline for HEVC Main10 with NVDEC:


NVDEC (part of NVDECODE API) was previously known as CUVID (part of NVCUVID, which was short for Nvidia CUDA Video hardware acceleration), and still called CUVID in FFmpeg/Libav:


(FYI; FFmpeg 3.4.1 "Cantor" support currently uses NVDEC/CUVID headers from Nvidia Video Codec SDK 8.0.14)


NVDEC compatibility also looks to be greater than that if VDPAU, as seen in this NVDEC support matrix:


Team Kodi's VideoPlayer developers coukld probably just e-mail Nvidia Video SDK support do get a closer collaboration on NVDEC / NVENC for Kodi if needed:

[email protected]

Kodi VideoPlayer developer thoughts?
(2017-12-11, 13:28)RockerC Wrote: [ -> ]Any thoughts on Kodi VideoPlayer supporting NVDECODE API (formerly called NVCUVID API) for Nvidia GPU-accelerated video-processing as it is now supported by FFmpeg as well as Libav on Linux?

Kodi VideoPlayer developer thoughts?
 In order to further support NVidia, this is the way to go. If anybody wants to take this task, be my guest. It is not anything that is on my todo list because I don't see much benefit. Intel and AMD integrated CPUs can decode videos. There are not many cases why somebody wants to offload decoding to a discrete gfx card.
For Kodi in my NAS with AMD Turion II Neo N54L, it is definitely required.
FernetMenta, this statement is disappointing. Integrated graphics are limited in terms of 4K playback. Yes, Intel and AMD can decode 10 bit HEVC on Linux via VAAPI. But Intel does not have HDMI 2.0 so far so 4K at 30Hz only (there are 4K 60p movies already). Only the new Ryzens G with Vega have HDMI 2.0. Both options have issues with video RAM size limited to 2GB, not enough to play 4K HDR in certain scenarios.
For this purpose my HTPC was long built around low profile GTX 1050 with 4GB of RAM. But since VDPAU is effectively dead on nVidia (and 10 bit HEVC won't be supported in VDPAU) and with the advent of 4K HDR (10bit HEVC) MKVs, this made my Kodi/LibreELEC installation effectively useless for 4K. I switched (back) to Windows and there, sadly, you have now better options than Kodi to play back 4K/HDR.
Support for NVDEC was long awaited in ffmpeg. Such statements mean that Kodi isn't moving forward in certain areas (4K/HDR) but rest of the the world is.

I hope priorities will change.
I would like to see this as well, every media device in my house runs some form if Linux and it would be great if I didn't have to run a bloated version of Windows on my HTPC in order to play 4K 10 Bit content. I have a GTX 1070 in my PC, formerly used for games, but now just for HTPC duties.
Both Intel and AMD have converged to using the VAAPI API on Linux so it's only Nvidia who persist in doing their own thing so blame them. We already support one propriety interface from Nvidia in the VDPAU API, so we have no interest in maintaining yet another Nvidia only API.
also, please don't treat us as if we would be the only ones allowed to do code changes. Everybody is welcome to contribute and there are dozens of developers. So "all" needed is one of these devs having a nVidia card and be in need of this for 4K 60fps 10 bit whatever stuff. It's just that none of the developers in the team have the hardware or need for this kind of stuff.