nvidia jetson 平台使用 ffmpeg nvmpi 硬件编解码

首先目前ffmpeg不支持在nvidia jetson 平台上进行使用硬件编解码加速,但是由于nvidia 提供了相对的硬件编解码加速的api,故可以将api集成到ffmpeg实现。

好在国外大神多,在github上已经有人实现了。

GitHub - jocover/jetson-ffmpeg: ffmpeg support on jetson nano

这个是实现的jetson api 的c++ 工程,需要编译出so库,用来给与ffmpeg编译用。

GitHub - LinusCDE/mad-jetson-ffmpeg: FFmpeg fork that aims to include all the HW Accel for Nvidia Jetson

这个工程则是集成了补丁的ffmpeg, 安装上面的so库,之后可以直接编译此ffmpeg用于jetson平台。

编译命令,编译过程中可能需要安装一些第三方库,使用sudo apt-get install 即可

./configure --prefix=/usr/local/ffmpeg_4.4 --extra-cflags="-I/usr/local/include" --extra-ldflags="-L/usr/local/lib" --disable-debug --disable-stripping --enable-lto --enable-fontconfig --enable-gpl --enable-libdrm --enable-libfreetype --enable-libx264 --enable-nvmpi --enable-shared --extra-libs="-L/usr/lib/aarch64-linux-gnu/tegra -lnvbuf_utils" --extra-cflags="-I /usr/src/jetson_multimedia_api/include/"

之后即可使用"h264_nvmpi" 编解码器,进行硬件加速。

另外需要搞清楚,jetson平台编解码出来的数据还是在cpu内存里, 它只是集成了硬件模块实现了编解码,并不是GPU在实现,此处是重点。

猜你喜欢

转载自blog.csdn.net/a454193977/article/details/128713534
今日推荐