ffmpeg iOS 集成
1. 首先下载 iOS 的编译脚本
该脚本,如果你没有下载 ffmpeg 的源码,那么脚本会给你下载
脚本地址 : https://github.com/kewlbear/FFmpeg-iOS-build-script
下载完成之后 在根目录下,运行脚本,./build-ffmpeg.sh
当然你可以比那一指定的架构,如 ./build-ffmpeg.sh arm64
,这时候等待一会就回编译完成
2. ffmpeg 源码地址
https://github.com/FFmpeg/FFmpeg
3.使用 iOS 的静态库
将脚本编译好的 FFmpeg-iOS
文件夹拖入到工程当中,然后,在项目的 Build Settings
中,找到 Library search paths
,可以看到有个路径,复制过来,因为我们要使用其中的库,是在 include
文件夹下,所以将他复制到,它上面的 Header search paths
中,大概是这样$(PROJECT_DIR)/ffmpegDemo/FFmpeg-iOS/include
,将原来的 lib
改为 include
, 然后 编译一下。
4.测试是否成功编译
导入头文件
#include <libavcodec/avcodec.h>
#include <libavformat/avformat.h>
测试代码
avcodec_register_all();
av_register_all();
avformat_network_init();
然后编译一下,发现失败了
4. 导入系统库
* libz.1.2.5.tbd
* libbz2.1.0.tbd
* libiconv.2.tbd
* AudioToolbox.framework
* VideoToolbox.framework
* CoreMedia.framework
然后多导入个系统头文件,就可以编译通过了
#include <libavcodec/avcodec.h>
#include <libavformat/avformat.h>
#import <VideoToolbox/VideoToolbox.h>