No description
Find a file
2017-06-13 15:05:37 +02:00
.tx
build add info.plist to linphone framework for ios 2017-06-06 12:12:05 +02:00
cmake Fix LinphoneConfig.cmake.in. 2017-04-21 15:06:46 +02:00
console Fix deprecation warnings. 2017-03-20 11:15:26 +01:00
coreapi Add missing symbol export. 2017-06-13 15:05:37 +02:00
daemon LinphoneCallStats is now a belle_sip_object. BREAKS BINARY COMPATIBILITY 2017-04-19 16:17:51 +02:00
gtk Use of BCTBX_NO_BREAK instead of LINPHONE_NO_BREAK 2017-05-31 15:25:47 +02:00
include feat(core): wrap linphone_core_video_supported in C++ 2017-06-12 14:16:27 +02:00
intl
java Add get_in_call_timeout to JNI 2017-06-06 12:03:55 +02:00
m4
pixmaps
po fix make distcheck 2017-02-01 14:22:12 +01:00
scripts
share add sip/sip-linphone mimeType 2017-06-07 17:36:36 +02:00
tester fix crash again 2017-06-13 14:34:16 +02:00
tools Build lp-test-ecc tool with CMake 2017-06-06 11:40:15 +02:00
wrappers Fix crash in StringUtilities::cStringArrayToCppList() with NULL as argument 2017-06-12 14:45:30 +02:00
.clang-format
.cproject
.git-pre-commit
.gitignore
.project
ABOUT-NLS
AUTHORS
autogen.sh
BUGS
ChangeLog
CMakeLists.txt Handle check for update. 2017-06-05 15:47:37 +02:00
config.h.cmake Handle check for update. 2017-06-05 15:47:37 +02:00
config.rpath
configure.ac LinphoneCallStats is now a belle_sip_object. BREAKS BINARY COMPATIBILITY 2017-04-19 16:17:51 +02:00
COPYING
gen-gtkfilelist.sh
gtk+-2.16.2.filelist
gtk+-2.16.6.filelist
gtk+-2.18.5.filelist
gtk+-2.22.1.filelist
gtk+-2.24.8.filelist
linphone-deps.filelist
linphone.iss.in
linphone.spec.in Remove lp-gen-wrapper from the RPM spec file 2017-04-07 09:08:36 +02:00
Makefile.am Rename README into README.md 2017-02-24 14:48:52 +01:00
NEWS v3.11.1 2017-03-02 14:55:12 +01:00
README.arm
README.M68k.txt
README.macos.md
README.md Update README.md 2017-02-24 15:17:01 +01:00
README.mingw
stamp-h.in
TODO

Linphone

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

WARNING: Unless you exactly know what you are doing, you should take at look at linphone-desktop[1].

Building Linphone

Required dependencies

  • BcToolbox[2]: portability layer
  • BelleSIP[3]: SIP stack
  • Mediastreamer2[4]: multimedia engine
  • libxml2
  • zlib
  • libsqlite3: user data storage (disablable)
  • libnotify: system notification (GNU/Linux only;disablable)
  • libgtk2: graphical interface (disablable)
  • gettext and libintl: internationalization support (disablable)

Opitonal dependencies

  • Belcard[5]: VCard support
  • gtkmacintegration: integration with MacOSX menu

Build instructions

cmake . -DCMAKE_INSTALL_PREFIX=<prefix> -DCMAKE_PREFIX_PATH=<search_prefixes>

make
make install

Supported build opitons

  • CMAKE_INSTALL_PREFIX=<string> : install prefix
  • CMAKE_PREFIX_PATH=<string> : column-separated list of prefixes where to search for dependencies
  • ENABLE_SHARED=NO : do not build the shared library
  • ENABLE_STATIC=NO : do not build the static library
  • ENABLE_STRICT=NO : build without strict compilation flags (-Wall -Werror)
  • ENABLE_DOC=NO : do not generate the reference documentation of liblinphone
  • ENABLE_GTK_UI=NO : do not build the GTK user interface
  • ENABLE_UNIT_TESTS=NO : do not build testing binaries
  • ENABLE_VCARD=NO : disable VCard support
  • ENABLE_SQLITE_STORAGE=NO : disable SQlite user data storage (message, history, contacts list)
  • ENABLE_TOOLS=NO : do not build tool binaries
  • ENABLE_NLS=NO : disable internationalization
  • ENABLE_ASSISTANT=NO : disable account creation wizard

Note for packagers

Our CMake scripts may automatically add some paths into research paths of generated binaries. To ensure that the installed binaries are striped of any rpath, use -DCMAKE_SKIP_INSTALL_RPATH=ON while you invoke cmake.

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 mediastreamer2 to send and receive streams to the network.

  • mediastreamer2/ is one of the important part of linphone. It is a framework 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.