mac M1下 ffmpeg 编译,安转和xcode 引入

一、下载ffmpeg

    三种下载方式

  1. Homebrew 下载 ,终端输入 brew install ffmpeg
  2. github连接下载 , 下载地址 https://git.ffmpeg.org/ffmpeg.git

     3. 官网:下载 FFmpeg   下载后解压

 

二. 然后对ffmpeg配置编译

cd 到ffmpeg 目录

1.配置编译项

./configure --prefix=/usr/local/ffmpeg --enable-gpl --enable-nonfree --enable-libfdk-aac --enable-libx264 --enable-libx265 --enable-filter=delogo --enable-debug --disable-optimizations --enable-libspeex --enable-videotoolbox --enable-shared --enable-pthreads --enable-version3 --enable-hardcoded-tables --cc=clang --host-cflags= --host-ldflags= --disable-x86asm --enable-ffplay

配置编译项自选,通过 ./configure --help 命令查看每一个配置项的作用

  • --prefix

    • 用以指定编译好的FFmpeg安装到哪个目录
    • 一般放到 /usr/local/ffmpeg 中即可
  • --enable-shared

    • 生成动态库
  • --disable-static

    • 不生成静态库
  • --enable-libfdk-aac

    • 将fdk-aac内置到FFmpeg中
  • --enable-libx264

    • 将x264内置到FFmpeg中
  • --enable-libx265

    • 将 x265 内置到 FFmpeg 中
  • --enable-gpl

过程中可能应为缺少依赖项而报以下错误

  • brew install yasm

    • ffmpeg的编译过程依赖yasm
    • 若未安装yasm会出现错误:nasm/yasm not found or too old. Use --disable-x86asm for a crippled build.
  • brew install sdl2

    • ffplay 依赖于 sdl2,有的编译安转后bin文件夹下没有ffplay就是这依赖库没有装
    • 如果缺少sdl2,就无法编译出ffplay
  • brew install speex
    • 不然会出现错误:ERROR: speex not found
  • brew install fdk-aac

    • 不然会出现错误:ERROR: libfdk_aac not found
  • brew install x264

    • 不然会出现错误:ERROR: libx264 not found
    • x264 地址
  • brew install x265

    • 不然会出现错误:ERROR: libx265 not found

三. ffmpeg编译安转

sudo make -j 8  && sudo make install

安装成功后

可以看到ffmpeg下出现bin:ffmpeg所有命令工具   include:头文件  lib: 生成动态或静态库  share:文档和例子,bin 下ffmpeg:推流视频处理 ffplay:拉流  ffproe:视频信息侦测

四. 配置环境变量路径

为了让 bin 目录中的 ffmpeg、ffprobe、ffplay 在任意位置都能够使用,需要先将 bin 目录配置到环境变量 PATH 中

# 编辑.zshrc
vim ~/.zshrc

# .zshrc文件中写入以下内容
export PATH=/usr/local/ffmpeg/bin:$PATH

# 让.zshrc生效
source ~/.zshrc

五.引入xcode工程

将头文件include和库lib 复制到自己的工程目录下

1.设置头文件路径

 2.添加依赖静态库

六.关闭mac APP 沙盒

 

猜你喜欢

转载自blog.csdn.net/yxw125125/article/details/125058475