En junio de 2017, se lanzó Linphone Desktop 4. Con eso, sus autores Belledonne Communications cambiaron de GTK + 2 a Qt 5.9 LTS (para ser más precisos: cambiaron a QML con Qt Quick Controls 2). Además, agregaron la posibilidad de descargar un binario listo para usar a través de Flatpak . Por lo tanto, aunque las respuestas anteriores eran correctas en su momento, cambiaron:
a) Descargar desde 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) Construir desde la fuente
- ir para Ubuntu 14.04 LTS, y / o
- depurar / contribuir a Linphone porque eres un desarrollador, y / o
- para disfrutar de las últimas funciones y correcciones de errores, y / o
- para obtener más códecs de video y audio.
La variante a través de Flatpak le ofrece como códec de video solo VP8. Si construye usted mismo, se agregan MP4V-ES, H.263 y H.264. Como códecs de audio, se agregan AMR, AMR-WB, iLBC, iSAC y SiLK. Además, opcionalmente, puede agregar incluso G.726 y Codec 2. Sin embargo, a partir de hoy, esos dos módulos deben ser parcheados para funcionar con otras implementaciones de VoIP / SIP (endianness y velocidad de bits incorrectas).
Para compilarse, necesita el Marco Qt. Por lo tanto,
a) opta por el instalador Qt, o
b) opta por Ubuntu 18.04 LTS y sus paquetes Qt 5.9 existentes.
Paso 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
En el instalador, vaya a Qt → Qt 5.9.x → Escritorio. Cuando configure el PATH
y Qt5_DIR
, asegúrese de que coincida con la versión que descargó:
Qt5_DIR="~/Qt/5.9.9/gcc_64/lib/cmake"
PATH="~/Qt/5.9.9/gcc_64/bin/:$PATH"
Paso 1b: paquetes 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
Como se señaló anteriormente, esto solo funciona con el último Ubuntu. Para versiones anteriores de Ubuntu, optaría por el instalador Qt como se describe en la alternativa A. Además, los comentarios en el código fuente indican que Belledonne Communications no se apega a las versiones de soporte a largo plazo (LTS) sino que requerirá la próxima versión estable lanzamiento, cuando se lanzó uno después de la próxima rama estable (por ejemplo, cuando se lanza Qt 5.11, Linphone podría requerir Qt 5.10 ya). Por lo tanto, cuando lea esta respuesta, esta alternativa B podría ya no ser una opción.
Paso 2 para 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
Paso 2 para 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
Paso 2 para 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
Paso 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'
En Ubuntu 14.04 LTS, vas por python2
. En Ubuntu 18.04 LTS, puede eliminar el -DENABLE_JPEG=OFF
. En Ubuntu 19.10, debe parchear un archivo de encabezado . A partir de hoy, hay varios errores en la implementación de AMR (-WB); por lo tanto, está deshabilitado aquí.
Nota al margen: Por favor, verifique dos veces el valor quality_reporting_enabled
en el archivo ~/.config/linphone/linphonerc
si refleja su recopilación de datos e intereses de privacidad. Para mí, 0
deshabilité los datos de telemetría que se enviaron a Belledonne Communications después de cada llamada. Sin embargo, no encontré ninguna forma de cambiar ese valor a través de la interfaz gráfica de usuario.