Linphone: 适用于很多平台(Windows, Mac OS, Android)的VOIP电话工具, 基于标准SIP协议.

Linphone-android: Android平台上的Linphone.

Linphone-android的工程中,一部分是Java实现的功能框架,另一部分是JNI实现的linphone动态库.

学习过程可以分两步:

(1)熟悉Java层框架;

(2)阅读linphone动态库的C源码.

环境配置可以分三部分:

(1)下载已经编译好的Linphone-android工程,导入Eclispe阅读;

(2)从Linphone官网或者 github上下载未经过编译的源码,在Linux下自己编译成可运行的Android应用;

(3)下载Linphone库的C源码,选择环境(如Source Insight?)并阅读.

源码干货可以分四部分:

(1)Java层框架实现的SIP三层协议架构: 传输层,事务层,语法编解码层

(2)linphone动态库C源码实现的SIP功能: 注册,请求,请求超时,邀请会话,挂断电话,邀请视频,收发短信...

(3)linphone动态库C源码实现的音视频编解码功能

(4)Android平台上的音视频捕获,播放功能

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐