官方文档 FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序 。它提供了录制、转换以及流化音视频的完整解决方案 。FFmpeg的代码是包括两部分的,一部分是library,一部分是tool 。api都是在library里面,如果直接调api来操作视频的话,就需要写c或者c++了 。另一部分是tool,使用的是命令行,则不需要自己去编码来实现视频操作的流程 。
1、各模块的功能:libavformat:用于各种音视频封装格式的生成和解析; libavcodec:用于各种类型声音、图像编解码; libavutil:包含一些公共的工具函数; libswscale:用于视频场景比例缩放、色彩映射转换; libpostproc:用于后期效果处理; ffmpeg:该项目提供的一个工具,可用于格式转换、解码或电视卡即时编码等; ffsever:一个 HTTP 多媒体即时广播串流服务器; ffplay:是一个简单的播放器,使用ffmpeg 库解析和解码,通过SDL显示;
本文主要介绍已经编译好FFmpeg库的情况下怎么集成到IOS项目中并使用FFmpeg命令,至于怎么编译教程很多我懒得贴了可以自行搜索 。
2、导入iOS工程的配置及使用命令行工具的配置1、编译成功之后会得到FFmpeg-iOS这么一个目录,里面有lib、include两个子目录,把FFmpeg-iOS直接拖进工程里
2、添加需要的系统依赖库,Build Phases — Link Binary With Libraries,添加 libz.tbd、libbz2.tbd、libiconv.tbd、CoreMedia.framework、VideoToolbox.framework、AudioToolbox.framework

文章插图
【iOS使用FFmpeg命令行】3、设置 Header Search Paths 路径,指向项目中include目录

文章插图
