在Android平台中,Voip客户端的开源项目有Sipdroid、IMSdroid、CSipSimple、Linphone等,现对它们做一个比较,如下: 关系 \ 客户端 | Sipdroid | IMSdroid | CSipSimple | Linphone | 协议 | sip | 3GPP IMS |
pjsip
| osip | 工具语言 | Java(架构) C++(编码) | Java(UI) C++(架构,编码) | Java(UI) C++(架构,编码) | Java C++ | 音频/视频 | 音频/视频(低、中、高标准) 有回音 有噪音 音质优化效果一般 视频效果一般。 | 音频/视频(低、中、高标准) 音质好(具备消除噪音、消除回音功能),视频效果不错。 | 音频/视频(0-10标准) 音质好(具备消除噪音、消除回音功能),视频效果不错、具有音频、视频频率采集、聚焦等操作。 | 音频/视频 音质好(具备消除噪音、消除回音功能),视频效果不错。 | 音频/视频解编码器 | BV、GSM、speex、PCMU、PCMA、G722H、silk等。 | H.263++ H263+ H.263 H264-MP H264-BP Theora MP4V-ES VP8 G.729 G.722 Speex-UWB Speex-WB Speex-NB iLBC GSM PCMU PCMA等。 | H.263、H264、G729、iLBC 、speex、silk等……,解码器作为插件使用。 | G722、GSM、arm、ilbc、speex、PCMU、PCMA、G722H、silk、vp8、h264、mpeg4等……。 | Stun/Turn技术 | 仅支持Stun | 支持 | 支持 | 支持 | 认证 | TLS加密 | TLS加密 srtp加密 rtcp加密 | 支持 TLS加密 srtp加密 rtcp加密 | | ICE技术 | 无 | 支持 | 支持 | 支持 | Webrtc技术 | 无 | 支持 | 支持 | 支持 | Qos技术 | 无 | 支持 | 支持 | | 即时消息(在线、短信) | 无 | 支持 | 支持 | 支持 | 多个电话 | 无 | 支持 | 支持 | | 优缺点 | 优点:轻量级架构,结构简单易懂。 缺点:功能单一。
| 优点:具备VOIP各个功能,可直接使用。 缺点:库比较大。
| 优点:架构清晰,具备VOIP各个功能。 缺点:内存溢出(可忽略)。
| 优点:支持各种平台,技术成熟。 缺点:不知道。 |
针对这四款项目如何选择呢?因要求而异,笔者的推荐顺序如下: 首先:CSipsimple 其次:IMSdroid 最后:Sipdroid
笔者未研究Linphone项目,在此不对它做评价。
|