【问题标题】:Android SIP stack - what to use? [closed]Android SIP 堆栈 - 使用什么? [关闭]
【发布时间】:2012-04-04 23:09:03
【问题描述】:

我需要在 Android 上创建一个 SIP 堆栈,它将与 asterix 一起使用,并让用户可以更改编解码器(我需要实现 G729 和其他一些编解码器)。我是这个领域(语音和编解码器)的新手,我将不胜感激每一点信息。在我对 Internet 的研究中,我发现了以下 SIP 堆栈:

  1. PJSIP
  2. MJSIP
  3. JAIN SIP

您建议将什么用于商业程序?或者你可以推荐一些其他的吗?对于我的特殊情况,它必须支持 G729 编解码器。

【问题讨论】:

  • 我也在尝试使用 sip,但我的帐户被阻止在这里提问,我不知道如何请求取消阻止它,我需要您在 Stack 上的帮助
  • 我不明白你到底需要什么?!
  • 我迷路了,我需要 Stack Overflow 来询问有关 Sip、Android 等的问题……但我的帐户被自动阻止了,因为我删除了自己的帖子,我不知道如何取消禁令
  • 对不起,我不知道如何帮助... :(
  • 看看那里:stackoverflow.com/questions/7486099/…。特别是,我非常看重 baresip。

标签: android sip pjsip jain-sip mjsip


【解决方案1】:

我也会推荐Doubango。它支持你想要的 G729,还有一个你可以查看的示例项目,它使用了框架 - ImsDroid - ImsDroid 已经提供了很多功能并且源代码是开放的。

【讨论】:

  • 我是 ImsDroid 的新手,您能指导我 ImsDroid 的工作原理吗?我该如何在我的项目中实现它?
【解决方案2】:

强烈推荐使用 PJSIP。您可以查看CsipSimple,这是一款使用 PJSIP 的开源 Android 手机,是一个很好的起点。 PJSIP 支持多种编解码器,包括 G.729 和 speex,内存占用空间小,文档丰富。

【讨论】:

  • PJSIP 不能直接在 android 和 java 上运行。您必须使用 JNI 将 C 库转换为 java 才能使其可用,这本身就是一种痛苦。
  • 如果您知道自己在做什么,那么 JNI 很容易。 JNI 转换是 CSipSimple 的一部分。你不需要做任何事情。在 Android 应用程序中使用 JNI 时,请尝试使用 SWIG 进行 JNI 转换。 swig.org/Doc2.0/Android.html
  • 我尝试使用 SWIG 生成一些 JNI 文件,但它不起作用。它抱怨缺少头文件,尽管头文件和 C 中的源代码都在一个位置。 CSipSimple 项目也不清楚。它如何生成 JNI 文件?所有 SIPLib 标头在哪里? .so .a 或 .c 文件?为什么 CSipSimple 不简单地为 pjsip 生成一个 jar 库?为什么没有pjsip jar lib文件?
  • 嗨,约翰。我已经在网上进行了大量搜索,并且还发布了我自己关于我的问题的问题,但没有人回答,所以它不能像你想的那样直截了当。如果是这样,将会有很多关于如何做到这一点的指南。 CSipSimple 文档仅说明如何构建整个项目,而不是如何创建 sip 的 jar lib 文件并在您自己的应用程序中使用它
  • @JohnQualis,您是否愿意修改您的答案并添加一些 JNI 源代码?这对整个社区都有很大的帮助。
【解决方案3】:

虽然我从未尝试过这个 sdk 用于移动开发(但我可以确认它在 Windows VoIP SIP 应用程序领域的表现),我认为这个android voip client 示例也可以替代前面提到的 Android SIP 堆栈.

【讨论】:

    【解决方案4】:

    我必须为工作构建一个 SIP 应用程序,目前我们正在使用 Linphone,可以在这里找到 https://github.com/BelledonneCommunications/linphone-android

    它提供了来自 VOIP、聊天(文本)视频通话、远程配置以及包括 G729 在内的大量编解码器的大量功能。它确实需要将其 C 文件编译为 java,并且需要一些时间来尝试使其工作。这可以在 Windows 上完成,但需要做更多的工作,最好使用 Linux。

    【讨论】:

      【解决方案5】:

      事实上,没有 sip 堆栈会为您提供对任何特定编解码器的支持。编解码器集成始终像插件一样手动。

      有一些基于 sip 的开源项目,例如 csipsimple,其中集成了 G729 编解码器。如果您研究他们如何添加编解码器,那么您将能够在任何其他基于 sip 的框架中添加任何编解码器。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2010-09-15
        相关资源
        最近更新 更多