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

 

前言

  将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

原文地址:https://www.cnblogs.com/qq21497936/p/15714036.html