## What is Opus?
Opus is a modern, open-source audio codec developed by the Xiph.Org Foundation (the team behind Ogg Vorbis and FLAC) and Mozilla, standardized by the IETF as RFC 6716 in 2012.
It's designed specifically for **real-time audio transmission** β voice calls, video conferencing, and streaming β but works equally well for music.
The killer feature: Opus achieves **better audio quality than MP3 at less than half the bitrate**.
## Opus vs MP3 vs AAC
| Format | 64 kbps quality | 128 kbps quality | Open standard | Patent-free |
|---|---|---|---|---|
| **Opus** | Excellent | Excellent | β
| β
|
| AAC | Good | Excellent | No | No |
| MP3 | Poor | Good | No | No (expired) |
| Ogg Vorbis | Good | Good | β
| β
|
**Practical example**: Opus at 64 kbps sounds better than MP3 at 128 kbps. For voice, Opus at 24-32 kbps is indistinguishable from the original.
## Key Technical Features
### Variable Bitrate Range
Opus operates from **6 kbps to 510 kbps** β making it effective for everything from compressed voice (6 kbps) to high-fidelity music (256+ kbps).
### Dual-Mode Design
Opus internally switches between two codecs:
- **SILK**: optimized for voice (low bitrate, 8-24 kHz)
- **CELT**: optimized for music and full-bandwidth audio (up to 48 kHz)
This switching happens frame-by-frame, allowing Opus to handle mixed audio (music + voice) better than codecs designed for one or the other.
### Ultra-Low Latency
Opus achieves as little as **5ms algorithmic delay** β critical for real-time communication where echo cancellation and synchronization depend on minimal latency.
## Where Opus is Already Used
- **Discord**: all voice and video calls use Opus.
- **WhatsApp**: voice messages and calls.
- **Zoom** and **Google Meet**: for audio transmission.
- **Spotify**: uses Ogg Vorbis, but experimenting with Opus.
- **YouTube**: uses Opus for WebM video files.
- **WebRTC**: the browser standard for real-time communication uses Opus by default.
## Browser and Platform Support
| Platform | Opus Support |
|---|---|
| Chrome | β
Full |
| Firefox | β
Full |
| Edge | β
Full |
| Safari | β
(Safari 14+, iOS 14+) |
| Android | β
Native |
| iOS | β
(via browser) |
| Windows Media Player | β |
| iTunes/Apple Music | β |
| Most hardware players | β |
## When to Use Opus
**Optimal use cases:**
- WebRTC and real-time communication applications.
- Podcast streaming where low bitrate matters.
- Audio for WebM video files on the web.
- Open-source projects where patent-free codecs are required.
- Low-bandwidth streaming environments.
**When to use something else:**
- Podcast episode downloads β MP3 for maximum hardware compatibility.
- Apple ecosystem β AAC is better supported.
- Hardware audio players β almost none support Opus.
- Distribution on platforms that don't support it (most music stores).
## Using Opus in WebM Video
YouTube uses Opus for audio in WebM files:
```html
```
Creating a WebM with Opus audio using FFmpeg:
```bash
ffmpeg -i input.mp4 \
-c:v libvpx-vp9 -crf 33 -b:v 0 \
-c:a libopus -b:a 128k \
output.webm
```
## Converting Opus Files
Opus files typically use the `.opus` extension in an Ogg container:
- [OGG to MP3](/convert/ogg-to-mp3) β for hardware player compatibility
- [OGG to AAC](/convert/ogg-to-aac) β for Apple devices
- [MP3 to OGG](/convert/mp3-to-ogg) β for open-source projects
Guide