10、交叉编译ffmpeg----------Opencv移植Arm

交叉编译ffmpeg

交叉编译ffmpeg

  1. 安装必要依赖
bash 复制代码
sudo apt-get update
sudo apt-get install build-essential git yasm cmake libx264-dev libx265-dev libvpx-dev libfdk-aac-dev libmp3lame-dev libopus-dev
sudo apt-get install -y yasm pkg-config libx264-dev libxvidcore-dev

2.设置交叉编译工具环境变量

bash 复制代码
# 设置交叉编译工具链环境变量
export TOOLCHAIN_PREFIX=aarch64-linux-gnu-
export SYSROOT=/opt/arm-sysroot

3.下载FFmpeg 源代码

bash 复制代码
# 下载 FFmpeg 源代码
mkdir ~/ffmpeg_build && cd ~/ffmpeg_build
git clone https://git.ffmpeg.org/ffmpeg.git ffmpeg
cd ffmpeg
git checkout n4.4  # 或最新稳定版本

4.配置和编译

bash 复制代码
# 配置 FFmpeg

./configure \
  --prefix=/opt/arm-sysroot/usr/local \
  --enable-gpl \
  --enable-libx264 \
  --enable-libxvid \
  --enable-nonfree \
  --enable-avresample \
  --enable-shared \
  --arch=aarch64 \
  --cross-prefix=aarch64-linux-gnu- \
  --target-os=linux \
  --disable-static \
  --enable-pic \
  --extra-cflags="-I/opt/arm-sysroot/usr/local/include" \
  --extra-ldflags="-L/opt/arm-sysroot/usr/local/lib"


# 编译并安装
make -j$(nproc)
make install

编译jpeg库

先克隆OpenJPEG源码仓库或者取下载release版本

bash 复制代码
git clone https://github.com/uclouvain/openjpeg.git
cd openjpeg

创建构建目录

bash 复制代码
mkdir build && cd build

创建交叉编译工具链文件

bash 复制代码
# aarch64-gnu.toolchain.cmake

SET(CMAKE_SYSTEM_NAME Linux)
SET(CMAKE_SYSTEM_PROCESSOR aarch64)

# 交叉编译器路径
SET(CMAKE_C_COMPILER aarch64-linux-gnu-gcc)
SET(CMAKE_CXX_COMPILER aarch64-linux-gnu-g++)

运行cmake配置

bash 复制代码
cmake .. \
    -DCMAKE_TOOLCHAIN_FILE=./aarch64-gnu.toolchain.cmake \
    -DCMAKE_BUILD_TYPE=Release \
    -DCMAKE_INSTALL_PREFIX=/opt/arm-sysroot/usr/local

编译并安装OpenJPEG

bash 复制代码
make -j4
make install
相关推荐
十五年专注C++开发3 小时前
Qt中mysql和达梦数据库的驱动编译详细步骤
qt·mysql·达梦数据库·数据库驱动
蓝天智能3 小时前
CMakeLists.txt配置详细介绍
c语言·开发语言·qt
娇娇yyyyyy5 小时前
Qt编程(3): 信号和槽函数
开发语言·数据库·qt
wwww.wwww6 小时前
qt程序执行时报错:无法定位程序输入点,但是通过IDE的run又可以正常的运行。
开发语言·ide·qt
森G7 小时前
11、交叉编译Opencv----------Opencv移植Arm
qt
乌鸦乌鸦你的小虎牙8 小时前
qt 5.12.8 配置报错(交叉编译环境)
开发语言·数据库·qt
森G10 小时前
8、交叉编译x264----------Opencv移植Arm
qt
笨笨马甲10 小时前
Qt QSS使用指南
开发语言·qt
笨笨马甲12 小时前
Qt的界面渲染体系
开发语言·qt