在Android VOIP应用程序中集成任何编解码器

时间:2016-06-10 09:02:16

标签: android voip skype speex opus

我正在开发一个不需要在PSTN上运行的android voip应用程序。我完全是这个领域的新手,我们将不胜感激。

我开始研究whatsapp语音呼叫是如何工作的,并发现它使用的是PJSIP,这是一个开源的SIP协议栈库(来源:What's up with WhatsApp and WebRTC? - webrtcHacks)。我还发现编解码器在voip中用于压缩然后解压缩voip数据包。

知道我对那些sip库和编解码器非常感兴趣。一个android voip应用程序必须有实现sip库吗?每个sip库都支持一些编解码器。

我是否有任何通用格式可以在我的Android应用程序中集成任何编解码器,无论是OPUS还是Speex,还是类似于独立于sip实现的那些?

可能我听起来太混乱,但事实确实如此。即使在谷歌上搜索这个特定主题并没有帮助我,我的最后一站是这个社区。任何小指导都将不胜感激。

1 个答案:

答案 0 :(得分:0)

是的,通常每个应用程序都会自己实现编解码器。 Android SDK中提供了一些编解码器,但即使在这些情况下,正确的实现也会更好。

G.711(PCMU和PCMA)非常简单,可以在一个java类中实现(如果愿意,甚至可以在单个函数中实现)。其他的更复杂,但你可以找到几乎每一个的开源实现。

另请注意,编解码器也在PJSIP中实现,因此如果您使用此库,那么您已经拥有了最流行的编解码器。