Opus Recommended Settings: Difference between revisions
(add bandwidth transision table) |
(Add some stuff about mono/stereo switching) |
||
Line 1: | Line 1: | ||
Depending on what kinds of sounds you want to encode with Opus, you'll want different settings. | Depending on what kinds of sounds you want to encode with Opus, you'll want different settings. | ||
== Mono/Stereo == | |||
Opus tends to start downmixing stereo inputs to mono from roughly 30 Kb/s and lower. | |||
You can check the details in the '''[https://github.com/xiph/opus/blob/master/src/opus_encoder.c#L139 opus_encoder.c]''' source file. | |||
You can force downmixing by using the following command-line parameters: | |||
<code>--downmix-mono</code> - downmixes input channels to mono | |||
<code>--downmix-stereo</code> - downmixes input channels to stereo (if there are more than 2) | |||
== Bandwidth Transition Thresholds == | |||
The following table shows where Opus decides to switch between different bandwidths. It was copied from the '''[https://github.com/xiph/opus/blob/master/src/opus_encoder.c#L112 opus_encoder.c]''' source file. | |||
{| class="wikitable" style="text-align:center" | |||
|- | |||
|rowspan="2"|(bitrates in Kb/s) | |||
!colspan="2"|Mono | |||
!colspan="2"|Stereo | |||
|- | |||
! Voice | |||
! Music | |||
! Voice | |||
! Music | |||
|- | |||
!NB ↔ MB | |||
|11 ± 1 | |||
|12 ± 1 | |||
|11 ± 1 | |||
|12 ± 2 | |||
|- | |||
!MB ↔ WB | |||
|14 ± 1 | |||
|15 ± 1 | |||
|14 ± 2 | |||
|18 ± 2 | |||
|- | |||
!WB ↔ SWB | |||
|17 ± 1 | |||
|18 ± 1 | |||
|21 ± 2 | |||
|21 ± 2 | |||
|- | |||
!SWB ↔ FB | |||
|21 ± 1 | |||
|22 ± 2 | |||
|28 ± 2 | |||
|30 ± 2 | |||
|} | |||
== Usage Table == | |||
The following table has '''rough''' guidelines to help you get your required quality, file size or latency. The table is originally taken from the '''[http://wiki.hydrogenaud.io/index.php?title=Opus HydrogenAudio]''' wiki, which has some great information on Opus and its usage. | The following table has '''rough''' guidelines to help you get your required quality, file size or latency. The table is originally taken from the '''[http://wiki.hydrogenaud.io/index.php?title=Opus HydrogenAudio]''' wiki, which has some great information on Opus and its usage. | ||
Line 110: | Line 158: | ||
|Settle for 510kbps or use [[lossless]], [[lossyWAV]], [[WavPack | WavPack lossy]] or lossy transform/subband codecs like [[Vorbis]], [[Musepack]] at very high settings. | |Settle for 510kbps or use [[lossless]], [[lossyWAV]], [[WavPack | WavPack lossy]] or lossy transform/subband codecs like [[Vorbis]], [[Musepack]] at very high settings. | ||
|- | |- | ||
|} | |} |
Revision as of 14:19, 2 June 2016
Depending on what kinds of sounds you want to encode with Opus, you'll want different settings.
Mono/Stereo
Opus tends to start downmixing stereo inputs to mono from roughly 30 Kb/s and lower. You can check the details in the opus_encoder.c source file.
You can force downmixing by using the following command-line parameters:
--downmix-mono
- downmixes input channels to mono
--downmix-stereo
- downmixes input channels to stereo (if there are more than 2)
Bandwidth Transition Thresholds
The following table shows where Opus decides to switch between different bandwidths. It was copied from the opus_encoder.c source file.
(bitrates in Kb/s) | Mono | Stereo | ||
---|---|---|---|---|
Voice | Music | Voice | Music | |
NB ↔ MB | 11 ± 1 | 12 ± 1 | 11 ± 1 | 12 ± 2 |
MB ↔ WB | 14 ± 1 | 15 ± 1 | 14 ± 2 | 18 ± 2 |
WB ↔ SWB | 17 ± 1 | 18 ± 1 | 21 ± 2 | 21 ± 2 |
SWB ↔ FB | 21 ± 1 | 22 ± 2 | 28 ± 2 | 30 ± 2 |
Usage Table
The following table has rough guidelines to help you get your required quality, file size or latency. The table is originally taken from the HydrogenAudio wiki, which has some great information on Opus and its usage.
Bitrate target | Stereo mode | Bandwidth | typ SILK/CELT use | Music quality notes | Use cases/notes/competitive codecs |
---|---|---|---|---|---|
6 kbps | mono | 4 kHz | SILK | Poor, muffled sound but intelligible lyrics. | - |
8 kbps | mono | 4 kHz | SILK | Poor, muffled but OK for bitrate | - |
14 to 16 kbps | mono | 6 kHz | SILK | Fairly Poor but OK for bitrate | Perhaps acceptable for incidental music |
22 to 24 kbps | mono | 8 kHz | SILK | Fair but OK for bitrate | OK for incidental music |
32 kbps | mono | 12 kHz | hybrid | Moderately good mono, reasonably bright treble (c.f. mono cassette) | Good for podcasts, audiobooks, CELT-only poss for music. Competitor HE-AAC@32kbps is stereo full-band but with annoying artifacts. |
36 to 40 kbps | stereo | 12 kHz | hybrid/CELT | Moderately good stereo, reasonably bright treble (c.f. stereo cassette) | Stereo podcasts, audiobooks, very low bitrate music |
48 kbps | stereo | 20 kHz | CELT | Full bandwidth stereo music, some artifacts, rarely nasty | Stereo podcasts, audiobooks, low bitrate music |
64 kbps | stereo | 20 kHz | CELT | Full bandwidth stereo music, nice sound, detectable differences to original (mostly 'not annoying') | Music storage & streaming. Beat HE-AAC, Vorbis, MP3 in listening test |
96 kbps | stereo | 20 kHz | CELT | Full bandwidth stereo music, good quality approaching transparency | Music storage & high quality streaming. Beat LC-AAC, Vorbis, MP3 in listening test |
112 kbps | stereo | 20 kHz | CELT | Fairly close to transparency (needs more testing) | Music storage & high quality streaming. Very low-latency stereo networked music performance/jam sessions at OK quality (see below table) |
128 kbps | stereo | 20 kHz | CELT | Very close to transparency (needs more testing). Most modern codecs competitive (AAC-LC, Vorbis, MP3) | Music storage & streaming. Future download music sales. |
256 kbps | stereo | 20 kHz | CELT | Transparent with very low chance of artifacts (a few killer samples still detectable). Most old & new lossy codecs competitive. | Music storage & streaming, dedicated limited-bandwidth audio links (e.g. wireless, A2DP-bluetooth type links). |
510 kbps | stereo | 20 kHz | CELT | Maximum possible stereo bitrate target (actual rate often less than 510 for default frame size). Most old and new lossy codecs competitive, plus near-lossless lossyWAV and WavPack lossy | Music storage, dedicated limited-bitrate audio links (e.g. wireless, minimum latency high quality audio. LossyWAV and WavPack lossy are very competitive for storage, and WavPack lossy --blocksize=256 may be competitive with minimum latency mode also. |
>510 kbps | - | - | - | Above Opus bitrate range allowed for stereo sources | Settle for 510kbps or use lossless, lossyWAV, WavPack lossy or lossy transform/subband codecs like Vorbis, Musepack at very high settings. |