ios ffmpeg编译支持命令行的静态库文件
脚本:https://github.com/kewlbear/FFmpeg-iOS-build-script
在命令行执行命令: sh build-ffmpeg.sh
用这个脚本自动在github中把ffmpeg源码下到本地并开始编译,编译好后在当前目录生成了FFmpeg-iOS文件夹。
这个文件夹是编译生成的通用库,里面有7个.a的静态库。在xcode导入这些静态库可以使用,具体每个库提供的
功能可以百度查下。但需要手动写很多代码去调用api,工作量大,不如直接写命令行方便。
在源代码中有个fftools的文件夹,将它导入工程中就可以直接写命令来操作了。(需要改些代码:可参考这篇文章:
http://www.jianshu.com/p/52516bdc1eb5)
最好把fftools也编译成静态库文件:(可参考这篇文章:http://www.jianshu.com/p/c236287e71ec)
在FFmpeg-iOS-build-script-master的文件下建一个静态库的工程。
导入需要的fftools中的类,如图
修改ffmpeg.c的main函数,因为一个程序不能有俩个main函数,修改成如图
修改exit_program函数修改成:
删掉函数中原来的内容, 添加 return ret;并修改函数的返回类型为int。
然后添加头文件的搜索路径:/FFmpeg-iOS/include 和 ffmpeg-3.4。
分别打出一个模拟器的库和一个真机的库,再进行合并。