write.as

VOICE Scheduled Testing Session #4

Sunday 9 November, 2019, 12:00 UTC

Candidate: Linphone

Previous Session: Test Session #3

Comments by: @strypey@mastodon.nzoss.nz

EDIT: the comments on the Windows app have been corrected thanks to some feedback from Naughtylus :)

VOICE (VOICE Organized Investigation of Chat Engines) is an informal app testing group, trialing free code apps to see how well they handle voice chat, especially with groups. We aim to have a group chat testing session at least once a month, usually during the weekend, although other times can be set up if anyone is keen. We currently use a Matrix room to confirm the timing of testing sessions, as well as for discussion about available apps and related topics: #voicechat:matrix.org

For our fourth testing session we had only two testers, one in Europe, and one in China. Both testing with desktop GNU/Linux and an Android/Linux mobile device. We had decided to test Linphone, which began as a desktop voice calling app for GNU/Linux (thus the name; Lin[ux]phone) that works by connecting to a SIP server. As the project evolved, it has developed mobile versions, added video chat, and more recently text-based instant messaging too, all using the SIP protocol.

As far as I understand how SIP works, we would have been able to chat to each other using accounts on different SIP servers. But for the purposes of this test, we used SIP accounts provided by linphone.org, to ensure that unusual compatibility issues between Linphone and a third-party server didn't prejudice the results of the test. Because only two testers were available, we weren't able to test group chat, so this report focuses on the overall UX and the performance of the one-to-one group chat.

The first thing that became very clear is that the GNU/Linux version of Linphone doesn't get the same level of developer priority as the other versions. I have been unable to get GNU/Linux Linphone to connect to linphone.org at all. Whatever I tried, it would say it couldn't open the port it was trying to connect through. In my case, that may have been because I was using an outdated 3.6.1 release, installed from the Trisquel 8.0 repos (based on Ubuntu 16.04). But Naughtylus was also unable to get Linphone working on GNU/Linux, using the 3.12 version available on Nix. In the end, he resorted to using WINE to run the Windows version (4.1.1, using Qt 5.9.0 and “Core” 3.12.0).

After I gave up trying to get the GNU/Linux app connecting, I switched to the Android app, which I installed from F-Droid. I had an odd issue where it wouldn't install the latest version (4.0.1), so I installed the last version before that, hoping I could then upgrade. Nope. A few days later I refreshed my F-Droid app (long story) and was able to upgrade, no idea why it wouldn't work before that. Anyway, for this test, I was using Linphone 3.3.2 for Android.

I found the Linphone app to be very demanding of permissions that I'm not sure it needed. It's totally understandable that it asked for access to the microphone when I actually started a call. But as soon as I opened the app it wanted permission to use my camera, and asked twice. As soon as I tried to add Naugtylus as a contact so I could try calling him, the app wanted permission to access the device's default contacts app. This is the first chat app I've installed from F-Droid that seems unable to handle its own contacts without demanding contacts permissions.

So I got Naughtylus to call me instead. We were able to have a sustained voice chat for more than half an hour at a time, with both the Android version of Linphone and the native GTK version running on Linux. We also managed to initiate a call with the Windows client running in WINE, but Naughtylus couldn't hear any sound due to what he suspects are issues with Wine and Alsa/Pulseaudio (the Linux audio library). I'd be curious to test Linphone again with a group, after we've done some investigation on how to get the latest versions installed and working, and maybe set up SIP accounts on different servers, so we can test SIP federation.

Overall, I'd rate my first voice chat experience on Linphone as about equivalent to using Jami or Tox. On all three, audio quality and call reliability is pretty good, but the UX has room for improvement. I wouldn't recommend any of them to a non-geek average user at this point in time. But in the case of the Linphone team, that probably wouldn't cause many tears, as it seems like their main target users are businesses paying for support contracts.