0


rk3588 ffmpeg使用硬件解码

rk3588 ffmpeg使用硬件解码

安装ffmpeg最新的静态构建版本

https://johnvansickle.com/ffmpeg/下载最新的版本然后解压

tar xvf ffmpeg-git-arm64-static.tar.xz

将ffmpeg移动到/usr/local/bin文件夹
命令行输入ffmpeg没有报错就安装好了

方法1

安装rkmpp

git下载mpp包

git clone https://github.com/rockchip-linux/mpp

编译安装

cd mpp/build/linux/aarch64  
./make-Makefiles.bash
make -j8
sudomakeinstall

安装264

git clone https://code.videolan.org/videolan/x264.git
cd x264
./configure --prefix=/usr/local/my/x264 --disable-opencl --enable-static --enable-shared
make -j8
sudomakeinstall

安装libdrm

wget https://dri.freedesktop.org/libdrm/libdrm-2.4.89.tar.bz2
tar -jxvf libdrm-2.4.89.tar.bz2
./configure --prefix=/usr/local/my/libdrm --host=aarch64-linux-gnu
make -j8
sudomakeinstall

解压
–prefix 指定安装目录
–host 当前编译工具链的前缀 ll /usr/bin/gcc*查看

下载ffmpeg源码

git clone https://git.ffmpeg.org/ffmpeg.git 

编译指令

./configure --prefix=/usr/local/my/ffmpeg --enable-version3 --enable-libdrm --enable-rkmpp --enable-libx264 --enable-nonfree --enable-gpl

–enable-gpl 允许使用GPL代码,生成的库和二进制文件将在GPL下[no]
–enable-version3 升级(L)GPL到版本3 [no]
–enable-nonfree 允许使用非自由代码,生成的库 和二进制文件将是不可分发的[不]
直接./configure会报错
在这里插入图片描述
应该设置一下PKG_CONFIG_PATH

sudofind / -name pkgconfig

找到需要的x264 libdrm的pkgconfig文件夹,rockchip_mpp.pc 被安装在了/usr/local/lib/pkgconfig这里

exportPKG_CONFIG_PATH=/usr/local/my/x264/lib/pkgconfig:/usr/local/my/libdrm/lib/pkgconfig:/usr/local/lib/pkgconfig

查看一下

echo$PKG_CONFIG_PATH
/usr/local/my/x264/lib/pkgconfig:/usr/local/my/libdrm/lib/pkgconfig:/usr/local/lib/pkgconfig

下一步可以安装了

./configure --prefix=/usr/local/my/ffmpeg --enable-version3 --enable-rkmpp --enable-libx264 --enable-libdrm --enable-nonfree --enable-gpl
make -j8
sudomakeinstall

竟然四分钟就编译好了,运行ffmpeg报错
在这里插入图片描述
在这里插入图片描述
提示找不到librockchip_mpp.so、libx264.so ,使用find命令分别找到这些文件在哪个文件夹,
然后更改配置文件/etc/ld.so.conf

sudovim /etc/ld.so.conf

include /etc/ld.so.conf.d/*.conf
#复制下面内容
/usr/local/lib #librockchip_mpp.so
/usr/local/my/x264/lib #lib264.so

然后执行sudo ldconfig命令生效
将ffmpeg路经添加到PATH

sudovim .bashrc
#最后一行添加自己的ffmpeg路经exportPATH=$PATH:/usr/local/my/ffmpeg/bin

然后执行source .bashrc生效
查看一下系统PATH,可以看到已经将ffmpeg添加好了
在这里插入图片描述
执行ffmpeg
在这里插入图片描述
查看支持的编解码器

ffmpeg configure -codecs |grep h264

decoders: h264 h264_v4l2m2m h264_rkmpp
encoders: libx264 libx264rgb h264_v4l2m2m

方法2

ppa搜索需要的软件包

https://launchpad.net/上搜索软件名+ppa
找到需要的包后下面命令安装

sudo add-apt-repository ppa:george-coolpi/multimedia
sudoapt update

如果不需要了下面命令删除

sudo add-apt-repository -r ppa:george-coolpi/multimedia
sudoapt-get update

安装支持rkmpp硬件解码的ffmpeg

sudoapt-getinstall ffmpeg

查看所有解/编码器

ffmpeg -codecs |grep h264
(decoders: h264_rkmpp h264 )
 encoders: libx264 libx264rgb h264_omx h264_v4l2m2m
标签: ffmpeg git linux

本文转载自: https://blog.csdn.net/m0_58944591/article/details/129820609
版权归原作者 秋枫96 所有, 如有侵权,请联系我们删除。

“rk3588 ffmpeg使用硬件解码”的评论:

还没有评论