转自:http://www.jianshu.com/p/41461a8bf0bb
1.下载并编译FFMPEG。
https://github.com/kewlbear/FFmpeg-iOS-build-script
下载后有个
build-ffmpeg.sh
文件。终端执行即可自动下载并编译完成。
我在运行的时候并没有提示权限的相关问题,如果你在安装的时候出现问题,自己搜索下怎么解决哈~
2.导入编译好的静态库
编译完成后,当前目录有个FFmpeg-iOS文件夹,拖进项目中。
3.添加引用库
AVFoundation.framework
libz.dylib
libbz2.dylib
libiconv.dylib
IOS9以后文件的后缀为tbd,不影响。
4.添加头文件搜索路径
Header Search Paths
->$(PROJECT_DIR)/FFmpeg-iOS/include
错误情况:
'libavcodec/avcodec.h' file not found
解决办法:检查include文件路径,并重新修改$(PROJECT_DIR)/....../FFmpeg-iOS/include
Library Search Paths
- >$(PROJECT_DIR)/FFmpeg-iOS/lib
同样可能因为你的路径不正确引起
file not found
的问题
5.修改一个.m文件为.mm,开启C/C++ 混编模式。
修改后,我的项目仍然报错 avcodec_configuration()
不可用。当我在复现这个问题的时候,把.mm修改回.m,这时候不会再报编译错误。应该是Xcode已经开启了混编模式,所以不会再出问题。并且编译通过,avcodec_configuration()
可以打印。