当前位置: 首页 > article >正文

适用于嵌入式arm的ffmpeg编解码

        在嵌入式arm应用开发中,经常会遇到需要处理视频的情况,这时候就需要强大的开源工具ffmpeg出马了。

        这里可以下载到各个版本的ffmpeg。

ffmpeg各版本icon-default.png?t=N7T8https://www.videohelp.com/software/ffmpeg/old-versions        现在ffmpeg更新较频繁,如果使用API开发,各个版本都有一定区别,建议查阅文档。如果只需要ffmpeg的命令行,就不用理会了,直接上最新的。

        ffmpeg官方网站上资料也很多,可查看。

ffmpeg官方icon-default.png?t=N7T8http://ffmpeg.org/doxygen/trunk/index.html        ffmpeg的编译系统做得特别好,基本兼容各类型环境,不管是x86还是arm,都可以顺利编译通过。

        下面简单介绍下编译方法:

1.下载源码;

2.配置configure:

这里给一个arm交叉编译的示例

./configure --cross-prefix=aarch64-linux-gnu- --enable-cross-compile --target-os=linux --cc=aarch64-linux-gnu-gcc --arch=arm64 --prefix=install --enable-shared --disable-static --enable-nonfree --enable-ffmpeg --enable-swscale --enable-pthreads 

x86上就更简单了

./configure --prefix=install --enable-shared --disable-static --enable-nonfree --enable-ffmpeg --enable-swscale --enable-pthreads 

具体可以看看configure里面的注释。

--prefix表示编译后的库路径。

3.编译:

执行指令:sudo make && make install即可。

这里会生成ffmpeg和ffprob二个程序。

4.运行程序:

将生成的so库拷贝到系统目录下,执行程序即可。

如果是需要ffplay这个播放器程序,在configure中添加--enable-ffplay。

然后还需要安装sdl这个库。可以自行下载源码编译,一样很轻松通过。SDL和SDL2都行。

在configure中添加

--enable-sdl2 

--extra-cflags=-I**/include/SDL2

--extra-ldflags=-L**/lib

--extra-libs=-lSDL2

重新编译即可。

这里的ffmpeg只具备了解码的功能,如果还需要264等编码功能,还需要安装x264库,这里就不细说了,网上很多教程。

本人使用imx8测试,发现运行ffmpeg解码速度很快,CPU完全胜任1080P解码。


http://www.kler.cn/a/107580.html

相关文章:

  • Vue 的生命周期函数 和 Vuex
  • 树形dp总结
  • JS 实现SSE通讯和了解SSE通讯
  • 【mySql 语句使用】
  • rockylinux 8安装 gcc11.2
  • 大数据 ETL + Flume 数据清洗 — 详细教程及实例(附常见问题及解决方案)
  • RedissonCach的源码流程
  • 视频转换器WinX HD Video Converter mac中文特点介绍
  • 在el-dialog中使用tinymce 点击工具栏下拉框被遮挡
  • 分享三个国内可用的免费GPT-AI网站
  • 学习笔记:Splay
  • RTOS编程中的原子操作
  • docker 常用指令
  • SpringAOP源码解析之advice执行顺序(三)
  • phar反序列化
  • ESP8266,手机与电脑之间的TCP通讯
  • 分享一个基于asp.net的供销社农产品商品销售系统的设计与实现(源码调试 lw开题报告ppt)
  • 客户端负载均衡策略:loadBalancer,ribbon
  • HDR图像处理软件 Photomatix Pro mac中文版新增功能
  • 解决Linux下编译Intel oneTBB动态库出错的问题
  • 【电路笔记】-交流电路中的功率
  • 统计学习方法 支持向量机(下)
  • JPA联合主键
  • 【数据结构】交换排序
  • 假如我有一台服务器
  • python+requests接口自动化测试框架