iOS

iOS编译ffmpeg

2017-04-17  本文已影响53人  三秋树下

1. 下载ffmpeg

下载出现错误:
$ chmod 777 /usr/sbin/gas-preprocessor.pl
chmod: /usr/sbin/gas-preprocessor.pl: No such file or directory


ffempeg3.1.1下载成功
 $ cd /Users/m_li/Downloads/FFmpeg-iOS-build-script-master/FFmpeg-iOS/lib 
 $ lipo -info libavcodec.a
Architectures in the fat file: libavcodec.a are: armv7 i386 x86_64 arm64 成功

2. 下载完ijk后运行出现 'libavformat/avformat.h' file not found

原因:因为libavformat是ffmpeg中的库,而ijkplayer是基于ffmpeg这个库的,因此需要导入ffmpeg

编译ffmpeg

编译ffmpeg第一步:进入ijkplayer-master 执行以下的脚本文件
$ cd /Users/m_li/Downloads/ijkplayer-master
$ ./init-ios.sh

   成功出现
   Switched to a new branch 'ijkplayer'
   /Users/m_li/Downloads/ijkplayer-master

编译ffmpeg第二步:进入到ijkplayer-master下的iOS目录下执行命令行为编译ffmpeg.sh做准备
./compile-ffmpeg.sh clean
编译ffmpeg第三步:进入到ijkplayer-master下的iOS目录下执行命令行编译各个平台的ffmpeg库,生成个平台的通用库.
./compile-ffmpeg.sh all

再次运行Demo,还是不成功的

,因为IJKMediaPlayer虽然获取到ffmpeg库,但是缺少libicov.24.0.tbd库

project->target->build phases->Link Binary With libraries ->libicov.24.0.tbd

libicov.24.0.tbd库

OK,IJKMediaDemo编译通过了

上一篇 下一篇

猜你喜欢

热点阅读