Linphone架构及功能分析

Linphone是一款开源基于SIP协议的语音视频电话软件,可移植到移动端Android、IOS、WindowsPhone8,桌面系统包括GNU/Linux、Windows、Mac,以及Web浏览器;Linphone目前分离了核心引擎和上层用户界面,允许创建多种相同功能的用户界面;Linphone开放的接口包括,GTK+接口面向Windows、Linux和Mac;控制台接口(linphonec,linphonecsh);Object-C编写的IOS程序;Java编写的Android程序;C#编写的WindowsPhone程序;

Linphone的核心库liblinphone实现语音视频通话的全部功能,liblinphone是一个强大的基于SIP的VOIP视频SDK,可以将语音视频通话功能添加到一个应用程序中,它提供了一个更高级别的API来初始化、接收和终止音视频通话。liblinphone依赖于多媒体音视频流处理库Mediastreamer2,基于RTP协议的oRTP库,基于SIP协议的belle-sip库;Linphone及其所有的依赖关系都是纯C代码编写的。

Linphone架构:

Linphone架构及功能分析_第1张图片

liblinphone即高级库整合了所有SIP视频通话功能到一个易于调用的API中,包含RTP传输音视频,音视频的编解码,信令的路由电话,铃声以及接挂电话等。

Mediastreamer2是一个功能强大的轻量级流引擎专门用于语音/视频电话应用。
这个开源库负责接收和发送多媒体流的方法,包括语音/视频的采集、编码和解码,并绘制。

oRTP模块是一个基于RFC3550标准的rtp传输协议实现的库。

belle-sip是一个面向SIP栈的C对象数据实体。




你可能感兴趣的:(Linphone)