No description
Find a file
2013-08-08 11:36:49 +02:00
build Updated ms2 and android build to use renamed ffmepg libraries 2013-07-17 14:20:57 +02:00
console Fix bug report 2013-05-07 11:49:54 +02:00
coreapi Upnp: add blacklisted state 2013-08-08 11:36:49 +02:00
gtk Secure code and fix memory leak. 2013-07-02 13:18:57 +02:00
intl purge out p2pproxy 2010-01-20 15:44:30 +01:00
java Upnp: add blacklisted state 2013-08-08 11:36:49 +02:00
m4 fix exosip dscp api detection 2013-03-20 12:36:13 +01:00
mediastreamer2@6c2a608800 Add uPnP blacklist 2013-08-07 11:35:32 +02:00
oRTP@49b16793b9 Improve configure scripts (test xxd, force broken srtp). 2013-07-01 11:26:48 +02:00
pixmaps Fix UI feedbacks : 2013-04-26 10:51:14 +02:00
po Update Czech translation 2013-05-07 09:28:22 +02:00
scripts generate rootca.pem at compilation time using mk-ca-bundle.pl from curl which gather trusted certificates from modizilla 2013-05-31 12:03:12 +02:00
share generate rootca.pem at compilation time using mk-ca-bundle.pl from curl which gather trusted certificates from modizilla 2013-05-31 12:03:12 +02:00
tools Improve tools 2013-02-06 10:22:01 +01:00
.cproject better eclispe discovery 2012-07-17 18:58:34 +02:00
.gitignore Tunnel manager. 2011-12-16 10:43:30 +01:00
.gitmodules merge from tunnel branch 2012-01-30 23:50:28 +01:00
.project better eclispe discovery 2012-07-17 18:58:34 +02:00
ABOUT-NLS purge out p2pproxy 2010-01-20 15:44:30 +01:00
AUTHORS ready for release 2011-02-02 22:24:11 +01:00
autogen.sh remove i18n things that belong to mediastreamer2, update french and norwegian languages 2011-04-05 21:23:57 +02:00
BUGS purge out p2pproxy 2010-01-20 15:44:30 +01:00
ChangeLog purge out p2pproxy 2010-01-20 15:44:30 +01:00
config.rpath purge out p2pproxy 2010-01-20 15:44:30 +01:00
configure.ac Fix configure.ac debug_enabled enable_debug mixup 2013-08-07 10:32:46 +02:00
COPYING purge out p2pproxy 2010-01-20 15:44:30 +01:00
gen-gtkfilelist.sh Update gen-gtkfilelist.sh script. 2013-07-02 14:58:58 +02:00
gtk+-2.16.2.filelist purge out p2pproxy 2010-01-20 15:44:30 +01:00
gtk+-2.16.6.filelist purge out p2pproxy 2010-01-20 15:44:30 +01:00
gtk+-2.18.5.filelist purge out p2pproxy 2010-01-20 15:44:30 +01:00
gtk+-2.22.1.filelist fix and update windows mingw build 2011-01-06 15:54:19 +01:00
linphone-deps.filelist Add zrtp dll in linphone-deps 2013-05-28 15:20:31 +02:00
linphone.iss.in Add linphone icon to uninstaller icon 2012-04-24 10:16:31 +02:00
linphone.spec.in fix linphone-devel mediastream-devel dependency 2012-03-27 16:19:45 +02:00
Makefile.am fix for new version of pango in macports. 2013-03-06 16:47:48 +01:00
NEWS fix memory leak with some camera on windows (mainly) 2013-06-17 14:33:21 +02:00
README update README 2013-06-28 10:17:05 +02:00
README.arm purge out p2pproxy 2010-01-20 15:44:30 +01:00
README.M68k.txt purge out p2pproxy 2010-01-20 15:44:30 +01:00
README.macos improve documentation of macos x compilation, especially regarding generating bundle compatible with older macos version. 2013-06-18 18:39:44 +02:00
README.mingw Update README.mingw for sqlite3 building 2013-05-24 16:18:11 +02:00
README.zrtp API and makefiles for ZRTP support. 2011-07-15 22:03:24 +02:00
stamp-h.in purge out p2pproxy 2010-01-20 15:44:30 +01:00
TODO add new command to set fps of static picture 2010-09-03 15:41:15 +02:00

This is Linphone, a free (GPL) video softphone based on the SIP protocol.


******************Building linphone ***********************************

- Install build time dependencies
	- libtool
	- intltool

- you need at least:
 	- libosip2>=3.5.0
	- libeXosip2>=3.5.0
	- speex>=1.2.0 (including libspeexdsp part)
	
	+ if you want the gtk/glade interface:
		- libgtk >=2.16.0
	+ if you want video support:
		- libvpx (VP8 codec)
		- libavcodec (ffmpeg) 
		- libswscale (part of ffmpeg too) for better scaling performance
		- libxv (x11 video extension)
		- ligl1-mesa (OpenGL API -- GLX development files)
		- libglew (OpenGL Extension Wrangler library)
		- libv4l (Video for linux)
		- libx11 (x11)
		- theora (optional)
	+ gsm codec (gsm source package or libgsm-dev or gsm-devel) (optional)
	+ libreadline (optional: for convenient command line in linphonec)
	+ libsoup (optional: for wizard - account creation assistant)
	+ libsqlite3 (optional : for a local history of chat messages)
	+ if you want uPnP support (optional):
		- libupnp (version 1.6 branch (not patched with 18-url-upnpstrings.patch))

	Here is the command line to get these dependencies installed for Ubuntu && Debian 

	$ sudo apt-get install libtool intltool libgtk2.0-dev libosip2-dev libexosip2-dev libspeexdsp-dev libavcodec-dev libswscale-dev libx11-dev libvxl1-dev libgl1-mesa-dev libglew1.6-dev libv4l-dev

	+ for optional library
	$ sudo apt-get install libreadline-dev libgsm1-dev libtheora-dev libsoup2.4-dev libsqlite3-dev libupnp4-dev 
	
	+ Install srtp (optional) for call encryption :
		$ git clone git://git.linphone.org/srtp.git
 		$ cd srtp && autoconf && ./configure && make
 		$ sudo make install

	+ Install zrtpcpp (optional), for unbreakable call encryption
 		$ sudo apt-get install cmake libssl-dev
 		$ git clone git://git.linphone.org/zrtpcpp.git
		$ cd zrtpcpp && cmake -Denable-ccrtp=false . && make
 		$ sudo make install


- Compile linphone

 $ ./autogen.sh
 $ ./configure 
 $ make && sudo make install 
 $ sudo ldconfig



For windows compilation see README.mingw.
For macOS X, see README.macos


******************************** notes for developers: *****************************

Here is a short description of the content of the source tree.

- oRTP/ is a poweful implementation of the RTP protocol. See the oRTP/README for more details. 
	It is used by the mediastreamer to send and receive streams to the network.

- mediastreamer2/ is one of the important part of linphone. It is a framework library for audio 
	and video processing. It contains several objects for grabing audio and video and outputing
	it (through rtp, to file).
	It contains also codec objects to compress audio and video streams.
  The mediastream.h files contain routines to easyly setup audio streams.

- coreapi/ is the central point of linphone, which handles relationship between sip signalisation and media
  streaming. It contains an easy to use api to create a sip phone.

- gtk/	is the directory that contains the gui frontend of linphone. It uses all libraries descibed above.

- console/
	* linphonec.c is the main file for the console version of linphone.
	* sipomatic.c / sipomatic.h contains the code for sipomatic, the test program that auto-answer to linphone calls.
	* shell.c (program name: linphonecsh) is a small utilities to send interactive commands to a running linphonec daemon.
		
- share/ contains translation, documentation, rings and hello sound files.