Complete Communications Engineering

Opus Encoder

Opus audio codec is a royalty free, interactive audio codec for use in a wide range of voice and music applications including VoIP, voice and video conferencing, in-game chat and live distributed performances.

Opus Codec - Opus Encoder - Opus Voice Codec

VOCAL’s Opus codec source code is optimized for DSPs and conventional processors from TI, ADI, Intel, ARM and other leading vendors. Custom solutions are also available.  Our extensive experience in the design, implementation and configuration of mobile, network, and telephony solutions will help you bring your audio application to market quickly and efficiently. Contact us to discuss your specific Opus audio codec requirements.

download brochure

Opus Voice Codec

Opus vocoder can scale from low bit-rate narrowband speech to very high quality stereo music. Opus codec incorporates technology from both the SILK and CELT speech codecs.

RFC 6716 defines a real-time interactive audio codec that uses two separate layers – Linear Prediction (LP), such as Code-Excited Linear Prediction (CELP), to encode low frequency speech and Modified Discrete Cosine Transform (MDCT) to encode music and higher speech frequencies.  Either LP, MDCT, or both, may be active in the Opus vocoder at any point.  By using the capabilities of both LP and MDCT, the Opus vocoder can operate over a wider range and achieve better sound quality than with either method alone.

The Opus VoIP codec LP layer is based on the SILK codec with support for NB, MB, or WB audio. Opus frame size ranges from 10 ms to 60 ms for the LP layer. An additional 5 ms look-ahead is required for noise shaping estimation as well as a delay of up to 1.5 ms for sampling rate conversion. The Opus VoIP codec MDCT layer is based on the CELT codec with support for NB, WB, SWB, or FB audio. For the MDCT layer, Opus frame size ranges from 2.5 ms to 20 ms. It requires an additional 2.5 ms look- ahead due to the overlapping MDCT windows.

The Opus voice codec may use both layers simultaneously with a frame size of 10 or 20 ms and an audio bandwidth of SWB or FB. Opus codec LP layer is used first to encode low signal frequencies by resampling down to WB, followed by the MDCT layer which encodes the high frequency portion of the signal.  Opus codec MDCT layer discards all bands below 8 kHz to avoid any coding redundancy between the two layers.

The sample rate is selectable independently for both the Opus speech encoder and decoder, e.g., a fullband signal can be decoded as wideband, or vice versa.  Thus, a sender and receiver can always interoperate regardless of the actual hardware used on either end point using the Opus audio codec.

Opus Voice Codec Features

Opus Codec Applications



VOCAL’s optimized vocoder software is available for the following platforms. Please contact us for specific Opus codec supported platforms.

ProcessorsOperating Systems
  • Texas Instruments – C6000 (TMS320C62x, TMS320C64x, TMS320C645x, TMS320C66x, TMS320C67x), DaVinci, OMAP, C5000 (TMS320C54x, TMS320C55x)
  • Analog Devices – Blackfin, ADSP-21xx, TigerSHARC, SHARC
  • PowerPC
  • MIPS – MIPS32, MIPS64, MIPS4Kc
  • ARM – ARM7, ARM9, ARM9E, ARM10E, ARM11, StrongARM, ARM Cortex-A8, Cortex-M1
  • Intel / AMD – x86, x64 (both 32 and 64 bit modes)
  • Google Android
  • Apple iOS / iPhone / iPad & MacOS
  • Unix,  Linux, μClinux, BSD
  • Microsoft Windows ACM / RTC / CE / Mobile
  • Symbian
  • eCOS / eCOSPro
  • Wind River VxWorks
  • Green Hills Integrity
  • Micrium μCOS