【问题标题】:Android PJSIP openh264 usage issueAndroid PJSIP openh264 使用问题
【发布时间】:2017-09-05 17:15:40
【问题描述】:

我正在开发 voip 视频客户端应用程序,女巫使用 PJSIP(PJSUA2) 作为客户端,使用 Elastics(ASTERISK) 作为代理服务器。

我已经根据 pjsip.org 的教程构建了库,并将其改进到我的项目中。

注册\来电处理\音频流工作正常。 但我没有视频流。

endpoint.videoCodecEnum() 为空;

来电视频计数=0/索引=-1;

有一个适当的星号日志: 由于端口号为零而忽略视频流提供

我的构建细节:

  • 操作系统:Ubuntu 16.04

  • android ndk 降级到 r13b

  • android sdk 工具降级到 r22.0.5

  • openh264 和 pjsua 的构建目标平台是 android-24

  • config_site.h:

    #define PJ_CONFIG_ANDROID 1

    #include

    #define PJMEDIA_HAS_VIDEO 1

    #define PJMEDIA_HAS_OPENH264_CODEC 1

  • pjsua2 使用 openh264(... 可用性 ... ok)构建,默认使用 libyuv(如教程推荐)用于 armeabi、armeabi-v7a、arm64-v8a 并放置到适当的文件夹中

  • 结构: .../app/src/main/

    java/

      com/...
    
      org.pjsua2/...
    

    jniLibs/

      arm64-v8a/
          libopenh264.so
          libpjsua2.so
      armeabi/
          libopenh264.so
          libpjsua2.so
      armeabi-v7a
          libopenh264.so
          libpjsua2.so
    

    分辨率/...

有人遇到过吗?

【问题讨论】:

    标签: android video asterisk pjsip pjsua2


    【解决方案1】:

    这是我自己的疏忽。

    如果您遇到同样的问题 - 请检查您的 config_site.h 文件位置。

    应该是: '你的 pjproject 路径'/pjlib/include/pj/config_site.h

    文件内容至少应包含:

    #define PJ_CONFIG_ANDROID 1

    #define PJMEDIA_HAS_VIDEO 1

    #include

    【讨论】:

    • 我如何构建具有多个 cpu 架构支持的 anroid pjsip 应用程序。例如,在您的 jnilibs 中它支持 arm64、armeabi 以及 armeabi v7a。我注意到我一次只能为一种架构构建。
    猜你喜欢
    • 1970-01-01
    • 2014-07-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-07-20
    • 1970-01-01
    相关资源
    最近更新 更多