linphone整体结构

linphone整体结构_第1张图片
Linphone学习目标

Description

Linphone is an open source SIP Phone, available on mobile and desktop environments (iOS, Android, Windows Phone 8, GNU/Linux, Windows Desktop, MAC OSX) and on web browsers.
Linphone has inside a separation between the user interfaces and the core engine, allowing to create various kinds of user interface on top of the same functionalities.
The user interface frontends:Gtk+ interface for windows, mac and GNU/Linux
The console interface (linphonec, linphonecsh)
The iPhone application built in objective C
The Android application running in java
The Windows Phone application written in C#

Liblinphone, the core engine: this is the library that implements all the functionalities of Linphone.Liblinphone is a powerful SIP VoIP video SDK that anyone can use to add audio or video call capabilities to an application. It provides a high level api to initiate, receive, terminate audio & video calls.
Liblinphone relies on the following software components:Mediastreamer2, a powerful multimedia SDK to make audio/video streaming and processing.
oRTP, a simple RTP library.
belle-sip the SIP library.

Liblinphone and all its dependencies are written in pure C.

linphone整体结构_第2张图片
Architecture

上图是最新的官方网站提出来的架构图,具有很高的价值。

linphone整体结构_第3张图片
Architecture

这张图是linphone3.3.2的架构图,

linphone整体结构_第4张图片
系统运行框图

这张图是系统运行框图,新版本跟老版本应该不会有太大的变化,毕竟已经是很多年的老程序了,应该是通用的。

linphone中各个模块的说明:

  1. Callback模块
  2. Genera_stat模块:
  3. Address模块
  4. Authorization模块
  5. Chat模块
  6. Friends模块
  7. Configure模块
  8. Offer_answer模块
  9. Presence模块
  10. Proxy模块
  11. Sql模块
  12. Core模块
linphone整体结构_第5张图片
几个关键数据结构之间的关系

底层模块

  1. Mediastream
  2. ortp
linphone整体结构_第6张图片
linphone中数据结构说明

你可能感兴趣的:(linphone整体结构)