Linphone: VoIP telephony tools for many platforms (Windows, Mac OS, Android), based on standard SIP protocols.
Linphone on the Linphone-android:android platform.
Part of the Linphone-android project is the Java implementation of the functional framework, and the other part is the JNI implementation of the Linphone dynamic library.
The learning process can be divided into two steps:
(1) Familiar with Java layer framework;
(2) Read the C source code of Linphone Dynamic Library.
The environment configuration can be divided into three parts:
(1) Download already compiled Linphone-android project, import Eclispe reading;
(2) Download the non-compiled source code from Linphone website or GitHub and compile it into a running Android application under Linux;
(3) Download the C source of the Linphone library, select the environment (such as source Insight?) and read.
Dry source can be divided into four parts:
(1) Java layer Framework implementation of the SIP layer Three protocol architecture: Transport layer, transaction layer, grammar codec layer
(2) Linphone Dynamic Library C source implementation of the SIP function: registration, request, request timeout, invite session, hang up the phone, invite video, send and receive SMS ...
(3) Linphone Dynamic library C source code realization of audio and video codec function
(4) Audio and video capture on Android platform, playback function
Linphone Learning on the Android platform (i)