En juin 2017, Linphone Desktop 4 est sorti. Avec cela, ses auteurs Belledonne Communications sont passés de GTK + 2 à Qt 5.9 LTS (pour être plus précis: ils sont passés à QML avec Qt Quick Controls 2). De plus, ils ont ajouté la possibilité de télécharger un binaire prêt à l'emploi via Flatpak . Par conséquent, bien que les réponses précédentes étaient correctes à leur époque, elles ont changé:
a) Télécharger depuis Flatpak
sudo add-apt-repository ppa:alexlarsson/flatpak
sudo apt update
sudo apt install flatpak
flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
flatpak --user install --from https://linphone.org/flatpak/linphone.flatpakref
flatpak run com.belledonnecommunications.linphone --verbose
b) Construire à partir de la source
- opter pour Ubuntu 14.04 LTS, et / ou
- pour déboguer / contribuer à Linphone parce que vous êtes développeur, et / ou
- pour profiter des dernières fonctionnalités et corrections de bugs, et / ou
- pour obtenir plus de codecs vidéo et audio.
La variante via Flatpak vous donne comme codec vidéo juste VP8. Si vous vous construisez vous-même, MP4V-ES, H.263 et H.264 sont ajoutés. En tant que codecs audio, AMR, AMR-WB, iLBC, iSAC et SiLK sont ajoutés. De plus, en option, vous pouvez ajouter même G.726 et Codec 2. Cependant, à partir d'aujourd'hui, ces deux modules doivent être corrigés pour fonctionner avec d'autres implémentations VoIP / SIP (mauvaise endianité et mauvais débit binaire).
Pour vous compiler, vous avez besoin du framework Qt. Par conséquent, vous
a) optez pour l'installateur Qt, ou
b) optez pour Ubuntu 18.04 LTS et ses packages Qt 5.9 existants.
Étape 1a: Qt Installer
wget download.qt.io/official_releases/online_installers/qt-unified-linux-x64-online.run
chmod u+x ./qt-unified-linux-*.run
./qt-unified-linux-*.run
Dans l'installateur, vous allez pour Qt → Qt 5.9.x → Desktop. Lorsque vous définissez le PATH
et Qt5_DIR
, assurez-vous qu'il correspond à la version que vous avez téléchargée:
Qt5_DIR="~/Qt/5.9.9/gcc_64/lib/cmake"
PATH="~/Qt/5.9.9/gcc_64/bin/:$PATH"
Étape 1b: Paquets Qt
sudo apt install qt5-default qttools5-dev qttools5-dev-tools libqt5svg5-dev libqt5texttospeech5-dev qtdeclarative5-dev qtdeclarative5-dev-tools qtquickcontrols2-5-dev qml-module-qtquick-controls qml-module-qtquick-controls2 qml-module-qtquick-dialogs qml-module-qtqml-models2 qml-module-qtquick-templates2 qml-module-qt-labs-folderlistmodel qml-module-qt-labs-settings qml-module-qt-labs-platform
Comme indiqué ci-dessus, cela ne fonctionne qu'avec la dernière version d'Ubuntu. Pour les versions plus anciennes d'Ubuntu, j'opterais pour l'installateur Qt comme décrit dans la variante A. De plus, les commentaires dans le code source indiquent que Belledonne Communications ne s'en tient pas aux versions de support à long terme (LTS) mais va avoir besoin de la prochaine stable release, quand une après la prochaine branche stable a été publiée (par exemple, lorsque Qt 5.11 est sorti, Linphone peut déjà avoir besoin de Qt 5.10). Par conséquent, lorsque vous lisez cette réponse, cette alternative B pourrait déjà ne plus être une option.
Étape 2 pour Ubuntu 14.04 LTS
sudo apt install autoconf libasound2-dev build-essential libbsd-dev cmake3 curl doxygen git libglew-dev graphviz libtool default-jre-headless nasm libpcap-dev pkg-config python-pystache python-six libudev-dev libwww-perl libxv-dev yasm libpolarssl-dev libsqlite3-dev libxml2-dev libsrtp0-dev libgsm1-dev libopus-dev libspeexdsp-dev libavcodec-extra libavcodec-dev libswscale-dev libv4l-dev libvpx-dev libantlr3c-dev antlr3 xsdcxx libxerces-c-dev libspandsp-dev libopencore-amrnb-dev libopencore-amrwb-dev libvo-amrwbenc-dev
Étape 2 pour Ubuntu 16.04 LTS
sudo apt install autoconf libasound2-dev build-essential libbsd-dev cmake curl doxygen git libglew-dev graphviz libtool default-jre-headless nasm libpcap-dev pkg-config python3-distutils python3-pystache python3-six libudev-dev libwww-perl libxv-dev yasm libmbedtls-dev libsqlite3-dev libxml2-dev libsrtp0-dev libgsm1-dev libopus-dev libspeexdsp-dev libavcodec-extra libavcodec-dev libswscale-dev libv4l-dev libvpx-dev libantlr3c-dev antlr3 xsdcxx libxerces-c-dev libspandsp-dev libopencore-amrnb-dev libopencore-amrwb-dev libvo-amrwbenc-dev libcodec2-dev
Étape 2 pour Ubuntu 18.04 LTS
sudo apt install autoconf libasound2-dev build-essential libbsd-dev cmake curl doxygen git libglew-dev graphviz libtool default-jre-headless nasm libpcap-dev pkg-config python3-distutils python3-pystache python3-six libturbojpeg0-dev libudev-dev libwww-perl libxv-dev yasm libmbedtls-dev libsqlite3-dev libxml2-dev libsrtp2-dev libgsm1-dev libopus-dev libspeexdsp-dev libavcodec-extra libavcodec-dev libswscale-dev libv4l-dev libvpx-dev libantlr3c-dev antlr3 xsdcxx libxerces-c-dev libspandsp-dev libopencore-amrnb-dev libopencore-amrwb-dev libvo-amrwbenc-dev libcodec2-dev
Étape 3
git clone git://git.linphone.org/linphone-desktop --recursive
cd ./linphone-desktop
python3 prepare.py --use-system-dependencies --all-codecs --debug --list-cmake-variables -DENABLE_AMRWB=OFF -DENABLE_AMR=OFF -DENABLE_UNMAINTAINED=ON -DENABLE_JPEG=OFF
make
gdb ./OUTPUT/desktop/bin/linphone -ex 'run --verbose'
Dans Ubuntu 14.04 LTS, c'est parti python2
. Dans Ubuntu 18.04 LTS, vous pouvez supprimer le -DENABLE_JPEG=OFF
. Dans Ubuntu 19.10, vous devez patcher un fichier d'en-tête . À ce jour, plusieurs bogues sont dans l'implémentation AMR (-WB); il est donc désactivé ici.
Note latérale: Veuillez vérifier la valeur de quality_reporting_enabled
dans le fichier ~/.config/linphone/linphonerc
si elle reflète vos intérêts en matière de collecte de données et de confidentialité. Pour moi, un a 0
désactivé les données de télémétrie qui ont été envoyées à Belledonne Communications après chaque appel. Pourtant, je n'ai trouvé aucun moyen de modifier cette valeur via l'interface utilisateur graphique.