1.Mac安装Homebrew
Terminal终端输入:
/usr/bin/ruby -e “$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)”
https://brew.sh/index_zh-cn.html
2.安装FFmpeg
Terminal终端输入:
brew install ffmpeg
brew info ffmpeg
3.编译能iOS的FFmpeg library库文件
https://github.com/kewlbear/FFmpeg-iOS-build-script
直接利用脚本编译(其实脚本会自动安装更新homebrew和FFmpeg,直接用脚本可以省略1,2步骤)
4.新建iOS工程,导入FFmpeg library文件引用
拖FFmpeg library进项目,设置Build Setting里面的header serach paths,library serach paths.在Linked Frameworks and Libraries添加依赖库libiconv.tbd,libbz2.tbd,libz.tbd,video Toolbox.frame,CoreGraphics.framework,CoreMedia.framework
5.FFmpeg结构:
AVFormatContext:统领全局的基本结构体。主要用于处理封装格式(FLV/MKV/RMVB等)。
AVIOContext:输入输出对应的结构体,用于输入输出(读写文件,RTMP协议等)。
AVStream,AVCodecContext:视音频流对应的结构体,用于视音频编解码。
AVPacket:存储压缩数据(视频对应H.264等码流数据,音频对应AAC/MP3等码流数据)
AVFrame:存储非压缩的数据(视频对应RGB/YUV像素数据,音频对应PCM采样数据)
写了个FFmpeg3.2的视频解码项目Demo: https://github.com/gdxz123/FFmpegDemo (使用FFmpeg3.2 api 中文备注)
推荐FFmpeg学习博客:http://blog.csdn.net/leixiaohua1020/article/details/44220151