[FFmpeg-trac] #6405(undetermined:new): Compile troubles with “cuvid”, “nvenc” and “npp”

FFmpeg trac at avcodec.org
Fri May 19 22:17:13 EEST 2017

#6405: Compile troubles with “cuvid”, “nvenc” and “npp”
             Reporter:  ahakon       |                     Type:  defect
               Status:  new          |                 Priority:  normal
            Component:               |                  Version:  git-
  undetermined                       |  master
             Keywords:  cuvid,       |               Blocked By:
  nvenc, npp, cuda-sdk               |  Reproduced by developer:  0
             Blocking:               |
Analyzed by developer:  0            |

 Regarding the last tree in the repository (at 2017-05-19), two troubles
 appears when you compile with cuvid, nvenc and npp.

 First of all, you don’t need at all to compile with the CUDA SDK. The
 FFmpeg compat/cuda directory has the headers. So, in order to use the
 cuvid & nvenc modules you can just compile with “--enable-cuvid --enable-
 nvenc --enable-cuda --disable-cuda-sdk”.

 When you compile in this way the resulting binary doesn’t need to link
 with cuda lib (-lcuda). The executable dynamically links with the video
 driver, not the cuda lib.

 The trouble, however is the bump in the required version of the driver.
 Today the “long-lived” video driver version for Linux is 375.66. However,
 the current headers targets 378.13 or newer. So, please, add some warning
 when the driver fails. And document the requirement.

 From the original patch from Timo Rothenpieler:
 “compat/cuda: update cuvid/nvdec headers to Video Codec SDK 8.0.14

 This raises the required minimum NVIDIA display driver versions:
 NVIDIA Linux display driver 378.13 or newer
 NVIDIA Windows display driver 378.66 or newer”

 The second trouble is related to the compilation with the scale_npp
 filter. In the current configuration is required to enable cuda_sdk. Some
 modules, like scale_cuda, really need to link with the CUDA lib (-lcuda).
 However, this is not the case with the scale_npp filter. It’s uses the
 libnpp* libraries. Then this simple patch in the configuration file
 resolves the trouble:

 -scale_npp_filter_deps="cuda_sdk libnpp"
 +scale_npp_filter_deps="cuda libnpp"

 I hope someone takes note of these troubles and accept to fix them.

Ticket URL: <https://trac.ffmpeg.org/ticket/6405>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker

More information about the FFmpeg-trac mailing list