1

openh264 lib で pjsip プロジェクトをビルドしようとしています。openh264 が pjsip によって検出されないことを除いて、すべて正常に動作します。./configure-android

これは私のconfig_site.hです

/* Activate Android specific settings in the 'config_site_sample.h' */
#define PJ_CONFIG_ANDROID 1
#include <pj/config_site_sample.h>
#define PJMEDIA_HAS_VIDEO 1
#define PJMEDIA_HAS_OPENH264_CODEC 1

次のログを取得しています

Using OpenH264 prefix... /home/user_name/PJSIPTOOLS/openh264-1.0.0/openlib/
checking OpenH264 usability... no

私のアプリでは検出されない./configure-androidため、実行時にopenh264のlibが見つからないと言ってクラッシュします。

私はubuntu 14.04 32ビットを使用しています。

助言がありますか。

4

3 に答える 3

6

同様の問題が発生しました。以下では、OpenH264をダウンロードして解凍したディレクトリを参照しますpath-to-openh264. そのフォルダ内にサブディレクトリを作成し、androidOpenH264 の Makefile を設定して変更しましたPREFIX=android。その後、次のコマンドを実行して OpenH264 をビルドすると、問題が解決しました。

make OS=android NDKROOT=<path-to-ndk> TARGET=android-14 APP_ABI=armeabi ARCH=arm
make OS=android NDKROOT=<path-to-ndk> TARGET=android-14 APP_ABI=armeabi ARCH=arm clean
make install OS=android NDKROOT=<path-to-ndk> TARGET=android-14 APP_ABI=armeabi ARCH=arm

結果のlibopenh264.soファイルは、ディレクトリに配置されるはずpath-to-openh264/android/lib/です。pjsip を構成するために、次のコマンドを使用しました。

APP_PLATFORM=android-14 ./configure-android --with-openh264=<path-to-openh264>/android

次の StackOverflow スレッドは、私を正しい方向に導きます。

x86でAndroidプラットフォーム用のopenh264を構築する

この問題の理由は、make install最初にコマンド ライン パラメーターを指定せずにコマンドを実行したためです。これにより、ネイティブ ライブラリ ファイルが間違った ABI (デフォルトの armeabi-v7a) 用に作成されました。armeabi ABI の pjsip をビルドすると、別の ABI 用にビルドされているため、ライブラリが認識されませんでした。少なくともこれは私が推測するものです。

于 2017-01-21T00:27:01.920 に答える
4

実際、私もその問題に直面しました。

解決:

ステップ 1: openh264 ディレクトリに移動し、「android」という名前のフォルダーを作成します。

ステップ 2: メイクファイルを開き、プレフィックスを設定する

PREFIX=/your_path/openh264-1.0.0/android

step3: 次に、このコマンドを使用して openh264 をビルドします

make OS=android NDKROOT=/your_path/android-ndk-r10d TARGET=android-17 APP_ABI=armeabi

step4: このコマンドを使用して pjsip をビルドします

TARGET_ABI=armeabi APP_PLATFORM=android-12 ./configure-android --use-ndk-cflags --with-openh264=/your_path/openh264-1.0.0/android

今度はあなたが見ることを願っています

Using OpenH264 prefix... 
/home/user_name/PJSIPTOOLS/openh264-1.0.0/openlib/
checking OpenH264 usability... ok
于 2015-12-09T14:08:13.100 に答える
3

http://trac.pjsip.org/repos/ticket/1758

  • Makefile の「プレフィックス」を変更する
  • 「make install ARCH=armeabi」を実行
  • 「./configure-android --with_openh264=/path/to/prefix/folder」を実行します
于 2015-10-08T13:29:57.933 に答える