【问题标题】:Questions for VoIP app development (SIP etc.)VoIP 应用程序开发问题(SIP 等)
【发布时间】:2013-01-22 16:30:11
【问题描述】:

我正在寻找有关为 Android 开发 VoIP 应用程序的一般建议(技术、最佳实践等)。已经发布了类似的问题,但我包括了具体问题。

我做了相当多的研究,发现有几种可能的解决方案(当然我知道 SDK 中的 SIP 堆栈(还包括语音传输),但由于它在大多数设备上不可用,所以我不知道'不打算使用它。另外,我阅读了有关 Adob​​e Flex 实现的信息,但我想坚持使用本机)。

让我印象深刻的是:

  • 使用 SIP 启动会话(服务器存在)。在消息中使用 SDP 来描述会话。

  • 建立 p2p 连接(防火墙/路由可能有问题 - 可以使用 STUN - 可能涉及 DNS)

  • 进行实际传输,我相信所涉及的数据包/协议是(有效载荷)在 -> RTP in -> UDP in -> IP。

目前这似乎很复杂,所以我的第一个问题是:

1) 这是标准方法吗?这是最佳实践吗?我得到一些提示,相反,MSRP 可用于传输内容,但我读到它仅适用于 IM、文件等。

2) 我应该使用哪个 SIP 堆栈以获得最佳结果/性能?我可以使用 Java/Eclipse 进行开发。我想选择 JSIP(或 tinysip,基于 jsip),但不确定。

3) 请给我一些关于如何在 Java for Android (RTP) 中实现数据传输的提示

最后一点,我一点也不排斥 pjsip。我认为它实际上可能更快,因为它使用 NDK (我可以切换到 C++,np) 。我还读到它已经包含音频/视频传输。 我只是不知道它的使用和扩展有多容易,它到底有多好。如果你用过,请告诉我!

谢谢。

PS:虽然不紧急或不确定,但便携性可能是未来的一个重要因素。 在不久的将来我也需要视频传输。

【问题讨论】:

  • 请根据您的经验给出答案。如果您提出一个框架,请说明它的稳定性、可靠性、可移植性、易于学习/文档等。请尽可能使用论据(最好根据您自己的经验)来证明为什么要选择它。

标签: android sip voip rtp


【解决方案1】:

您应该查看 IMSDROID 项目。它使用 C 语言编写的 Doubango 框架,具有高度可移植性。更重要的是,它也是开源的,因此您可以使用他们的代码并可能为社区做出贡献。

http://code.google.com/p/imsdroid/

干杯:)

【讨论】:

    【解决方案2】:

    看看teamSpeak。他们提供原生 sdk-s。但它们不是免费的。 这不是 P2P,需要服务器(至少据我所知) 可能值得一分钟。 http://www.teamspeak.com/?page=teamspeak3sdk

    【讨论】:

    • 我确实看过了。人们此时在他们的论坛上抱怨他们自己的 Android 应用程序。快速浏览也给我的印象是它不能连接到任何 voip 服务器,而只能连接到 teampeak 服务器。
    • 你是对的,他们提供了扩展语音聊天应用程序的解决方案。安卓应用程序确实有问题,主要是用户体验很糟糕。带宽、cpu使用率不错,延迟低,质量也还行。
    【解决方案3】:

    编写您自己的 SIP 堆栈需要几个月的时间,而且只有基本功能。 我建议使用现有的 sip 堆栈。有几个开源讨论here

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-11-05
      相关资源
      最近更新 更多