Mac下编译OpenH264 for iOS

简介

OpenH264 是思科的开源项目,可以编码解码H264,常见的H264编码器还有x264项目。
由于OpenH264项目的文档较少,初学的门槛较高,所以整理一些文章来帮忙初学者入门。

OpenH264系列文章包括:
编译OpenH264 for Windows
编译OpenH264 for Android
编译OpenH264 for iOS
编译OpenH264 for Windows Phone
OpenH264编码示例
OpenH264解码示例
OpenH264项目结构
编译好的OpenH264库

编译环境

Mac OS X 10.12.5 x86_64
Xcode 8.3
NASM v2.10.07
注:NASM 版本必须小于等于 2.10.07

安装过程

OpenH264 官网有简要的编译说明,只是其中有不周全的地方;

安装 Xcode 8.3

从 AppStore 下载 Xcode

安装 nasm

从官网下载 mac 版本的 [nasm](http://www.nasm.us/pub/nasm/releasebuilds/2.10.07/macosx/nasm-2.10.07-macosx.zip,并把解压后的 nasm.exe 文件拷贝到 ~/app/nasm 目录下;

设置环境变量

在命令行中设置环境变量

export PATH=~/app/nasm:$PATH

注:Mac 自带有 nasm,因此 export 时,新下载的 nasm 路径在放在 $PATH 前面,以覆盖原版本

下载 OpenH264 源码

从官网下载 OpenH264 源码,并解压到 ~/openh264

编译 OpenH264

在命令行中,执行以下命令

cd ~/openh264
# armv7
make OS=ios ARCH=armv7 SDK_MIN=7.1 clean
make OS=ios ARCH=armv7 SDK_MIN=7.1
# armv7s
make OS=ios ARCH=armv7s SDK_MIN=7.1 clean
make OS=ios ARCH=armv7s SDK_MIN=7.1
# arm64
make OS=ios ARCH=arm64 SDK_MIN=7.1 clean
make OS=ios ARCH=arm64 SDK_MIN=7.1
# i386
make OS=ios ARCH=i386 SDK_MIN=7.1 clean
make OS=ios ARCH=i386 SDK_MIN=7.1
# x86_64
make OS=ios ARCH=x86_64 SDK_MIN=7.1 clean
make OS=ios ARCH=x86_64 SDK_MIN=7.1

OpenH264 生成文件

生成的文件位于 ~/openh264 目录下,共计5个静态库
libcommon.a
libdecoder.a
libencoder.a
libopenh264.a
libprocessing.a

使用方法

参见OpenH264编码示例、OpenH264解码示例两篇文章;