OpenH264 ライブラリを任意の Xcode プロジェクトに統合する手順は次のとおりです。
- 次のリンクから OpenH264 ライブラリをダウンロードまたは複製します: https://github.com/cisco/openh264
- IOS アプリケーション、Objective C、およびその他の必須オプションを選択して、Xcode プロジェクトを作成します。
- OpenH264 ライブラリをすべてのファイルとフォルダーと共にプロジェクトのルート ディレクトリに配置します。たとえば、私の IOS アプリケーションはディレクトリ/user/rajib/HelloApp/HelloApp.xcodeprojにあり、OpenH264 ライブラリは/user/rajib/HelloApp/OpenH264Libraryに保持されています。
- ターミナルを開き、ルートモードを有効にします。
- OpenH264Library が保存されているディレクトリに移動し、次のコマンドで作成します: ->sudo make OS=ios ARCH=amrv7 install
- Project Build Setting に移動し、Header Search Path属性を見つけます。次のヘッダー パスを別の行に追加して、その属性に追加します。
$(inherited) , "$(SRCROOT)/OpenH264Library/codec/encoder/core/inc" , "$(SRCROOT)/OpenH264Library/codec/processing/interface" , "$(SRCROOT)/OpenH264Library/codec/common/inc" "、"$(SRCROOT)/OpenH264Library/codec/api/svc"、
- ここで、HelloApp プロジェクト内にcommon.xcodeproj、processing.xcodeproj、welsenc.xcodeprojという名前の 3 つの Xcode プロジェクトをさらに統合する必要があります。これらの .xcodeproj ファイルはすべて、OpenH264Library 内にあります。OpenH264Library 内でその名前の .xcodeproj ファイルを見つけ、これらのファイルを HelloApp プロジェクト内にドラッグ アンド ドロップするだけです。
- Project Build Phase に移動し、Target Dependencies属性を見つけます。ワークプレイスからwelsenc、processing、commonプロジェクトを追加します。
- このプロジェクトをビルドしてみると、これら 3 つのプロジェクトがコンパイルおよび実行され、作業場所に 3 つの静的ライブラリが見つかります。
- ここで、プロジェクトのビルド フェーズに再び移動し、Link Binary with Libraries属性を見つけます。職場から libwelsenc.a、libprocessing.a、libcommon.a 静的ライブラリを追加します。
以上、openh264ライブラリのビルドとリンクの手順でした。これで、openh264 ライブラリ関数を簡単に呼び出すことができます。ここでは、OpenH264 ライブラリ関数を呼び出すエンコーダー初期化の簡単な作業コードを示しています。
//Adding Header files
#include "codec_api.h"
#include "codec_def.h"
//Calling OpenH264 Library function to initialize Encoder
- (IBAction)EncoderTestBtn:(id)sender {
NSLog(@"Inside EncoderTestBtn");
ISVCEncoder *pEncoder = NULL;
int iRet = -1;
iRet = WelsCreateSVCEncoder(&pEncoder);
if(iRet == 0)
{
NSLog(@"Rajib_Check: Encoder Initialization SUCCESSFUL");
}
else
{
NSLog(@"Rajib_Check: ERROR--> iRet returned with = %d", iRet);
}
}