Opus Interactive Audio Codec

Overview

Opus is a totally open, royalty-free, highly versatile audio codec. Opus is unmatched for interactive speech and music transmission over the Internet, but is also intended for storage and streaming applications. It is standardized by the Internet Engineering Task Force (IETF) as RFC 6716 which incorporated technology from Skype’s SILK codec and Xiph.Org’s CELT codec.

Technology

Opus can handle a wide range of audio applications, including Voice over IP, videoconferencing, in-game chat, and even remote live music performances. It can scale from low bitrate narrowband speech to very high quality stereo music. Supported features are:

  • Bitrates from 6 kb/s to 510 kb/s
  • Sampling rates from 8 kHz (narrowband) to 48 kHz (fullband)
  • Frame sizes from 2.5 ms to 60 ms
  • Support for both constant bitrate (CBR) and variable bitrate (VBR)
  • Audio bandwidth from narrowband to fullband
  • Support for speech and music
  • Support for mono and stereo
  • Support for up to 255 channels (multistream frames)
  • Dynamically adjustable bitrate, audio bandwidth, and frame size
  • Good loss robustness and packet loss concealment (PLC)
  • Floating point and fixed-point implementation

You can read the full specification, including the reference implementation, in RFC 6716. An up-to-date implementation of the Opus standard is also available from the downloads page.

News

  • Opus 1.5.2 fixes several build issues that were discovered since the 1.5 release. It also fixes a misalignment issue in the AVX2 code that could cause crashes under Windows. Source code: opus-1.5.2.tar.gz
    SHA256: 65c1d2f78b9f2fb20082c38cbe47c951ad5839345876e46941612ee87f9a7ce1

  • Opus 1.5 is the first release to make extended use of ML in the encoder and decoder. You can read all the details in this release demo page. In summary, major changes since 1.4 include:
    • Significant improvement to packet loss robustness using Deep Redundancy (DRED)
    • Improved packet loss concealment through Deep PLC
    • Low-bitrate speech quality enhancement down to 6 kb/s wideband
    • Improved x86 (AVX2) and Arm (Neon) optimizations
    • Support for 4th and 5th order ambisonics In addition to the improvements above, this release includes many minor bug fixes. Opus 1.5.1 fixes the meson build that was broken in 1.5. Source code: opus-1.5.1.tar.gz
      SHA256: b84610959b8d417b611aa12a22565e0a3732097c6389d19098d844543e340f85

  • Opus 1.5 is the first release to make extended use of ML in the encoder and decoder. You can read all the details in this release demo page. In summary, major changes since 1.4 include:
    • Significant improvement to packet loss robustness using Deep Redundancy (DRED)
    • Improved packet loss concealment through Deep PLC
    • Low-bitrate speech quality enhancement down to 6 kb/s wideband
    • Improved x86 (AVX2) and Arm (Neon) optimizations
    • Support for 4th and 5th order ambisonics In addition to the improvements above, this release includes many minor bug fixes. Source code: opus-1.5.tar.gz
      SHA256: d8230bbeb99e6d558645aaad25d79de8f4f28fdcc55f8af230050586d62c4f2c

  • This Opus 1.4 major release brings the following improvements and fixes:
    • Improved tuning of the Opus in-band FEC (LBRR). See the issue for details
    • Added a OPUS_SET_INBAND_FEC(2) option that turns on FEC, but does not force SILK mode (FEC will be disabled in CELT mode)
    • Improved tuning and various fixes to DTX
    • Added Meson support, improved CMake support In addition to the improvements above, this release includes many minor bug fixes. Additionally, we have begun experiments on upcoming neural packet loss concealment and deep redundancy (DRED) features. Although not included in this release, you can see two IETF drafts describing the proposed extension and redundancy mechanisms. The code is also available on this development branch. Source code: opus-1.4.tar.gz

See all news or subscribe via RSS