一、准备工作
1.下载最新的 gas-preprocessor.pl
复制gas-preprocessor.pl到/usr/bin下,
修改文件权限:chmod 777 /usr/bin/gas-preprocessor.pl
2.下载编译脚本/FFmpeg-iOS-build-script
下载地址:https://github.com/kewlbear/FFmpeg-iOS-build-script
解压FFmpeg-iOS-build-script-master.zip到目录 /FFmpeg/FFmpeg-iOS-build-script-master打开 /FFmpeg/FFmpeg-iOS-build-script-master目录下的 build-ffmpeg.sh
修改ARCHS="arm64 armv7 armv7s arm64 x86_64 i386"让其编译支持arm64 armv7s指令集后保存
3.下载FFmpeg
下载地址:http://ffmpeg.org/releases/
解压ffmpeg-3.1.1.tar.gz 到目录 /FFmpeg/FFmpeg-iOS-build-script-master/ffmpeg-3.1.1
执行脚本开始编译
cd /FFmpeg/FFmpeg-iOS-build-script-master
sh build-ffmpeg.sh
开始编译,编译过程时间较长,请耐心等待....
如果你看见FFmpeg-IOS/lib目录下生成了如上.a文件,恭喜你!编译成功了。。。
让我们来查看这些.a文件支持的指令集
ok!这样虚拟机和真机都可以使用了。
新建IOS项目FFmpegDemo
添加编译好的静态库到项目中
设置项目搜索FFmpeg静态库和头文件
添加依赖库
VideoToolbox.framework
CoreMedia.framework
CoreAudio.framework
AudioToolbox.framework
libz.dylib
libbz2.dylib
libiconv.dylib
补充读取摄像头需要添加
AVFoundation.framework
编码配置测试代码
#import "ViewController.h"
#include <libavformat/avformat.h>
#include <libavcodec/avcodec.h>
@interface ViewController ()
@end
@implementation ViewController
- (void)viewDidLoad {
[super viewDidLoad];
av_register_all();
printf("%s\n", avcodec_configuration());
}
- (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
@end
模拟器运行
如果你使用有什么问题可以私信我,初次写,写的不好,见谅!
本文详细介绍了如何在iOS上编译FFmpeg 3.1.1版本的静态库.a文件。首先,你需要下载并安装gas-preprocessor.pl,然后获取FFmpeg-iOS-build-script和FFmpeg源代码。通过修改编译脚本以支持arm64和armv7s架构,执行脚本进行编译。当在指定目录下看到.a文件生成,即表示编译成功。接着,将编译好的静态库引入新的iOS项目,配置头文件路径和依赖库,如VideoToolbox等。最后,通过模拟器运行测试代码,确保FFmpeg正常工作。
761

被折叠的 条评论
为什么被折叠?



