It is common to use VoIP with 4G LTE when traditional broadband is not consistently available. Although cellular data is not always ideal for realtime applications such as VoIP due to higher latency, greater packet loss, and the general variability that comes with today’s wireless networks, it can be an adequate solution if you optimize your configuration for these limitations. One way to do that is to choose Opus as the codec for your VoIP calls.

A VoIP codec is an algorithm that is used to convert an analog voice or video signal into packets that can be transmitted over the internet. The word codec is a portmanteau of two terms: Compression and Decompression. The act of compressing a voice signal affects not only the quality of the analog original, but also the amount of bandwidth needed to transmit the signal in real time. As you can probably surmise greater fidelity requires more bandwidth, all things equal.

Choosing the right VoIP codec for your situation is one of the most important things that you can do to optimize your quality of service. And among the many voice codecs available, Opus will almost always yield the best possible quality of service from your 4G LTE wireless connection, especially when compared to G.711 (also referred to as uncompressed audio) – the default codec in use by most VoIP service providers, or G.729 – the go-to codec typically employed for low bandwidth VoIP implementations. Here’s why:

  • Low Latency – Opus is well known to be a low latency codec. This is important because the cellular network will typically add 60-100 milliseconds of latency to your calls, and being able to minimize the effect of this added latency will improve the overall quality of service. Opus has the low algorithmic delay (26.5 ms by default) … and can be reduced down to 5 ms. Its delay is exceptionally low compared to competing codecs, which require well over 100 ms, yet Opus performs very competitively with these formats in terms of quality per bitrate.
  • Low Bitrate – Another benefit of using Opus is that it can be tuned to use as little as 6kbps. This is less than 10% of bandwidth required by the G.711 codec. With overhead, G.711 requires 80-90kbps and G.729 requires 24-30kbps. Further, Opus support for Asymmetric Audio Streams means that different bitrates can be used on the upload and download legs.
  • Packet Loss Resilience – Opus can support inteligible conversations with as much as thirty percent packet loss.
  • FECC – Forward Error Correction (FEC) is a digital signal processing technique used to enhance data reliability. It does this by introducing redundant data, called error correcting code, prior to data transmission. FEC provides the receiving side with the ability to correct errors without a reverse channel to request the retransmission of data.  This enables the WAN to recover from packet loss due to a variety of network conditions. Opus performs FECC natively such that packets containing important speech information are encoded again at a lower bitrate and this re-encoded information is added to a subsequent packet.
  • Adaptability – Opus can seamlessly switch between all of its various operating modes, giving it a great deal of flexibility to adapt to varying content and network conditions without renegotiating the current session.
  • Commonality – Because Opus is a part of the popular open-source webRTC standard, it is supported by virtually all major equipment vendors and service providers. This is in contrast to other high-quality codecs that may be just as performant but are proprietary (such as Microsoft’s Satin codec).

For all the reasons above, the Opus codec is best option to choose for optimizing VoIP quality of service in less than optimal network conditions, such as those that can be encountered when using 4G LTE.

Typically, being able to use Opus will depend on the type of VoIP system you are using. If you are not running your own VoIP servers, then you will most probably need to make a request to your VoIP service provider to enable Opus as the preferred codec on your account (and override the default selection of G.711).