×

签到

分享到微信

打开微信,使用扫一扫进入页面后,点击右上角菜单,

点击“发送给朋友”或“分享到朋友圈”完成分享

基于MLU220 Edge平台的ffmpeg-mlu交叉编译 hairui2022-04-25 11:23:38 回复 10 查看 技术答疑 经验交流 干货资源
基于MLU220 Edge平台的ffmpeg-mlu交叉编译
分享到:

一、准备:

1.aarch64-linux-gnu 交叉编译第三方软件;

2.mlu edge 平台的neuware sdk包;

3.github/gitlab拉取的ffmepg-mlu最新代码;

4.注意glibc的版本;当前公司edge平台的glibc的版本最高支持2.23;

  建议使用:gcc-linaro-6.5.0-2018.12-x86_64_aarch64-linux-gnu.tar.gz 交叉编译器;https://releases.linaro.org/components/toolchain/binaries/6.5-2018.12/aarch64-linux-gnu/


二、编译:

ffmpeg-mlu编译:

编译前需要制定环境变量:export PATH=$PATH:${xxx-gnu}/bin(e.g:/home/fanhairui/edge/gcc-linaro-6.5.0-2018.12-x86_64_aarch64-linux-gnu/bin )

#!/bin/bash
./configure --prefix="${ffmpeg_lib}" \
    --enable-cross-compile \
    --target-os=linux \
    --arch=arm64 \
    --cross-prefix="/home/xxxx/gcc-linaro-6.5.0-2018.12-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-" \
    --cc=aarch64-linux-gnu-gcc \
    --enable-version3 \
    --enable-gpl \
    --disable-debug \
    --enable-pthreads \
    --disable-yasm \
    --disable-asm \
    --disable-static \
    --enable-shared \
    --disable-stripping \
    --disable-optimizations \
    --enable-mlumpp \
    --extra-cflags="-I/home/xxxx/neuware/pc/include" \
    --extra-ldflags="-L/home/xxxx/neuware/pc/lib64" \
    --extra-cflags=-fPIC \
    --extra-libs="-lcncodec -lcnrt -ldl -lcndev -lcndrv -lion -ljpu"
  
 
make -j && make install


三、验证:

使用ffmpeg-mlu的命令行测例和api测例进行验证;

1.在编译机器上执行:file ffmpeg, 显示如下说明编译成功:

arm.png

2.在edge上执行./ffmpeg,验证是否可行;

3.执行解码、编码和转码的操作,验证是否可行;



版权所有 © 2024 寒武纪 Cambricon.com 备案/许可证号:京ICP备17003415号-1
关闭