Skip to main content
Topic: Flaws in recent Opus codec? (Read 7867 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

Flaws in recent Opus codec?

Hi everybody,

this is my first post here, even if i read this forum for a quite long time already.

Recently i did some testing on the Opus codec an found a strange behaviour.
I encoded a file with the official 0.1.5 binaries and had a look the frequency response.
Knowing that judging quality with this is useless, i discovered a ~1000Hz /-3dB drop
around 16 kHz which is not present e.g. in Ogg encoded files.

This lead me to encode/decode a linear sweep for comparison and this finally showed
a really messed up response for the Opus encoded sweep in the HF region.
I am not quite sure if it is encoder or decoder related.
For decoding i used the official opusdec and the foobar built-in one.

Opus music sample:

Oggvorbis music sample:

Opus linear sweep:

Oggvorbis linear sweep:

What do you think? Could someone try to replicate or has this been
noticed already?

Thank you.

Flaws in recent Opus codec?

Reply #1
Welcome to the forums.

Interesting. I also note that in the music sample it's a notch cut, and in the sweep it's raised (or was the decoder was different each time as you said you used opusdec and foobar2000). If this is a bug, it's unlikely to have been picked up in listening tests, as many or most listeners struggle to identify at 16kHz low-pass filter in real music so would probably fail to notice a 3 dB variation at 16 kHz too. Nonetheless, it's potentially a sign of a bug.

Can I ask what target bitrate you specified in opusenc? It could help to get to the bottom of it.
Dynamic – the artist formerly known as DickD

Flaws in recent Opus codec?

Reply #2
Hi Dynamic,

thank you.

Yes, i forgot to mention the settings.
Opus 0.1.5 and Oggenc2.87 (libVorbis v1.3.3) with following switches
<opusenc --bitrate 128> and <oggenc -q 4> is what i used.
So nothing special.

Both decoders showed the same behavior.
Foobar decoder was used finally.

Sweep was generated as a 10 seconds .wav with 16 bit / 44,1 kHz and -10dB gain.


Flaws in recent Opus codec?

Reply #3
The big question now is: Can you actually hear the difference?

Flaws in recent Opus codec?

Reply #4
In case of the music sample - this is a question i can not answer right now
as my focus was not set on this yet. I just discovered a behaviour which i
think is not correct.

The sweep sounds terrible. It starts with heavy distortions quite early
from ~10kHz on as it also can be seen in the wavy response graphics.

Flaws in recent Opus codec?

Reply #5
Does the sweep sound any different if you use 48k as the sampling rate ?

Flaws in recent Opus codec?

Reply #6
Just did a quick test with a 48kHz sweep and both decoders.
It looks and sounds similar/identical.

Flaws in recent Opus codec?

Reply #7
To disambiguate, the problem still exists at 48kHz?

Flaws in recent Opus codec?

Reply #8
Yes, i can confirm that it also exists on decoded 48kHz sweep
with <SAMPLERATE_ORIGINAL> : 48000 stated in the Opus file.

Flaws in recent Opus codec?

Reply #9
I noticed similar, maybe same "issue" which I guess it's just opus temperament feature

With any bitrate method,
- at 128 kbps, if I downmix opus file to mono (overlap channels), around 16 kHz there is visible boundary region (maybe related to OP observation)
- at 96 kbps larger low density strip is visible in ~ 12-16 kHz range:

- at 80 kbps there are two large strips

I tested with both opusdec file (44.1k) and opus decoded from foobar (48k).
This "signature" was present on all (10) test files in larger/smaller amount then in example screenshot


Flaws in recent Opus codec?

Reply #10
145dBSPL, romor: Do your spectrograms show the mono downmix of a stereo Opus file? If so, are the graphs for only one of the stereo channels alright?

Maybe I recognise the phenomenon.

SimplePortal 1.0.0 RC1 © 2008-2018