The following review was conducted in September 2017.
Linphone is an open source softphone originally developed for Linux by Belledonne Communications, although it now has clients for Windows, Mac OSX, Android, iOS, Windows Phone and Blackberry. It is designed to work with the Linphone free SIP service, but can also be used as a client for other SIP providers.
In this review, we take a look at how Linphone performs in terms of everyday use, including voice and video calling, conferencing, messaging, and more. For this review, we tested on Linphone 4.1.1 on Ubuntu 16.04.1 LTS release.
Linphone has come a long way visually from previous versions. The interface feels sophisticated and modern, though it’s missing some functionality that makes other SIP softphones easier to use.
Belledonne Communications offers a free SIP account service, so you can get online really quickly for SIP-to-SIP calling. If you want PSTN calling, however, you’ll have to find another provider. This is both an advantage, for quick configuration, and a disadvantage, as removing the Linphone service from the client is challenging.
If you are trying to configure Linphone for a SIP provider such as OnSIP, you are going to run into some pain points pretty quickly. Many of the configuration options that we expect to see in a softphone are not exposed in the GUI, or if they are, they use different terminology than the rest of the industry and required a more specific syntax than is normally expected in a GUI.
As you might expect, Linphone does have a text configuration file that allows for more configurable options and there is reasonable documentation for users that want to tweak beyond what the GUI allows. Unfortunately, we found that reopening Linphone overwrote many of the options, which made removing the Linphone SIP service from Linphone difficult.
One interesting aspect of Linphone is that it can also be used via the command line, which makes it a useful development and testing tool. However, this is beyond the scope of this review, as what we really want to know here is how Linphone functions for ordinary users.
For the most part, a classic softphone user will have an enjoyable experience with Linphone. The interface is intuitive, though not as complete as we would have liked. Both audio and video calling are clear. Clicking on a contact brings up an attractive call history that displays an integrated view of calls and messages, while providing convenient buttons for initiating a new voice or video call, and contact management.
We did wish that the interface also included a clickable dialer, which is an important feature for dialing vanity phone numbers, such as 1-800-FLOWERS.
The integration of messaging is one of the stronger features of Linphone. In our testing, we found that it worked well with a number of softphone clients, including Jitsi and Zoiper. Although Linphone is designed for an all-Linphone deployment, any SIP client that supports SIP MESSAGE should work.
It seems intuitive that you’d be able to do a video conference, given that Linphone has video support, but this is not yet a supported feature. Audio conferencing does work and it has one of the smoother interfaces that we’ve seen. To set up a call, you can click on the conference button from the main interface or from any one of your contact call logs. A new screen pops up and all you need to do is choose the participants and click "Start".
The conference in progress looks like this. In this example, we were still connecting to enoch, while lisaj was already joined to the conference. You can pause the conference as a whole or hang up and dissolve the conference from this screen. There’s also an option to record the whole call to your local hard drive.
Changing input and output options is also relatively trivial, as is updating and changing codecs. These options also work separately from the operating system and allow for the type of customization that we’d like to be available elsewhere in the client.
Overall, Linphone is a satisfactory daily SIP client, but we wish it were more flexible in its configuration. For example, though the logging provided with Linphone is quite thorough and helpful, the inability to change the Logs upload server url from linphone.org will not please privacy buffs who are uninterested in using the Linphone SIP service.
Linphone comes with many of the standard softphone features:
- Audio & HD video calls
- Audio conferencing (merge calls into a conference)
- Call history
- Call quality indicator
- Call transfer
- Contact list
- Display of advanced call statistics
- Echo cancellation
- ICE support (RFC5246) to allow peer to peer audio & video connections without media relay server
- Instant messaging with message delivery status (IMDN)
- Integration with push notification (requires compatible SIP server, linphone.org sip service has push enabled)
- IPv6 (dual stack and v6-only support)
- Pictures and file sharing
- Ability to configure multiple proxy accounts with different transports (UDP, TCP, TLS)
- Audio codecs: OPUS, SPEEX, G711 a-law, G7111 U-law, GSM, G722, G729, BV16
- Video codecs: VP8
Linphone also offers certain features that are specific to the desktop client, including:
- HD video calls in fullscreen mode
- Call recording (audio & video)
- Presence status
- Smart search bar
- Chat access during calls
- Unified history
- Quick access through my recent events
- Ability to create audio conference calls instantaneously
As with all softphones, the voice quality is dependent on your speakers and headphones. However, with support for G722 and opus, quality was as crisp and clear as a deskphone with HD voice support.
Video calls are clear, presuming you have the bandwidth available to support the higher resolutions. If you don’t, Linphone supports a variety of formats to help your videos keep rolling at lower quality levels. This screenshot was taken at 1080p, with high FPS enabled. However, since Linphone for Ubuntu only supports the VP8 video codec, it is incompatible with many hard phones for video calling.
OnSIP Interoperability Testing
At OnSIP, we put each of the phones we use through a multi-step interoperability test in which we apply ~30 test cases. An example of a test case would be the following:
Test phone calls phone B
B picks up
B puts Test phone on hold
B calls phone C
C picks up
B transfers test phone to C
Call must be transferred correctly to C. B must be released correctly after the transfer. When C picks up, audio must work in both ways between test phone and C. When test phone is on hold, there is no audio between it and phone B.
Linphone for Linux passed all of our standard interoperability testing for voice and video calling. However, there are some clients that will have difficulty interoperating with Linphone for voice calling.
1. Gather user credentials.
First, log in to your OnSIP Admin Portal. On the Users tab, select the user you wish to register with Linphone and locate the following information under the "Phone Configuration" section:
- SIP Address(Address of Record)
- SIP Password
- Auth Username
- Outbound Proxy
2. Enter account information.
To set up Linphone, go into Preferences and add an account. Enter your SIP address into the first field, and your domain into the second field. You'll need to change the "transport=tls" to "transport=udp" in the second field, which will update the Transport drop-down selection to UDP.
Set Route as your Outbound Proxy. Click "Confirm" to continue.
3. Enter user authorization credentials.
There’s a major flaw to the Linphone configuration, which is that you aren’t prompted to enter your Auth Username, which is a requirement for any secure SIP service.
After you connect to the account, Linphone will prompt you for authorization credentials, which is when you can enter your Auth Username and SIP password into the “User ID (optional)” and "Password" fields, respectively.
Click "Login" and your account will be registered.
Linphone is an attractive SIP softphone choice for the typical user who just needs a phone for daily use. It has integrated messaging and call history for each contact, easily configurable audio settings, and a nice interface for audio conferencing. The voice and video quality were clear, although we found that video calling with the Linux client was incompatible with many hard phones.
There are a number of points that may be frustrating for power users and administrators on Linphone 4.1.1, such as being unable to prioritize codecs or configure the entire account in the GUI wizard. Many of these issues are relatively small changes, which makes them feel like a design flaw. OnSIP has raised several of these issues with the Linphone development team in the past and can only be hopeful that they will implement some of these changes in future versions.