Im Juni 2017 wurde Linphone Desktop 4 veröffentlicht. Damit wechselten die Autoren Belledonne Communications von GTK + 2 zu Qt 5.9 LTS (genauer gesagt: Sie wechselten mit Qt Quick Controls 2 zu QML). Darüber hinaus wurde die Möglichkeit hinzugefügt , eine gebrauchsfertige Binärdatei über Flatpak herunterzuladen . Obwohl die vorherigen Antworten zu ihrer Zeit korrekt waren, änderten sie sich daher:
a) Download von 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) Aus der Quelle erstellen
- für Ubuntu 14.04 LTS und / oder
- zu debuggen / zu Linphone beizutragen, weil Sie ein Entwickler sind, und / oder
- um die neuesten Funktionen und Fehlerbehebungen zu genießen und / oder
- um mehr Video- und Audio-Codecs zu erhalten.
Die Variante über Flatpak gibt Ihnen als Video-Codec nur VP8. Wenn Sie selbst bauen, werden MP4V-ES, H.263 und H.264 hinzugefügt. Als Audio-Codecs werden AMR, AMR-WB, iLBC, iSAC und SiLK hinzugefügt. Optional können Sie sogar G.726 und Codec 2 hinzufügen. Ab heute müssen diese beiden Module jedoch gepatcht werden, um mit anderen VoIP / SIP-Implementierungen (falsche Endianness und falsche Bitrate) zu arbeiten.
Um sich selbst zu kompilieren, benötigen Sie das Qt Framework. Daher entscheiden Sie sich
a) für das Qt-Installationsprogramm oder
b) für Ubuntu 18.04 LTS und die vorhandenen Qt 5.9-Pakete.
Schritt 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
Im Installationsprogramm wählen Sie Qt → Qt 5.9.x → Desktop. Stellen Sie beim Festlegen des PATH
und Qt5_DIR
sicher, dass es mit der heruntergeladenen Version übereinstimmt:
Qt5_DIR="~/Qt/5.9.9/gcc_64/lib/cmake"
PATH="~/Qt/5.9.9/gcc_64/bin/:$PATH"
Schritt 1b: Qt-Pakete
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
Wie oben erwähnt, funktioniert dies nur mit dem neuesten Ubuntu. Für ältere Ubuntu-Versionen würde ich mich für den Qt-Installer entscheiden, wie in Alternative A beschrieben. Darüber hinaus weisen Kommentare im Quellcode darauf hin , dass Belledonne Communications sich nicht an LTS-Versionen (Long Term Support) hält, sondern den nächsten Stable benötigt Release, wenn einer nach dem nächsten stabilen Zweig freigegeben wurde (wenn beispielsweise Qt 5.11 freigegeben wird, benötigt Linphone möglicherweise bereits Qt 5.10). Wenn Sie diese Antwort lesen, ist diese Alternative B möglicherweise bereits keine Option mehr.
Schritt 2 für 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
Schritt 2 für 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
Schritt 2 für 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
Schritt 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'
In Ubuntu 14.04 LTS entscheiden Sie sich für python2
. In Ubuntu 18.04 LTS können Sie das entfernen -DENABLE_JPEG=OFF
. In Ubuntu 19.10 müssen Sie eine Header-Datei patchen . Bis heute gibt es mehrere Fehler in der AMR (-WB) -Implementierung. deshalb ist es hier deaktiviert.
Randnotiz: Bitte überprüfen Sie den Wert quality_reporting_enabled
in der Datei noch einmal, ~/.config/linphone/linphonerc
ob er Ihre Datenerfassungs- und Datenschutzinteressen widerspiegelt. Für mich 0
deaktiviert ein die Telemetriedaten, die nach jedem Anruf an Belledonne Communications gesendet wurden. Ich habe jedoch keine Möglichkeit gefunden, diesen Wert über die grafische Benutzeroberfläche zu ändern.