http://www.linphone.org/eng/documentation/dev/
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+/glade interface
- The console interface (linphonec, linphonecsh)
- The iPhone application built in objective C
- The Android application running in java
- Liblinphone, the core engine: this is the library that implements all the fonctionnalities of linphone. Liblinphone is a powerfulSIP 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 calls.
Liblinphone relies on the following software components:- mediastreamer2, a powerfull multimedia SDK to make audio/video streaming and processing.
- oRTP, a simple RTP library.
- eXosip2, the SIP user agent library, based on libosip2
Liblinphone and all its dependencies are written in pure C.
Audio tunables and configuration file options
Linphone can be adapted to a variety of hardware platforms, not only PCs. A wide range of options is available to allow improving the audio quality for a target platform or environment.Read this document for information about these possibilities.