编译ffmpeg
在对视频数据进行转码时,通常使用 FFmpeg 库 。硬件加速极大地提高了工作流的性能。图 2 显示了 FFmpeg 转换过程的不同元素
FFmpeg 通过 h264_cuvid
、 hevc_cuvid
和 h264_nvenc
、 hevc_nvenc
模块支持硬件加速解码和编码。从源代码构建时激活对硬件加速的支持需要一些额外的步骤:
- 克隆 FFmpeg git 存储库 https://git.ffmpeg.org/ffmpeg.git
- 从 NVIDIA 网站 下载并安装兼容的驱动程序
- 下载并安装 CUDA 工具箱
- 克隆
nv-codec-headers
存储库 并仅使用此存储库作为头进行安装:make install
- 使用以下命令配置 FFmpeg (使用正确的 CUDA 库路径):
./configure --enable-cuda --enable-cuvid --enable-nvenc --enable-nonfree --enable-libnpp --extra-cflags=-I/usr/local/cuda/include --extra-ldflags=-L/usr/local/cuda/lib64
- 使用多个进程进行构建,以提高构建速度并抑制过度输出: make -j -s
注:编译的结果中没有ffplay
可能是由于SDL的原因,
- 下载SDL,编译安装
- 重新编译ffmpeg,注意使用
--enable-ffplay
./configure --enable-ffplay --enable-cuda --enable-cuvid --enable-nvenc --enable-nonfree --enable-libnpp --extra-cflags=-I/usr/local/cuda/include --extra-ldflags=-L/usr/local/cuda/lib64
网友评论