zzz7414 发表于 2019-10-25 19:06:05

windows编译加入npp 出错(NVIDIA CUDA)

本机装了VS2013 VS2015 ,显卡信息 NVIDIA-SMI 440.97       Driver Version: 440.97       CUDA Version: 10.2。我也下了NVIDIA的sdk,也下了CUDA toolkit 都是最新的。ffmpeg用的是3.4.6 ,直接git下载的,不敢用太高。目的是用ffmpeg进行硬编解码工作,但是官网的没有编入libnpp,要自己重新编译。

A方式:

编译命令:
./configure --prefix=/usr/local/ffmpeg --arch=x86_64 --disable-asm --disable-x86asm --enable-cuda --enable-cuvid --enable-nvenc --enable-nonfree --enable-libnpp --enable-gpl --enable-libx264 --extra-cflags="-I/usr/local/include -I/usr/local/cudatool/include -I/home/Administrator/nvsdk/include" --extra-cflags=-fPIC --extra-ldflags="-L/usr/local/lib -L/usr/local/cudatool/lib/x64 -L/home/Administrator/nvsdk/Lib/x64"
执行命令:

ffmpeg.exe -re -y -hwaccel cuvid -c:v h264_cuvid -vsync 0 -i "xxxxx" -an -vf scale_npp=720:640 -vcodec h264_nvenc   "xxxx"
出现报错:Cannot load nvEncodeAPI.dll
The minimum required Nvidia driver for nvenc is 378.66 or newer
Error initializing output stream 0:0 -- Error while opening encoder for output stream #0:0 - maybe incorrect parameters such as bit_rate, rate, width or height
我的确也没在我电脑找到这个dll,所以是哪步骤少了或者错了。或者是他链接到的库不对吗?我用nvidia-smi.exe 看我的nvi驱动版本很高啊。

B方式:
./configure 较A方式就多了个 --enable-cuda-sdk ,
然后make的时候出现报错:recipe for target 'libavfilter/vf_thumbnail_cuda.ptx' failed 等错误
无法解决

大致参考此网址来编译的。
https://developer.download.nvidia.cn/designworks/ffmpeg/secure/Using_FFmpeg_with_NVIDIA_GPU_Hardware_Acceleration_v01.4.pdf?QOoBpnztHq7DJccOHE_vW7Xlduchlp-BttcsUd9KK5BZkiaIttMduG1oPPQzW_-sKP6cPTWjKys5y5AU7W9meoTs2HHZXXWP6lRuO53kOyF09y3RGVYOzpW_OVkqkpKHDIHXcFGBoopxsxD-aDFRo8edMV5WVKHazBIz4r3gqz3kixThSiDyhwZ_huevMX5MBOy5cEU
请大家指教!

zzz7414 发表于 2019-11-5 16:46:02

已解决

孙悟空 发表于 2019-11-5 21:37:02

zzz7414 发表于 2019-11-5 16:46
已解决

是否可以共享一下如何解决的呢?
页: [1]
查看完整版本: windows编译加入npp 出错(NVIDIA CUDA)