J5 部署 ffmpeg工具 交叉编译

参考以下文章,实现将ffmpeg 经过交叉编译后 运行在J5平台上 ,
FFmpeg移植到IMX6ULL arm开发板(含x264编译步骤)_ffmpeg移植到arm上_supersmart@的博客-CSDN博客
目的是,在j5端能对RTSP流进行转流操作(如转像素等)

交叉编译工具

这里为J5的交叉编译工具配置环境变量,首先找到J5交叉编译工具所在的位置

/opt/gcc-ubuntu-9.3.0-2020.03-x86_64-aarch64-linux-gnu/bin/

在sudo vi /etc/profile添加环境变量,在文末添加以下内容

export PATH=$PATH:/opt/gcc-ubuntu-9.3.0-2020.03-x86_64-aarch64-linux-gnu/bin

重启生效。
为了以防万一,我又在~/.bashrc中为其添加环境变量

gedit ~/.bashrc #通过记事本修改,也可以用vi、vim等
#在文末添加这一行
export PATH=/opt/gcc-ubuntu-9.3.0-2020.03-x86_64-aarch64-linux-gnu/bin:$PATH
然后source ~/.bashrc让命令生效

验证是否成功

文件路径

本次用到相关的重要文件都放在路径:/home/wangmaozhu/GP/ffmpeg下,文件结构如下:

├── x264-snapshot-20171109-2245:该文件是x264的源代码,因为FFMEPG没有X264编码能力,所以先对x264进行编译,生成对应的arrch64版本
├──linux_x264:生成的arrch64版本的x264
├── ffmpeg-3.4.5
│ ├── install:编译时候连接到了x264,经过验证成功
└── yz:用来把前面两个进行编译的相关信息移植到J5中,只需要bin和lib文件夹下的内容其实就行

编译x264

因为ffmpeg有对h264的解码能力,但是并没有编码能力,所以这里先对h264进行编码,生成的文件会存放在:linux_x264文件夹下。
进入到x264-snapshot-20171109-2245/路径下,执行:

./configure --prefix=/home/wangmaozhu/linux_x264 --enable-shared --host=aarch64-linux-gnu --cross-prefix=aarch64-linux-gnu- -march=armv7-a
#相关的配置
make & make install
#生成的文件会放在/home/wangmaozhu/linux_x264下,可以自己修改位置

编译FFmpeg

├── ffmpeg-3.4.5
│ ├── install:编译时候连接到了x264

生成的文件存放在该路径下。
进入到 ffmpeg-3.4.5/路径下,执行:

./configure --enable-cross-compile --cross-prefix=aarch64-linux-gnu- --arch=aarch64 --target-os=linux --cc=aarch64-linux-gnu-gcc --prefix=KaTeX parse error: Expected 'EOF', got '#' at position 387: …linux_x264/lib #̲注意最后的应该是链接X264文…PWD/install下(也就是当前路径下的install文件下),可以自己修改位置

最后可以验证一下文件类型:

移植到J5

移植时将编译好的x264和ffmpeg对应的bin,lib目录下的文件移植到对应板子上的/usr/bin,/usr/lib目录下,我把它们放在yz的文件下。复制到J5的对应路径下即可。

#“提示没有权限
#进入/usr/bin路径,执行:
chmod u+x ffmpeg ffprobe ffserver x264

然后进入/usr/lib路径后,执行命令 ln -s 查看软连接是否正常


如果软连接不正常,删除掉没用的软连接,并重新创建软连接:

ln -s libx264.so.152 libx264.so

验证:查看ffmpeg版本

ffmpeg -version


查看支持的编解码:


验证测试

这里简单的用frame8.yuv转成output.264


参考教程:
1、安装交叉编译器arm-none-liunx-gnueabihf
2、FFmpeg移植到IMX6ULL arm开发板(含x264编译步骤)
3、Linux:移植ffmpeg到ARM板(含x264编译步骤)
4、Linux下ffmpeg开源库移植到ARM开发板。
5、arm Linux平台下FFmpeg的移植

  • 13
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值