[h264_cuvid @ 0x5579a46f5700] Cannot load libnvcuvid.so.1
[h264_cuvid @ 0x5579a46f5700] Failed loading nvcuvid.
这个错误信息表明在使用FFmpeg进行视频转换时,库文件libnvcuvid.so.1
未能加载成功。libnvcuvid.so.1
是NVIDIA提供的用于硬件加速的视频解码库。要解决这个问题,您可以尝试以下步骤:
确认系统中已安装NVIDIA驱动和CUDA Toolkit:
确保系统中安装了NVIDIA的驱动和CUDA Toolkit,并且版本兼容。您可以通过以下命令检查CUDA的安装情况:1
nvcc --version
如果没有安装,可以参考NVIDIA的官方文档进行安装。
安装NVIDIA Video Codec SDK:
libnvcuvid.so.1
是NVIDIA Video Codec SDK的一部分。您需要下载并安装该SDK。可以从NVIDIA开发者网站下载。设置环境变量:
确保LD_LIBRARY_PATH
环境变量包含NVIDIA库的路径。例如,如果库文件位于/usr/local/cuda/lib64
,您可以通过以下命令添加路径:1
export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH
验证库文件是否存在:
确保系统中确实存在libnvcuvid.so.1
文件。您可以使用以下命令进行检查:1
locate libnvcuvid.so.1
如果文件不存在,您可能需要重新安装相关的CUDA工具包。
重建FFmpeg:
如果以上步骤都未能解决问题,您可以尝试重新编译FFmpeg,确保在配置时正确包含了NVIDIA支持。您可以使用以下配置选项:1
2
3./configure --enable-nvenc --enable-cuda --enable-cuvid --extra-cflags=-I/usr/local/cuda/include --extra-ldflags=-L/usr/local/cuda/lib64
make
sudo make install
通过这些步骤,应该能够解决libnvcuvid.so.1
未能加载的问题。