前言

  将ffmpeg移植到海思HI3559、Hi3516平台上,需要交叉编译。

 

FFmpeg下载

  开发使用当前3.4.8稳定版本:
  官方地址:http://ffmpeg.org/download.html#releases
  CSDN下载地址:https://download.csdn.net/download/qq21497936/12838391
  QQ群:1047134658(点击“文件”搜索“ffmpeg-3.4.8_源码以及编译后的库”,群内与博文同步更新)
  

 

交叉编译器环境

  

 

编译ffmpeg

步骤一:下载,放置到编译文件夹,解压

  

步骤二:配置configure

  
  安装的路径以及编译器是必须要配置的(此处3569是开发时写错了):

/configure --prefix=/home/yang/work/ffmpeg-hi3569av100 --arch=arm --target-os=linux  \
--enable-cross-compile --cross-prefix=aarch64-himix100-linux- --enable-shared

  
  出现错误,具体查看ffbuild/config.log,查看如下:

cat ffbuild/config.log

  是没有指定芯片内核,此时,直接修改配置文件平台为arm64,如下图:

./configure --prefix=/home/yang/work/ffmpeg-hi3569av100 --arch=arm64 --target-os=linux  --enable-cross-compile --cross-prefix=aarch64-himix100-linux- --enable-shared

  这是打入Qt路径的配置方法:

./configure --prefix=/home/yang/work/qt-5.8.0_rootfs --arch=arm64 --target-os=linux  --enable-cross-compile --cross-prefix=aarch64-himix100-linux- --enable-shared

  成功配置:
  

步骤三:编译make -j8

  

步骤四:安装make install

  不是安装在系统,不用sudo权限,如下图:
  

步骤五:检查文件

  

 

部署到板子上

  • 方法一:拷贝进入系统目录,对应bin、include、lib
  • 方法二:单独一个目录,运行前跑脚本进入路径(笔者是Qt,将ffmpeg打入qt的安装目录,使用qt的路径即可)。
    贴上开发本Qt的脚本(注意系统不同,平台的参数最后2个可能不同):
      
 

板子上ffmpeg播放器测试1

  将ffmpeg部署到板子上,然后用板子ffmpeg命令行测试,已测试了。(图略)

 

板子上ffmpeg软解码播放器测试2

  自己造的ffmpeg播放器也通过测试,播放正常。(图略)

 
 

若该文为原创文章,转载请注明原文出处
本文章博客地址:https://blog.csdn.net/qq21497936/article/details/109603499

若该文为原创文章,转载请注明原文出处
本文章博客地址:https://blog.csdn.net/qq21497936/article/details/109603499
各位读者,知识无穷而人力有穷,要么改需求,要么找专业人士,要么自己研究
长期持续项目技术分享,Shang业Ding制Zi询博主,QQ:21497936 WX:yangsir198808
红胖子(红模仿)的博文大全:开发技术集合(包含Qt实用技术、树莓派、三维、OpenCV、OpenGL、ffmpeg、OSG、单片机、软硬结合等等)持续更新中…(点击传送门)

 

前言

  将ffmpeg移植到海思HI3559、Hi3516平台上,需要交叉编译。

 

FFmpeg下载

  开发使用当前3.4.8稳定版本:
  官方地址:http://ffmpeg.org/download.html#releases
  CSDN下载地址:https://download.csdn.net/download/qq21497936/12838391
  QQ群:1047134658(点击“文件”搜索“ffmpeg-3.4.8_源码以及编译后的库”,群内与博文同步更新)
  

 

交叉编译器环境

  

 

编译ffmpeg

步骤一:下载,放置到编译文件夹,解压

  

步骤二:配置configure

  
  安装的路径以及编译器是必须要配置的(此处3569是开发时写错了):

/configure --prefix=/home/yang/work/ffmpeg-hi3569av100 --arch=arm --target-os=linux  \
--enable-cross-compile --cross-prefix=aarch64-himix100-linux- --enable-shared

  
  出现错误,具体查看ffbuild/config.log,查看如下:

cat ffbuild/config.log

  是没有指定芯片内核,此时,直接修改配置文件平台为arm64,如下图:

./configure --prefix=/home/yang/work/ffmpeg-hi3569av100 --arch=arm64 --target-os=linux  --enable-cross-compile --cross-prefix=aarch64-himix100-linux- --enable-shared

  这是打入Qt路径的配置方法:

./configure --prefix=/home/yang/work/qt-5.8.0_rootfs --arch=arm64 --target-os=linux  --enable-cross-compile --cross-prefix=aarch64-himix100-linux- --enable-shared

  成功配置:
  

步骤三:编译make -j8

  

步骤四:安装make install

  不是安装在系统,不用sudo权限,如下图:
  

步骤五:检查文件

  

 

部署到板子上

  • 方法一:拷贝进入系统目录,对应bin、include、lib
  • 方法二:单独一个目录,运行前跑脚本进入路径(笔者是Qt,将ffmpeg打入qt的安装目录,使用qt的路径即可)。
    贴上开发本Qt的脚本(注意系统不同,平台的参数最后2个可能不同):
      
 

板子上ffmpeg播放器测试1

  将ffmpeg部署到板子上,然后用板子ffmpeg命令行测试,已测试了。(图略)

 

板子上ffmpeg软解码播放器测试2

  自己造的ffmpeg播放器也通过测试,播放正常。(图略)

 
 

若该文为原创文章,转载请注明原文出处
本文章博客地址:https://blog.csdn.net/qq21497936/article/details/109603499

FFmpeg开发笔记(十):ffmpeg在ubuntu上的交叉编译移植到海思HI35xx平台的更多相关文章

  1. OpenCV开发笔记(七十四):OpenCV3.4.1+ffmpeg3.4.8交叉编译移植到海思平台Hi35xx平台

    前言   移植opencv到海思平台,opencv支持对视频进行解码,需要对应的ffmpeg支持.   Ffmpeg的移植   Ffmpeg的移植请参考之前的文章:<FFmpeg开发笔记(十): ...

  2. 海思HI35xx平台软件开发快速入门之H264解码实例学习

    ref :https://blog.csdn.net/wytzsjzly/article/details/82500277   前言 H264视频编码技术诞生于2003年,至今已有十余载,技术相当成熟 ...

  3. live555 交叉编译移植到海思开发板

    本文章参考了.http://blog.csdn.net/lawishere/article/details/8182952,写了hi3518的配置说明.特此感谢 https://blog.csdn.n ...

  4. FFmpeg开发笔记(三):ffmpeg介绍、windows编译以及开发环境搭建

    前言   本篇章是对之前windows环境的补充,之前windows的是无需进行编译的,此篇使用源码进行编译,版本就使用3.4.8.   FFmpeg简介   FFmpeg是领先的多媒体框架,能够解码 ...

  5. FFmpeg开发笔记(四):ffmpeg解码的基本流程详解

    若该文为原创文章,未经允许不得转载原博主博客地址:https://blog.csdn.net/qq21497936原博主博客导航:https://blog.csdn.net/qq21497936/ar ...

  6. FFmpeg开发笔记(五):ffmpeg解码的基本流程详解(ffmpeg3新解码api)

    若该文为原创文章,未经允许不得转载原博主博客地址:https://blog.csdn.net/qq21497936原博主博客导航:https://blog.csdn.net/qq21497936/ar ...

  7. FFmpeg开发笔记(九):ffmpeg解码rtsp流并使用SDL同步播放

    前言   ffmpeg播放rtsp网络流和摄像头流.   Demo   使用ffmpeg播放局域网rtsp1080p海康摄像头:延迟0.2s,存在马赛克     使用ffmpeg播放网络rtsp文件流 ...

  8. 海思hi35xx 开发学习(3):视频输入

    视频输入(VI)模块实现的功能:通过 MIPI Rx(含 MIPI 接口.LVDS 接口和 HISPI 接口),SLVS-EC,BT.1120,BT.656,BT.601,DC 等接口接收视频数据.V ...

  9. ffmpeg学习笔记-初识ffmpeg

    ffmpeg用来对音视频进行处理,那么在使用ffmpeg前就需要ffmpeg有一个大概的了解,这里使用雷神的ppt素材进行整理,以便于复习 音视频基础知识 视频播放器的原理 播放视频的流程大致如下: ...

随机推荐

  1. 【Vue.js】SPA

    SPA 2019-11-13  23:20:48  by冲冲 1.概念 (1)MPA(multi-page application) 特点:每一次页面跳转的时候,后台服务器都会返回一个新的html文档 ...

  2. 【Tool】IDEA功能--SVN和Git

    IDEA功能--SVN和Git 2019-11-08  21:12:22  by冲冲 1.IDEA的SVN (1)提交项目代码到SVN服务器 ① 指定不用上传的目录 ② 设置项目上传的路径 SVN服务 ...

  3. java Scanner类与String类

    Scanner类的使用: ​ 导入Scanner包,new Scanner对象,记得调用System.in参数,调用对应next方法实现键盘录入. import java.util.Arrays; i ...

  4. Codeforces 891D - Sloth(换根 dp)

    Codeforces 题面传送门 & 洛谷题面传送门 换根 dp 好题. 为啥没人做/yiw 首先 \(n\) 为奇数时答案显然为 \(0\),证明显然.接下来我们着重探讨 \(n\) 是偶数 ...

  5. LeeCode刷题笔记

    (本来想在LeeCode题目页面上做注释的,结果没找到位置,只好来这里了) 字符串部分: 14.最长公共前缀:编写一个函数来查找字符串数组中的最长公共前缀. 示例 1: 输入: ["flow ...

  6. GATK4.1 call SNP

    GATK4.0 和之前的版本相比还是有较大的不同,更加趋于流程化. 软件安装 1 wget https://github.com/broadinstitute/gatk/releases/downlo ...

  7. C语言小练习 微型学生管理系统

    很简陋,没有做输入校验,以写出来为第一目的,中间出了不少问题,尤其是结构体内字符串赋值的时候(理解不透彻),字符串比较用strcmp不能直接==判定,逻辑也很重要,不然会出现莫名其妙的问题. 涉及知识 ...

  8. 搭建zabbix服务器常见问题解析处理

    1. 找不到url 2. 服务器无法处理当前请求,PHP解析出错 3. 服务器无法处理当前请求,权限不足 1. 找不到url 浏览器报错:The requested URL /zabbix/ was ...

  9. MybatisPlus的CRUD及拓展

    创建一个简单的MybatisPlus项目在上一篇博客:MybatisPlus入门程序 一.CRUD 1. select 1.1 查找全部用户 //查 @Test public void select( ...

  10. matplotlib以对象方式绘制子图

    matplotlib有两种绘图方式,一种是基于脚本的方式,另一种是面向对象的方式 面向脚本的方式类似于matlab,面向对象的方式使用起来更为简便 创建子图的方式也很简单 fig,ax = plt.s ...