首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用PJSIP进行Openh264编译

使用PJSIP进行Openh264编译
EN

Stack Overflow用户
提问于 2015-10-06 22:45:10
回答 3查看 2.2K关注 0票数 1

我正在尝试用openh264库构建pjsip项目。除了pjsip ./configure-android没有检测到openh264之外,一切都正常。

这是我的config_site.h

代码语言:javascript
复制
/* 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

我得到了以下日志

代码语言:javascript
复制
Using OpenH264 prefix... /home/user_name/PJSIPTOOLS/openh264-1.0.0/openlib/
checking OpenH264 usability... no

由于./configure-android没有检测到它,我的应用程序在运行时崩溃,说openh264没有找到lib。

我在ubuntu 14.04 32位上。

有什么建议吗。

EN

回答 3

Stack Overflow用户

发布于 2017-01-21 08:27:02

我刚刚遇到了一个类似的问题。在下面的代码中,我将下载并解压OpenH264的目录称为path-to-openh264。我在该文件夹中创建了一个子目录android,并通过设置PREFIX=android修改了OpenH264的Makefile。然后运行以下命令来构建OpenH264,为我解决了这个问题:

代码语言:javascript
复制
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,我使用了以下命令:

代码语言:javascript
复制
APP_PLATFORM=android-14 ./configure-android --with-openh264=<path-to-openh264>/android

下面的StackOverflow线程将我引向正确的方向:

building openh264 for android platform in x86

出现这个问题的原因是,我一开始运行make install命令时没有使用命令行参数。这会导致为错误的ABI (默认的是armeabi-v7a)创建本机库文件。当为armeabi ABI构建pjsip时,它无法识别该库,因为它是为不同的ABI构建的。至少我是这么想的。

票数 6
EN

Stack Overflow用户

发布于 2015-12-09 22:08:13

实际上,我也遇到过这个问题。

解决方案:

步骤1:进入你的openh264目录,创建一个名为"android“的文件夹

步骤2:打开makefile并设置前缀

代码语言:javascript
复制
PREFIX=/your_path/openh264-1.0.0/android

步骤3:然后使用以下命令构建openh264

代码语言:javascript
复制
make OS=android NDKROOT=/your_path/android-ndk-r10d TARGET=android-17 APP_ABI=armeabi

step4:现在使用以下命令构建pjsip

代码语言:javascript
复制
TARGET_ABI=armeabi APP_PLATFORM=android-12 ./configure-android --use-ndk-cflags --with-openh264=/your_path/openh264-1.0.0/android

希望这一次你能看到

代码语言:javascript
复制
Using OpenH264 prefix... 
/home/user_name/PJSIPTOOLS/openh264-1.0.0/openlib/
checking OpenH264 usability... ok
票数 4
EN

Stack Overflow用户

发布于 2015-10-08 21:29:58

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

  • 修改Makefile中的"prefix“
  • 运行"make install ARCH=armeabi"
  • run "./configure-android --with_openh264=/path/to/prefix/folder"
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32972912

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档