After one and a half years of development, the organization Xiph.Org, dedicated to creating free video and audio codecs, has released the Opus 1.6 audio codec, which provides high-quality encoding and minimal latency both for streaming high-bitrate audio and for compressing voice in bandwidth-limited VoIP telephony applications. The reference implementations of the encoder and decoder are distributed under the BSD license. Full specifications of the Opus format are publicly available, free of charge, and approved as an internet standard (RFC 6716).
The codec was created by combining the best technologies from the CELT codec developed by Xiph.org and the SILK codec from Skype. In addition to Skype and Xiph.Org, companies such as Mozilla, Octasic, Broadcom, and Google also participated in the development of Opus. The patents involved in Opus are provided by the participating companies for unlimited use without paying licensing fees. All intellectual property rights and patent licenses related to Opus are automatically delegated to applications and products using Opus, without the need for additional agreements. There are no restrictions on the scope of application and the creation of alternative third-party implementations. However, all granted rights are revoked in the event of a patent dispute related to Opus technologies against any Opus user.
Opus is distinguished by high-quality encoding and minimal latency both for streaming high-bitrate audio and for compressing voice in bandwidth-limited VoIP telephony applications. Previously, Opus was recognized as the best codec at a bitrate of 64Kbit (Opus outperformed competitors such as Apple HE-AAC, Nero HE-AAC, Vorbis, and AAC LC). Products that support Opus out of the box include the Firefox browser, the GStreamer framework, and the FFmpeg package.
Key features of Opus:
- Bitrate from 5 Kbit/s to 2 Mbit/s;
- Sampling frequency from 8 to 96KHz;
- Frame duration from 2.5 to 120 milliseconds;
- Support for constant (CBR) and variable (VBR) bitrates;
- Support for narrowband and wideband audio;
- Support for speech and music;
- Support for stereo and mono;
- Support for dynamic adjustment of bitrate, bandwidth, and frame size;
- Ability to recover the audio stream in case of frame loss (PLC);
- Support for up to 255 channels (multi-stream frames)
- Availability of implementations utilizing both floating-point and fixed-point arithmetic.
Key innovations in Opus 1.6:
- A version of Opus HD has been implemented for encoding audio with a sampling rate of 96 kHz, a bitrate of up to 2 Mbps, and a bandwidth extending beyond the standard audio range of 20 kHz.
- A BWE (wideband-to-fullband) module has been added to convert wideband encoding (frequency range limited to 8 kHz) to fullband representation that covers the entire audible range (up to 20 kHz). The missing frequencies of 8-20 kHz are recreated using a machine learning-based algorithm.
- A new API for encoding and decoding audio with 24-bit integer representation per channel has been proposed. This new API can be useful for improving audio quality on platforms where performance is insufficient for floating-point encoding or in situations where integer-only encoding is strictly required. Support for 16-bit integer per channel and 32-bit floating-point encoding remains.
- The implementation of the "Deep Redundancy" (DRED) mechanism, which uses machine learning to restore lost audio fragments due to packet loss, has been significantly improved.
- The accuracy of encoding has been enhanced in the implementation that uses fixed-point arithmetic.
- Optimizations for the MIPS architecture have been added.
- Support for detecting x86 SIMD instruction sets on the OpenBSD platform has been provided.
Source: opennet.ru
