iOS ffmpeg集成

FFMpeg简介

根据个人的理解,ffmpeg是一个多媒体转码、音视频流化传输的一个第三方开源框架,并且这个第三方库是基于C语言的(表示看不懂,一般看不懂的东西才是牛逼的)。 iOS平台下的ffmpeg主要包括以下一些功能:影音的解码、编码、编码转换、混合、抽取、串流和滤镜:相关博客:iOS9 新滤镜介绍、基于GPUImage的实时美颜滤镜。

FFMpeg集成步骤

第一步:下载FFmpeg脚本地址,获取得到如下图所示的文件夹:

iOS ffmpeg集成_第1张图片

Paste_Image.png

在这里我是将文件夹放到了桌面,可以查看此时的文件目录

iOS ffmpeg集成_第2张图片

Paste_Image.png

你会发现只包含了三个文件。

第二步:下载完整的ffmpeg支持库。

首先打开终端,刚开下载的文件的目录:cd 文件目录。这里我的目录是在桌面,所以:cd /Users/lxh/Desktop/FFmpeg-iOS-build-script-master然后输入:./build-ffmpeg.sh随后便开始了漫长的下载过程。等完全下载完成以后你会发现,桌面上的文件夹(刚下载的)多了好多的文件。,如图所示:

iOS ffmpeg集成_第3张图片

这个就是我们刚才通过终端下载的ffmpeg的编译库。


其中FFmpeg-iOS文件是我们在项目中需要用到的,另外ffmpeg-3.0文件是全平台下载的编译文件(包含了TVOS、Mac OS、iOS等)。

第三步:集成 iOS平台下的ffmpeg

新建一个新项目,例如:LHTestFFmpeg。

将FFmpeg-iOS文件夹(桌面下载的ffmpeg库文件)添加到LHTestFFmpeg工程中。

配置头文件搜索路径:在工程文件->Bulid Setting->Search Paths->Header Search Paths添加$(SRCROOT)/$(PRODUCT_NAME)/FFmpeg-iOS/include,(请根据自己实际路径更改)

在工程中新建ffmpeg文件夹,并从ffmpeg-3.0的文件中添加如下八个文件:

iOS ffmpeg集成_第4张图片

Paste_Image.png

添加完成如下所示:

iOS ffmpeg集成_第5张图片

Paste_Image.png

command+B编译会发现报这个错误:'config.h' file not found,这是由于找不到config.h文件,不要紧,去桌面源文件中找。于是我们在桌面文件夹中找到scratch文件夹,随便打开一个文件夹找到config.h ,拖到工程中。编译后发现这个问题得到了解决,此时工程结构如下:

iOS ffmpeg集成_第6张图片

添加需求的库文件

iOS ffmpeg集成_第7张图片

添加工程所缺的库文件,编译后,会发现编译成功了

你可能感兴趣的:(iOS ffmpeg集成)