]> sjero.net Git - linphone/blob - README
Aac-eld add missing header according to RFC3640 3.3.6
[linphone] / README
1 This is Linphone, a free (GPL) video softphone based on the SIP protocol.
2
3
4 ******************Building linphone ***********************************
5
6 - Install build time dependencies
7         - libtool
8         - intltool
9
10 - you need at least:
11         - libosip2>=3.0.3
12         - libeXosip2>=3.0.3
13         - speex>=1.2.0 (including libspeexdsp part)
14         
15         + if you want the gtk/glade interface:
16                 - libgtk >=2.16.0
17         + if you want video support:
18                 - SDL>=1.2.10
19                 - libavcodec (ffmpeg) 
20                 - libswscale (part of ffmpeg too) for better scaling performance
21                 - libxv (x11 video extension)
22                - ligl1-mesa (OpenGL API -- GLX development files)
23                - libglew (OpenGL Extension Wrangler library)
24                - libv4l (Video for linux)
25                - libx11 (x11)
26                 - theora (optional)
27
28         + gsm codec (gsm source package or libgsm-dev or gsm-devel) (optional)
29         + libreadline (optional: for convenient command line in linphonec)
30         + libsoup (optional: for wizard - account creation assistant)
31         + libsqlite3 (optional : for a local history of messages)
32         + if you want uPnP support (optional):
33                 - libupnp (version 1.6 branch (not patched with 18-url-upnpstrings.patch))
34         
35         + Install srtp (optional) for call encryption :
36                 $ git clone git://git.linphone.org/srtp.git
37                 $ cd srtp && autoconf && ./configure && make
38                 $ sudo make install
39
40         + Install zrtpcpp (optional), for unbreakable call encryption
41                 $ sudo apt-get install cmake libssl-dev
42                 $ git clone git://git.linphone.org/zrtpcpp.git
43                 $ cd zrtpcpp && cmake -Denable-ccrtp=false . && make
44                 $ sudo make install
45
46 with their corresponding -dev or -devel package if you don't use source packages.
47
48 - Compile linphone
49
50  $ ./autogen.sh
51  $ ./configure 
52  $ sudo make install 
53  $ sudo ldconfig
54
55 - Command line for Ubuntu && Debian 
56
57         $ sudo apt-get install libtool intltool libgtk2.0-dev libosip2-dev libexosip2-dev libspeexdsp-dev libavcodec-dev libswscale-dev libx11-dev libvx-dev ligl1-mesa-dev libglew-dev libv4l-dev
58
59         + for optional library
60         $ sudo apt-get install libreadline-dev liggsm1-dev libtheora-dev libsoup2.4-dev libsqlit3-dev libupnp6-dev 
61  
62
63 For windows compilation see README.mingw.
64 For macOS X, see README.macos
65
66
67 ******************************** notes for developers: *****************************
68
69 Here is a short description of the content of the source tree.
70
71 - oRTP/ is a poweful implementation of the RTP protocol. See the oRTP/README for more details. 
72         It is used by the mediastreamer to send and receive streams to the network.
73
74 - mediastreamer2/ is one of the important part of linphone. It is a framework library for audio 
75         and video processing. It contains several objects for grabing audio and video and outputing
76         it (through rtp, to file).
77         It contains also codec objects to compress audio and video streams.
78   The mediastream.h files contain routines to easyly setup audio streams.
79
80 - coreapi/ is the central point of linphone, which handles relationship between sip signalisation and media
81   streaming. It contains an easy to use api to create a sip phone.
82
83 - gtk/  is the directory that contains the gui frontend of linphone. It uses all libraries descibed above.
84
85 - console/
86         * linphonec.c is the main file for the console version of linphone.
87         * sipomatic.c / sipomatic.h contains the code for sipomatic, the test program that auto-answer to linphone calls.
88         * shell.c (program name: linphonecsh) is a small utilities to send interactive commands to a running linphonec daemon.
89                 
90 - share/ contains translation, documentation, rings and hello sound files.
91