Opus (audio format)
| Opus | |
|---|---|
| Filename extension |
.opus[1] |
| Internet media type | audio/ogg[2]audio/opus (RTP)[3] |
| Developed by | IETF codec working group |
| Initial release | September 11, 2012 |
| Type of format | Lossy audio |
| Contained by | Ogg, Matroska, WebM, MPEG-TS, ISOBMFF, CAF |
| Extended from | SILK, CELT |
| Standard | RFC 6716 |
| Open format? | Yes |
| Free format? | Yes |
| Website | opus-codec |
| libopus | |
|---|---|
Screenshot of opusinfo showing information of an .opus file | |
| Developer(s) | Xiph.Org Foundation |
| Initial release | August 26, 2012 |
| Stable release | 1.5.2
/ April 12, 2024 |
| Written in | C89 |
| Platform | Cross-platform |
| Type | Audio codec, reference implementation |
| License | 3-clause BSD license (with patent license) |
| Website | Opus codec downloads |
Opus is a free and open source lossy audio coding format developed by the Xiph.Org Foundation and standardized by the Internet Engineering Task Force, designed for efficient low-latency encoding of both speech and general audio. Due to its lower latency relative to other standard codecs, Opus finds specific use cases in real-time interactive communication for low-end embedded processors.[4][5] Opus replaces both Vorbis and Speex for new applications.
Opus combines the speech-oriented LPC-based SILK algorithm and the lower-latency MDCT-based CELT algorithm, switching between or combining them as needed.[4] Bitrate, audio bandwidth, complexity, and algorithm choice can be adjusted for each individual frame. Opus has low algorithmic delay (26.5 ms by default)[6] ideal for use as part of a real-time communication link, networked music performances, and live lip sync; by trading off quality or bitrate, the delay can be further reduced down to 5 ms. Its delay thus is significantly lower compared to competing codecs, which require well over 100 ms. Opus remains competitive with these formats in terms of quality per bitrate.[7]
As an open format standardized through RFC 6716, a reference implementation called libopus is available under the New BSD License. The reference has both fixed-point and floating-point optimizations for low- and high-end devices, with SIMD optimizations on platforms that support them. All known software patents that cover Opus are licensed under royalty-free terms.[8] Opus is widely used as a voice over IP (VoIP) codec in applications such as Discord,[9] WhatsApp,[10][11][12] and the PlayStation 4.[13] Listening tests have ranked it higher-quality than other standard audio formats at any given bitrate until transparency is reached, including MP3, AAC, and HE-AAC.[14][15]
- ^ "MIME Types and File Extensions". XiphWiki.
- ^ Terriberry, Timothy; Lee, Ron; Giles, Ralph (April 2016). "Content Type". Ogg Encapsulation for the Opus Audio Codec. IETF. p. 30. sec. 9. doi:10.17487/RFC7845. RFC 7845. Retrieved 2016-04-30.
- ^ Spittka, Julian; Vos, Koen; Valin, Jean-Marc (2015-06-30). "Opus Media Type Registration". RTP Payload Format for the Opus Speech and Audio Codec. IETF. p. 9. sec. 6.1. doi:10.17487/RFC7587. ISSN 2070-1721. RFC 7587. Retrieved 2015-06-30.
- ^ a b "Opus Codec". Opus (Home page). Xiph.org Foundation. Retrieved July 31, 2012.
- ^ Bright, Peter (2012-09-12). "Newly standardized Opus audio codec fills every role from online chat to music". Ars Technica. Retrieved 2014-05-28.
- ^ Jean-Marc Valin; Gregory Maxwell; Timothy B. Terriberry; Koen Vos (October 17–20, 2013). "High-Quality, Low-Delay Music Coding in the Opus Codec" (PDF). www.xiph.org. New York, NY: Xiph.Org Foundation. p. 2. Archived from the original (PDF) on 14 July 2018. Retrieved 19 August 2014.
CELT's look-ahead is 2.5 ms, while SILK's look-ahead is 5 ms, plus 1.5 ms for the resampling (including both encoder and decoder resampling). For this reason, the CELT path in the encoder adds a 4 ms delay. However, an application can restrict the encoder to CELT and omit that delay. This reduces the total look-ahead to 2.5 ms.
- ^ Chen, Raymond (April 1, 2011). "Opus Testing" (PDF). Retrieved 2016-01-02.
- ^ Cite error: The named reference
OpusLicensewas invoked but never defined (see the help page). - ^ "What Features Does Discord Have?". Discord. Archived from the original on 2017-06-06. Retrieved 2017-10-29.
- ^ Cite error: The named reference
Registerwas invoked but never defined (see the help page). - ^ Cite error: The named reference
Srivastavawas invoked but never defined (see the help page). - ^ Cite error: The named reference
Hazrawas invoked but never defined (see the help page). - ^ Cite error: The named reference
playstationwas invoked but never defined (see the help page). - ^ Cite error: The named reference
testsummarywas invoked but never defined (see the help page). - ^ Cite error: The named reference
96kListeningTestwas invoked but never defined (see the help page).