Skip to main content

Notice

Please note that most of the software linked on this forum is likely to be safe to use. If you are unsure, feel free to ask in the relevant topics, or send a private message to an administrator or moderator. To help curb the problems of false positives, or in the event that you do find actual malware, you can contribute through the article linked here.
Topic: Opus is now RFC6716, version 1.0.1 released! (Read 102171 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

Opus is now RFC6716, version 1.0.1 released!

Reply #25
I believe the pre-roll is essential because of the SILK layer's predictors needing time to converge based on previous samples, but wouldn't matter in CELT-only (MDCT only) mode. Without this, excessive volume bursts may occur if SILK is active, so the BEST solution is a PreRoll (decoding but not playing 80 ms of audio or more to make it converge). Presumably if the PreRoll isn't accessible it should be acceptable (and mandatory) to mute the audio for 80ms (or follow a suitable fade-in curve).
MDCT needs pre-roll too. Somewhat less in the insane worse case because the maximum inter-frame predictive gain is lower, but 80ms doesn't get you convergence in the insane worse case anyways, it gets you convergence that should be quite good on average, and at least not break speakers (or the listener) in the worst case.  There is also the matter of initial skip.

These sorts of issues aren't entirely unique to Opus. Video codecs with rolling intra have this problem too (e.g. h264 can be encoded this way).  The solution of the mkv container and common applications is to get it wrong and display corrupted output, both for cropped files and seeking.  This is even less acceptable for Opus because the corruption could potentially damage equipment or hurt the users hearing (at least for some insane inputs) and because it will be at least a small issue on almost all files. The Matroska developers seemed uninterested before in doing anything about it. There also appears to be no general mechanism for making sample accurate files with Matroska,  or at no tools I can find implement it with Vorbis, so it seems true gaplessness would require cross-fades.

Between those concerns, the general lack of Matroska support in audio tools (as opposed to A+V) and devices (for a long time the only complete MKV libraries had lots of dependencies and were C++ only, both contraindicated for embedded devices), and the lack of any substantial material benefit otherwise... it hasn't really been a priority, at least not mine.  Google has already nixed using Opus with "WEBM' because they, rightfully, don't want to complicate compatibility. Though people interested in muxing opus with VP8— e.g. to seralize webrtc streams— will surely get it worked out eventually.

Opus is now RFC6716, version 1.0.1 released!

Reply #26
Thanks for the information & correction, NullC. I think I've had the equivalent video problem a few times. I think I need to look over the Opus/CELT info again.
Dynamic – the artist formerly known as DickD

Opus is now RFC6716, version 1.0.1 released!

Reply #27
I don't know how long ago they started but Absolute Radio streams in Opus (Trial):

http://www.absoluteradio.co.uk/listen/labs.html#opus

I wish they had 48kbps and 64kbps instead of 128kbps though. I'll email them.

Opus is now RFC6716, version 1.0.1 released!

Reply #28
Are they going to release the 1.0.1 binaries for Windows so we can do more testing? If not, can at least anyone say it's not going to be any different than 1.0.1 RC3?

Thanks.

Opus is now RFC6716, version 1.0.1 released!

Reply #29
I don't know how long ago they started but Absolute Radio streams in Opus (Trial):

http://www.absoluteradio.co.uk/listen/labs.html#opus

I wish they had 48kbps and 64kbps instead of 128kbps though. I'll email them.


Also: the ar24 stream reports

Encoded with libopus 1.0.1-rc2
ENCODER=opusenc from opus-tools 0.1.4


I would assume they may get better results with one of the experimental psychoacoustic tunings discussed here.

Opus is now RFC6716, version 1.0.1 released!

Reply #30
I have to admit I was a little stunned by the bitrate options they provide.. 24Kbps or 128Kbps.. At 128Kbps they can pretty much use any modern codec and no one could really tell.. I figured they would shoot for at least 32kbps or 48kbps.. They're trying to encode full band music at 24kbps, and while I was impressed with what opus accomplishes there, to the non-technically inclined they'll just think it sounds bad and not appreciate how good it sounds in relation to how low that bitrate is. We're talking about piping it over a 28.8kbps modem connection in real time here!!

Opus is now RFC6716, version 1.0.1 released!

Reply #31
I would assume they may get better results with one of the experimental psychoacoustic tunings discussed here.


If they were to use 48 to 64 kbps (or maybe 80 to 96 kbps), possibly the experimental psy tunings would help, as I believe they're focused on the CELT mode, and the full-range bass would also be welcome.

It seems likely that 128 kbps is going to be pretty excellent / near transparent in either mode and hard to distinguish between main or experimental branch in normal listening.

The 24 kbps stream (Super Wideband at 24 kHz sampling rate, I think) is below the level where CELT dominates (I think most of the experimental psychoacoustic tunings have been developed for the CELT layer) and instead I believe Opus always uses Hybrid mode with SILK encoding the signal up to 8kHz and CELT encoding the spectrum between 8-12 kHz, I believe, so I don't expect there would be much difference between main and experimental there either.

I guess the modes chosen are based on use-cases. Unlikely to include a PSTN modem, but maybe includes cellular streaming to mobile devices at sporadic and variable rates of GPRS, which is often about 28 kbps in rural areas of the UK on some networks.

Absolute Radio labs' 128kbps Opus stream sounds excellent but at times the 24 kbps Opus was really lacking in bass, I believe - I compared to their AAC+SBR 24kbps stream. On the other hand, at times Opus sounded like it had less high-frequency harshness than the AAC+SBR version but also at times it had less HF sparkle due to its presumably 12kHz lowpass. For a speech-oriented encoder setting, Opus24 is very music-friendly. I'd probably pick the AAC+SBR at 24kbps, but the artificial-sounding nature of it might grate with me eventually and I might choose Opus instead. I know there's an adaptable HF filter in the SILK layer, so presumably its effect will vary with the audio source.

It would be lovely if bass could be preserved by Opus when music is detected at 24 kbps without losing too much fidelity due to the bits used there.

As Opus is defined by the decoder, which seems to simply add the SILK and CELT decodes, I'm not sure if there might be scope in hybrid mode to choose to use CELT to encode the area below the high-pass filter that removes non-speech background noise from the SILK layer but might be amenable to encoding using longish blocks.


Dynamic – the artist formerly known as DickD

Opus is now RFC6716, version 1.0.1 released!

Reply #32
I would assume they may get better results with one of the experimental psychoacoustic tunings discussed here.


If they were to use 48 to 64 kbps (or maybe 80 to 96 kbps), possibly the experimental psy tunings would help, as I believe they're focused on the CELT mode, and the full-range bass would also be welcome.

It seems likely that 128 kbps is going to be pretty excellent / near transparent in either mode and hard to distinguish between main or experimental branch in normal listening.

The 24 kbps stream (Super Wideband at 24 kHz sampling rate, I think) is below the level where CELT dominates (I think most of the experimental psychoacoustic tunings have been developed for the CELT layer) and instead I believe Opus always uses Hybrid mode with SILK encoding the signal up to 8kHz and CELT encoding the spectrum between 8-12 kHz, I believe, so I don't expect there would be much difference between main and experimental there either.

I guess the modes chosen are based on use-cases. Unlikely to include a PSTN modem, but maybe includes cellular streaming to mobile devices at sporadic and variable rates of GPRS, which is often about 28 kbps in rural areas of the UK on some networks.

Absolute Radio labs' 128kbps Opus stream sounds excellent but at times the 24 kbps Opus was really lacking in bass, I believe - I compared to their AAC+SBR 24kbps stream. On the other hand, at times Opus sounded like it had less high-frequency harshness than the AAC+SBR version but also at times it had less HF sparkle due to its presumably 12kHz lowpass. For a speech-oriented encoder setting, Opus24 is very music-friendly. I'd probably pick the AAC+SBR at 24kbps, but the artificial-sounding nature of it might grate with me eventually and I might choose Opus instead. I know there's an adaptable HF filter in the SILK layer, so presumably its effect will vary with the audio source.

It would be lovely if bass could be preserved by Opus when music is detected at 24 kbps without losing too much fidelity due to the bits used there.

As Opus is defined by the decoder, which seems to simply add the SILK and CELT decodes, I'm not sure if there might be scope in hybrid mode to choose to use CELT to encode the area below the high-pass filter that removes non-speech background noise from the SILK layer but might be amenable to encoding using longish blocks.

I think the only way to Opus be competitive on HE-AACv2 with less than 32Kbps is using either mono or intesity stereo. Opus has something similar to Spectral Band Replication from AAC (it's called Band Folding and it's more efficient since it uses the unique design of the codec to reconstructed higher frequencies; see more here: http://people.xiph.org/~xiphmont/demo/celt/demo.html), so the bitrate range where HE-AAC sounds good (32~64Kbps) Opus will probably sound even better (a.k.a. less artifacts), but Opus doesn't have anything special on spatial encoding to compete with Parametrical Stereo, except maybe the intensity stereo mode. I don't know if Opus automatically switch to intensity stereo on such low bitrates, so maybe mono will be better.

Anyway, we shouldn't forget that HE-AAC and HE-AACv2 (well, even AAC-LC) has much more delay than Opus (it's orders of magnitude), so it still has it's on merits unless USAC comes with a low delay mode that still uses SBR+PS.

Opus is now RFC6716, version 1.0.1 released!

Reply #33
There is also a commercial competitor named AAC-ELD (Enhanced Low Delay) to Opus.

Opus is now RFC6716, version 1.0.1 released!

Reply #34
AAC-ELD uses a low delay modifications of SBR (LD SBR)  and Parametric Stereo which is derived from MPEG Surround (LD MS).
LD SBR has delay of 33.7 ms and LD SBR + LD MS - 37.7 ms which is actually 1.5x higher than LD-AAC (no SBR, no MS) or Opus with  20-25 ms of delay.

Not sure about USAC. It uses SBR and MS too. USAC's speech encoder is AMR-WB+ which also has a high delay.
Add to it that low delay comes at high cost of a quality drop. http://www.hydrogenaudio.org/forums/index....st&p=772068


Opus is now RFC6716, version 1.0.1 released!

Reply #36
I think they did read my email, they took off 128kbps and add 64kbps and 96kbps


Just installed Firefox 15 on my Mum's PC and noticed the same thing. Absolute describe 24 kbps (mono) as Low Bitrate, 64kbps as Standard Bitrate and 96 kbps as High Bitrate, which in the context of Opus seems appropriate.

Both 64 and 96 kbps streams sound great, though I'd love to be able to listen through fb2k as well because the Classic Rock station there in particular plays a few songs with hard-panned instruments that sound like they're inside my ears on headphones so a crossfeed or speakers simulation plugin would help.

BTW, I also notice that the Examples pages of opus-codec.org now includes a cool demo of bitrate-scalability, with visual dials & readouts to show the changing bitrate, stereo mode and audio bandwidth of the seamlessly changing Opus stream (and I checked the source, it is playing Opus, and uses scripting to coordinate the readouts). I believe this was the 8-64kbps bitrate sweep demo of the Dave Matthews Band codec killer excerpt played part-way through Jean-Marc Valin's Linuxconf Australia presentation "The Swiss Army Knife of audio codecs", but now you can hear it in native Opus, being handled properly by Firefox.
Dynamic – the artist formerly known as DickD


Opus is now RFC6716, version 1.0.1 released!

Reply #38
Thanks. Had been getting unsupported format or corrupt error. Must have somehow got two version of fb2k installed, and was using wrong one (v1.1.12), possibly on different User Accounts. Works perfectly now.
Dynamic – the artist formerly known as DickD

Opus is now RFC6716, version 1.0.1 released!

Reply #39
Hi all 
Today foobar2k released the free encoder pack containing opusenc already which made me try out this.
As I don't understand too much spectral graphs I see the high cutoff range is set to 20kHz by 96kbps which makes me think the codec's ambitions are really high, and I'm really impressed about the sound
I have several more questions:
Is the average vbr mode fixed to 96kbps or can it be increased yet higher?
What does the complexity option affect when not the bitrate (what's the advantage of complexity <10)?
What bitrates of Vorbis, AAC and MP3 (all in VBR modes) are counterparts to Opus at complexity 10 (approximately) as for sound quality?
Are Opus's chances to become more standard supported by wide range of hardware players higher than Voirbis's?
Keep on developing this great codec 

Opus is now RFC6716, version 1.0.1 released!

Reply #40
Today foobar2k released the free encoder pack containing opusenc already which made me try out this.

TWIMC: this pack contains opusenc opus-tools 0.1.5 (using libopus 1.0.1-rc3) The same exe is available here: https://ftp.mozilla.org/pub/mozilla.org/opu...0.1.5-win32.zip

Opus is now RFC6716, version 1.0.1 released!

Reply #41
Is there a binary of Opus Tools using libopus 1.0.1 final?

Opus is now RFC6716, version 1.0.1 released!

Reply #42
@Anakunda:

Opus is designed with realtime communications in mind. The main targets are VoIP (phone calls, player communication in multiplayer games) and even realtime networked audio over internet (if there is enough low latency).

But due to the way it is designed, it scales very well from very low bitrate for voice communication, to full bandwith music, at bitrates that compete and even surpass Vorbis. As such, it is also interesting to use it for audio storage.

As for the specific questions you make about the encoder binary/settings, the opusenc help page might help.

Finally, being an RFC means that it is in a position to become an internet standard (and, for example, Mozilla Firefox already supports it)

Opus is now RFC6716, version 1.0.1 released!

Reply #43
[JAZ], What are you talking about?

Is there a binary of Opus Tools using libopus 1.0.1 final?

No there isn't yet, last one for Windows is RC3.


Opus is now RFC6716, version 1.0.1 released!

Reply #45
Both 64 and 96 kbps streams sound great, though I'd love to be able to listen through fb2k as well

???
File > Add location > http://icecast-beta.timlradio.co.uk:8000/ac96.opus > OK

It's worth to try an experimental branch as it has an unconstrained VBR and  quality improvements. https://people.xiph.org/~greg/opus-tools_exp_tfsel5.zip
Probably  1.1 beta will be realesed in a near future.



Opus is now RFC6716, version 1.0.1 released!

Reply #46
Is there a binary of Opus Tools using libopus 1.0.1 final?

https://code.google.com/p/mulder/downloads/....2012-09-22.zip

These builds are based on 1.0.1 from 0.1.5 binaries...so, 1.0.1 RC3, not the final 1.0.1

Again, can anyone confirm there are no changes between 1.0.1 RC3 and 1.0.1?

Opus is now RFC6716, version 1.0.1 released!

Reply #47
Thank U for the updated encoder 


Opus is now RFC6716, version 1.0.1 released!

Reply #49
As I don't understand too much spectral graphs I see the high cutoff range is set to 20kHz by 96kbps which makes me think the codec's ambitions are really high, and I'm really impressed about the sound

About opus and lowpass.


Is the average vbr mode fixed to 96kbps or can it be increased yet higher?

VBR goes up to ~510-513 kbps if You wish.

What does the complexity option affect when not the bitrate (what's the advantage of complexity <10)?

Less complexity, higher speed, lower quality.

What bitrates of Vorbis, AAC and MP3 (all in VBR modes) are counterparts to Opus at complexity 10 (approximately) as for sound quality?

Opus is clearly superior at 64kbps. It's hard to judge which is better between AAC, Vorbis and Opus at 96 kbps and higher as quality is already pretty good. A future public tests should clear this.