我是这个领域的新手…我需要为Android创建SIP客户端…我在开发人员的网站上进行了演示,并创建了一些可以运行的应用程序.现在,我需要找到某种方式来更改音频编解码器…默认编解码器为g711 …如何更改它???您能提供一些说明,代码或教程吗???感谢您的任何帮助…在此先感谢…
在本课程中,我找不到任何可以帮助我的东西:http://developer.android.com/reference/android/net/sip/package-summary.html
解决方法:
G711实际上是PCM编解码器的另一个名称,它具有2种压缩算法(相同的压缩率)-被称为PCMA和PCMU.这些是最标准,使用最广泛的音频编解码器,几乎所有Sip Server都可以直接使用它们.例如,它们很老,与Speex相比压缩效果不佳.
通过SDP协议在INVITE消息中协商SIP通信中的音频编解码器.
更改音频编解码器将需要执行以下步骤:
具有音频编解码器的实现.
在您的sip客户端中(在应用程序级别)合并此编解码器.高级别的发言-您具有网络层(最有可能是UDP),而不是数据层(用于处理RTP数据包)和SIP消息.
您需要一种将RTP数据包连接到要使用的音频编解码器的机制.
另一方面,您需要使用SDP协议与所有参与者协商音频编解码器.
有一些示例,例如:imsdroid,csipsimple,sipdroid等,但是它们使用外部sip-stack实现(doubango,mjsip). AFAIK Android的Sip-stack目前还不是很通用.