iOS编译ffmpeg.md

[TOC]

iOS编译ffmpeg

参考http://www.jianshu.com/p/08107176d5bb

1) 下载"一键编译"脚本

https://github.com/kewlbear/FFmpeg-iOS-build-script

2)编译能在iOS下使用的FFMPEG library库

进入脚本目录,执行
./build-ffmpeg.sh

3)在xcode中引入FFMPEG library库

新建工程,把上面编译好的FFmpeg-iOS拖到xcode工程中

编译后的文件夹中
ffmpeg-2.5.3 是源码
FFmpeg-iOS 是编译出来的库,里面有我们需要的.a静态库,一共有7个

执行lipo -info libavcodec.a,查看.a包支持的架构,这几个包都支持了armv7 armv7s i386 x86_64 arm64这几个架构,这个脚本果真是业界良心啊~~~

4)加入依赖库

libz.tbd libbz2.tbd libiconv.tbd

78559964.png

5)为TARGETS 添加 search paths

项目根目录用 $(SRCROOT) 表示

  • 添加 Header Search Paths
    $(inherited)
    $(SRCROOT)/FfmpegDemo/FFmpeg-iOS/lib
    72612549.png
  • 添加 Library Search Paths (系统可能已经添加)
    $(inherited)
    `$(SRCROOT)/FfmpegDemo/FFmpeg-iOS/include
    72413903.png

如果编译不过(如缺少文件)一般都是search paths路径没写对

5)修改某个.m文件为.mm

注意,不能是引入FFmpeg库的文件,否则编译不过

6)引入头文件

#include "avformat.h"

如果编译成功,说明 search patchs 设置成功

7)添加代码

#include "avutil.h"

    av_register_all();
    // 获取 ffmpeg 版本号
    const char *version = av_version_info();
    NSLog(@"version: %s", version);

执行成功说明集成成功

各个CPU构架支持的设备

68265767.png

你可能感兴趣的:(iOS编译ffmpeg.md)