Log in

View Full Version : [Updated 2019] Opus 1.3. New WebM audio codec (Opus+VP9/AV1)


Pages : 1 2 [3] 4 5

Barough
17th March 2017, 17:46
Opus-tools v0.1.10-1-gd0dc36b (using libopus 1.2-alpha2-29-gc293dede)
Built on Mar 17, 2017, GCC 6.3.0

Opus-tools v0.1.10-1-gd0dc36b (using libopus 1.2-alpha2-29-gc293dede) (http://www51.zippyshare.com/v/cuVUi1qn/file.html) (MSYS/MinGW, GCC 6.3.0, 32 & 64bit EXEs)

https://git.xiph.org/?p=opus.git;a=summary
https://git.xiph.org/?p=opus-tools.git;a=summary

VincAlastor
17th March 2017, 21:03
Opus-tools v0.1.10-1-gd0dc36b (using libopus 1.2-alpha2-29-gc293dede)
Built on Mar 17, 2017, GCC 6.3.0

Opus-tools v0.1.10-1-gd0dc36b (using libopus 1.2-alpha2-29-gc293dede) (http://www51.zippyshare.com/v/cuVUi1qn/file.html) (MSYS/MinGW, GCC 6.3.0, 32 & 64bit EXEs)

https://git.xiph.org/?p=opus.git;a=summary
https://git.xiph.org/?p=opus-tools.git;a=summary

thank you very much for sharing and keep us uptodate.

LoRd_MuldeR
18th March 2017, 21:58
FWIW, here is a set of fresh Opus v1.2-alpha2 binaries:
opus-tools.2017-03-18.zip (https://sourceforge.net/projects/muldersoft/files/Opus%20Tools/opus-tools.2017-03-18.zip/download)
https://www.mediafire.com/folder/w9d33485q6zxa/Opus_Tools

SSE2 and AVX optimized builds included. All 'opusenc' binaries have libFLAC support enabled.

Gravitator
19th March 2017, 12:36
Привет!
На улице весенний гололед :(
Poorly copes with the increased parameters of framesize > Download (https://files.videohelp.com/u/227452/Opus%201.2-RC1.7z)

VincAlastor
19th March 2017, 23:24
FWIW, here is a set of fresh Opus v1.2-alpha2 binaries:
opus-tools.2017-03-18.zip (https://sourceforge.net/projects/muldersoft/files/Opus%20Tools/opus-tools.2017-03-18.zip/download)
https://www.mediafire.com/folder/w9d33485q6zxa/Opus_Tools

SSE2 and AVX optimized builds included. All 'opusenc' binaries have libFLAC support enabled.

:thanks: too

nakTT
20th March 2017, 05:57
FWIW, here is a set of fresh Opus v1.2-alpha2 binaries:
opus-tools.2017-03-18.zip (https://sourceforge.net/projects/muldersoft/files/Opus%20Tools/opus-tools.2017-03-18.zip/download)
https://www.mediafire.com/folder/w9d33485q6zxa/Opus_Tools

SSE2 and AVX optimized builds included. All 'opusenc' binaries have libFLAC support enabled.

Thank you so much. The SSE2 version works for me.:thanks:

Reino
24th March 2017, 10:59
Looks like they have implemented a fix recently:
https://git.xiph.org/?p=opus-tools.git;a=commit;h=d0dc36b7318d13614d4854681d83e3d5123e9536

They use a somewhat different way to check whether the FILE is a "regular" file or a pipe - a way that requires using Win32 API directly - but the result should be the same.FWIW, here is a set of fresh Opus v1.2-alpha2 binaries:
opus-tools.2017-03-18.zip (https://sourceforge.net/projects/muldersoft/files/Opus%20Tools/opus-tools.2017-03-18.zip/download)

Thanks, LoRd_MuldeR. It looks like 'OpusTools-v0.1.9-PipeSeekFix.V1.diff' isn't needed anymore, as piping 24/32bit float audio from FFMpeg to opusenc.exe now works without it indeed. ;)

VincAlastor
6th May 2017, 12:55
@LoRd_MuldeR thanks again for your builds and keeping us up to date :)

Built on 2017-05-05, by LoRd_MuldeR

https://www.videohelp.com/download/opus-tools.2017-05-05.zip

edit:

Built on 2017-05-06, by LoRd_MuldeR

https://www.videohelp.com/download/opus-tools.2017-05-06.zip

hajj_3
25th May 2017, 01:17
Opus 1.2 beta out now: https://www.opus-codec.org/release/dev/2017/05/24/libopus-1_2_beta.html

VincAlastor
27th May 2017, 10:27
Opus 1.2 beta out now: https://www.opus-codec.org/release/dev/2017/05/24/libopus-1_2_beta.html

windows build? :thanks:

Gravitator
27th May 2017, 10:46
Opus-tools-0.1.10-9-gbd65450 (using libopus 1.2-beta-6-g92422f6e)_x86_x64_gcc630.7z (https://hydrogenaud.io/index.php?action=dlattach;topic=113009.0;attach=11180)

VincAlastor
27th May 2017, 10:51
Opus-tools-0.1.10-9-gbd65450 (using libopus 1.2-beta-6-g92422f6e)_x86_x64_gcc630.7z (https://hydrogenaud.io/index.php?action=dlattach;topic=113009.0;attach=11180)

:thanks::thanks::thanks:

hajj_3
9th June 2017, 12:28
Opus 1.2 RC1 out now. Changes compared to 1.2-beta include:

Improves quality on files with powerful tones that cause MDCT leakage
Improves bit allocation on mode transitions (CELT to/from SILK/hybrid)
More ARM Neon optimizations
Fixes to the speech/music detection at the very beginning of files
Fixes to the unit tests (fixes illegal instructions and –disable-static)

https://opus-codec.org/

VincAlastor
10th June 2017, 10:21
Opus 1.2 RC1 out now. Changes compared to 1.2-beta include:

Improves quality on files with powerful tones that cause MDCT leakage
Improves bit allocation on mode transitions (CELT to/from SILK/hybrid)
More ARM Neon optimizations
Fixes to the speech/music detection at the very beginning of files
Fixes to the unit tests (fixes illegal instructions and –disable-static)

https://opus-codec.org/


x64 test builds:

https://hydrogenaud.io/index.php?action=dlattach;topic=114185.0;attach=11227

https://hydrogenaud.io/index.php?action=dlattach;topic=114185.0;attach=11224

Gravitator
10th June 2017, 11:35
My file is still very dirty coded with an improved Opus (not recommended to move away from the standard parameter framesize - 10) > Download (https://files.videohelp.com/u/227452/Opus%201.2-RC1.7z)

IgorC
10th June 2017, 22:10
It's recommended to use default frame size (20 ms).
Opus isn't x264 where "higher numbers" means better

LoRd_MuldeR
11th June 2017, 16:05
It's recommended to use default frame size (20 ms).
Opus isn't x264 where "higher numbers" means better

Actually there are a lot of options in x264 as well where you don't want to go too high (even if encoding speed doesn't matter), e.g. Deblock-Parameter, Psy-RDO, Psy-Trellis, AQ-Strength.

The conclusion has to be that one should never mess with an encoder option, unless the consequences are well understood/tested. Some info on tweaking the Opus frame size can be found here:
https://wiki.xiph.org/Opus_Recommended_Settings#Framesize_Tweaking

tl;dr:
„Unless operating at very low bitrates over RTP, there is no reason to use frame sizes above 20 ms [...] the default 20 ms frames are a good choice for most applications.“

IgorC
11th June 2017, 20:01
Correct, Lord_Murder.

More reason not to mess with some settings.

jmvalin
13th June 2017, 07:21
Correct, Lord_Murder.
More reason not to mess with some settings.

When it comes to Opus encoder settings, the fundamental design principle is that the default settings give you the optimal quality and then any options you specify means "I'm willing to get slightly worse quality in exchange for feature X". The feature X can be something like lower delay for real-time use, better robustness to packet loss, this rate management, ... If if you don't need anything special, you don't need any option -- well except for the target bitrate I guess.

Gravitator
13th June 2017, 10:04
It's recommended to use default frame size (20 ms).

Thank you for correcting me.
---------

You are the owner of audiophilesoft.ru (http://audiophilesoft.ru/) ?

IgorC
17th June 2017, 19:41
You are the owner of audiophilesoft.ru (http://audiophilesoft.ru/) ?
The admin is a mate Steve Forte Rio (hydrogenaudio member)

jmvalin
21st June 2017, 04:39
FYI, Opus 1.2 has just been released, along with a demo (https://people.xiph.org/~jm/opus/opus-1.2/) showing the recent improvements and how the quality and speed improved compared to 1.0 and 1.1.

hajj_3
23rd June 2017, 22:13
could a moderator update the title to v1.2 please.

nakTT
24th June 2017, 05:54
Finally, the 1.2 stable release is here.

Glad the hear the news.

This Opus 1.2 major release brings many quality improvements, new features, and bug fixes. You can read all the details in this release demo page. Changes since 1.1.x include:

- Speech quality improvements especially in the 12-20 kbit/s range
- Improved VBR encoding for hybrid mode
- More aggressive use of wider speech bandwidth, including fullband speech starting at 14 kbit/s
- Music quality improvements in the 32-48 kb/s range
- Generic and SSE CELT optimizations
- Support for directly encoding packets up to 120 ms
- DTX support for CELT mode
- SILK CBR improvements
- Support for all of the fixes in draft-ietf-codec-opus-update-06 (the mono downmix and the folding fixes need --enable-update-draft)
- Many bug fixes, including integer wrap-arounds discovered through fuzzing (no security implications)

There are no known regressions compared to the latest stable release (1.1.5). Please report any problems.

tebasuna51
24th June 2017, 10:30
could a moderator update the title to v1.2 please.

Update the title of first post correspond to owner, IgorC, than seems still a active Doom9 user.

Comments and links must be also modified to point to the new version to avoid confusions.

Like title was changed (not for me) I make some edit waiting to IgorC action.

IgorC
25th June 2017, 17:52
Thank You, tebasuna

I have modified the OP somewhat more.

Including this:
Many players as MPC, VLC, foobar2000 (Windows, Android, iOS, Windows Phone) support Opus format as well as Rockbox (a firmware for portable players). https://www.rockbox.org/

You can play Opus files on your Android/Apple iOS/Windows Phone smartphones/tablets via foobar2000 http://mobile.foobar2000.com/

For more information
http://wiki.hydrogenaud.io/index.php?title=Opus

IgorC
8th July 2017, 17:13
This Opus 1.2.1 minor release fixes a relatively rare issue where the 1.2 encoder would wrongly assume a signal to be bandlimited to 12 kHz and not encode frequencies between 12 and 20 kHz. This only happens on a few clips, but it is good to update to avoid a potential loss of quality.

There are no other changes compared to 1.2. Please report any problems.

Official builds

Win64 https://ci.appveyor.com/api/buildjobs/pd5jp1d0dv3ml1w7/artifacts/opus-tools.zip

Win32 https://ci.appveyor.com/api/buildjobs/0532d1twvfk2gwqm/artifacts/opus-tools.zip

You can also find some custom builds here
https://hydrogenaud.io/index.php/topic,114234.msg941283.html#msg941283

Midzuki
8th July 2017, 17:22
Official builds

Win64 https://ci.appveyor.com/api/buildjobs/pd5jp1d0dv3ml1w7/artifacts/opus-tools.zip

Win32 https://ci.appveyor.com/api/buildjobs/0532d1twvfk2gwqm/artifacts/opus-tools.zip

Thanks for the updated builds :thanks:

However both archives have the same filename...
not very wise, I must say.

IgorC
8th July 2017, 17:29
Midzuki
Yes, I've just posted links from a developer.


BTW I have also changed OP. Suggestions are welcome.
Hello,

It's a release of Opus 1.1 (UPDATED: and new 1.2.1)

http://upload.wikimedia.org/wikipedia/commons/thumb/0/02/Opus_logo2.svg/320px-Opus_logo2.svg.png


Demos
(version 1.1)http://people.xiph.org/~xiphmont/demo/opus/demo3.shtml
(version 1.2) https://people.xiph.org/~jm/opus/opus-1.2/

Previously Opus has shown excellent results beating LC-AAC, HE-AAC and Vorbis.

Public Multiformat Listening Test @ ~64 kbps [March 2011] (http://forum.doom9.org/showthread.php?t=160185)
Public Multiformat Listening Test @ ~96 kbps [2014] (http://listening-test.coresv.net/results.htm)

Official builds of Opus 1.2.1

Win64 https://ci.appveyor.com/api/buildjobs/pd5jp1d0dv3ml1w7/artifacts/opus-tools.zip

Win32 https://ci.appveyor.com/api/buildjobs/0532d1twvfk2gwqm/artifacts/opus-tools.zip

You can also find some custom builds here
https://hydrogenaud.io/index.php/topic,114234.msg941283.html#msg941283

Playback

You can play Opus files on your Android/Apple iOS/Windows Phone smartphones/tablets via foobar2000 http://mobile.foobar2000.com/

Many players as MPC, VLC, foobar2000 (Windows, Android, iOS, Windows Phone) support Opus format as well as Rockbox (a firmware for portable players). https://www.rockbox.org/

For more information
http://wiki.hydrogenaud.io/index.php?title=Opus

tebasuna51
8th July 2017, 18:43
Thanks IgorC, it's OK.

nakTT
9th July 2017, 04:35
Midzuki
Yes, I've just posted links from a developer.


BTW I have also changed OP. Suggestions are welcome.
Thanks for the sharing.

Btw, what is the difference between version 1.2 and 1.2.1?

Thank you in advance.

sneaker_ger
9th July 2017, 08:18
See post #127.

nakTT
9th July 2017, 16:37
See post #127.
Thanks. I missed that post. My bad.

stax76
9th July 2017, 19:32
There is a issue with flac input files created with ffmpeg.

Sample file:

https://www.mediafire.com/?rde2k68hb5unlho



-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
Convert from DTSMA to FLAC using ffmpeg 3.3.1 x64
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

D:\Projekte\VS\VB\StaxRip\bin\Apps\ffmpeg\ffmpeg.exe -i "D:\Temp\StaxRip\JB_temp\JB ID2 1ms English.dtsma" -y -hide_banner -ac 6 "D:\Temp\StaxRip\JB_temp\JB ID2 1ms English.flac"

Input #0, dts, from 'D:\Temp\StaxRip\JB_temp\JB ID2 1ms English.dtsma':
Duration: N/A, start: 0.000000, bitrate: N/A
Stream #0:0: Audio: dts (DTS-HD MA), 48000 Hz, 5.1(side), s32p (24 bit)
Stream mapping:
Stream #0:0 -> #0:0 (dts (dca) -> flac (native))
Press [q] to stop, [?] for help
Output #0, flac, to 'D:\Temp\StaxRip\JB_temp\JB ID2 1ms English.flac':
Metadata:
encoder : Lavf57.71.100
WAVEFORMATEXTENSIBLE_CHANNEL_MASK: 0x3f
Stream #0:0: Audio: flac, 48000 Hz, 5.1, s32 (24 bit), 128 kb/s
Metadata:
encoder : Lavc57.89.100 flac
video:0kB audio:2211kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.367996%

Start: 20:29:22
End: 20:29:23
Duration: 00:00:00

General
Complete name : D:\Temp\StaxRip\JB_temp\JB ID2 1ms English.flac
Format : FLAC
Format/Info : Free Lossless Audio Codec
File size : 2.17 MiB
Duration : 20 s 64 ms
Overall bit rate mode : Variable
Overall bit rate : 906 kb/s
Writing application : Lavf57.71.100

Audio
Format : FLAC
Format/Info : Free Lossless Audio Codec
Duration : 20 s 64 ms
Bit rate mode : Variable
Bit rate : 903 kb/s
Channel(s) : 6 channels
Channel positions : Front: L C R, Back: L R, LFE
Sampling rate : 48.0 kHz
Bit depth : 24 bits
Stream size : 2.16 MiB (100%)
Writing library : Lavf57.71.100

-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
Audio encoding using opusenc 1.2.1 x64
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

D:\Projekte\VS\VB\StaxRip\bin\Apps\opusenc\opusenc.exe --bitrate 160 --vbr "D:\Temp\StaxRip\JB_temp\JB ID2 1ms English.flac" "D:\Temp\StaxRip\JB_temp\JB ID2 1ms English_a1.opus"

Error parsing input file: D:\Temp\StaxRip\JB_temp\JB ID2 1ms English.flac

-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
Error Audio encoding using opusenc 1.2.1 x64
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

Audio encoding using opusenc 1.2.1 x64 failed with exit code: 1 (0x1)

stax76
9th July 2017, 19:34
Same problem with eac3to created FLAC files.

sneaker_ger
9th July 2017, 19:42
What build? Is it a build that's supposed to have FLAC support? Not all of them have it. If yes: any FLAC it does work with?

stax76
9th July 2017, 19:50
Even then there are still two issues, the help file says FLAC is supported:

1) opusenc reads audio data in Wave, AIFF, FLAC, Ogg/FLAC, or raw PCM format and encodes it into an Ogg Opus stream.

2) saying 'Error parsing input file' for an unsupported format isn't precise enough, it should say that the format isn't supported.

I've downloaded in the link posted in #129

When I run opusenc.exe I get:

The input format can be Wave, AIFF, or raw PCM.

Where can I get a 1.2.1 build with FLAC support?

sneaker_ger
9th July 2017, 20:07
1). Just call "opusenc.exe". It will tell you what input formats it supports. For the builds hotlinked in #129 it seems they don't support FLAC. Try the ones posted in the forum that's linked in the same post or build yourself.
2.) It may not be able to parse the input file for other reasons i.e. a file in a generally supported format but malformed. Saying something along the lines of "the format isn't supported" could be misleading.

stax76
9th July 2017, 20:13
Thanks, I found a build now.

stax76
9th July 2017, 21:01
Is any developer of opusenc reading here? I would like to request a normalize and a delay feature.

Can anybody tell me if there is a way to find out which version of the opus library is used by ffmpeg?

sneaker_ger
9th July 2017, 21:16
Are you using zeranoe's ffmpeg builds? He's already using 1.2.1. He lists the library versions at the bottom of his download site (https://ffmpeg.zeranoe.com/builds/).

stax76
9th July 2017, 21:22
I'll just scrap what I've worked the last 2 hours... :-(

LoRd_MuldeR
4th December 2017, 23:23
Opus-Tools v0.1.10-9, using libOpus v1.2.1-35 (2017-11-16):
https://sourceforge.net/projects/muldersoft/files/Opus%20Tools/opus-tools.2017-12-04.zip/download

VincAlastor
5th December 2017, 11:39
Opus-Tools v0.1.10-9, using libOpus v1.2.1-35 (2017-11-16):
https://sourceforge.net/projects/muldersoft/files/Opus%20Tools/opus-tools.2017-12-04.zip/download

:thanks:

Did you found a mentioned opus 1.3 release already?

https://public.etherpad-mozilla.org/p/daala-weekly-meeting

LoRd_MuldeR
5th December 2017, 14:48
Did you found a mentioned opus 1.3 release already?

Built straight from latest Git "master" branch. Probably that will be tagged as "v1.2.2" or maybe "v1.3" at some point...

VincAlastor
10th December 2017, 11:25
What's better for quality preserving encodes, in eac3to if requiered downmix to stereo and down sampling to 16 bit 48 KHz or let opusenc do this while encoding?

examples
eac3to stdout.wav -downstereo -down16 -resampleTo48000 | opusenc --ignorelength --bitrate 200 - %_.opus
or
eac3to stdout.wav | opusenc --downmix-stereo --ignorelength --bitrate 200 - %_.opus

tebasuna51
10th December 2017, 13:32
What's better for quality preserving encodes, in eac3to if requiered downmix to stereo and down sampling to 16 bit 48 KHz or let opusenc do this while encoding?

- Down sampling to 16 bit is not recommended at all.
- Resample to 48 KHz is only recommended if source have a greater samplerate. If not let the original samplerate.
- About the downmix method:

a) Seems than opusenc --downmix-stereo make this downmix:

FL' = 0.26xFL + 0.19xFC + 0.19xLFE + 0.23xSL + 0.13xSR
FR' = 0.26xFR + 0.19xFC + 0.19xLFE + 0.13xSL + 0.23xSR

- The mix uses normalized coeficients to avoid clip, but the output can be at low volume.
- Mix the LFE channel, not recommended always.
- Mix the surround channels like -downdpl (Dolby ProLogic)

b) With eac3to you can select your downmix method (-downdpl or -downstereo), add LFE (-mixlfe) or not, and -normalize to avoid clip and obtain the best volume.

My recommendation:

eac3to INPUT stdout.wav -downstereo -normalize | opusenc --ignorelength --bitrate 200 - OUTPUT.opus

(or COMMAND LINE in UsEac3to:
stdout.wav -downstereo -normalize | opusenc --ignorelength --bitrate 200 - %_.opus)

LoRd_MuldeR
10th December 2017, 15:31
- Down sampling to 16 bit is not recommended at all.

Generally agree. But he is going to compress it with Opus anyway.

While compressed audio doesn't really have a "bits per sample", as compressed audio doesn't store individual samples (it stores "frames", in frequency-domain), the average "bits per sample" in an Opus stream will probably be around ~2.

So, down-sampling to 16-Bit (from 24-Bit or 32-Bit FP) probably doesn't make a noticeable difference in this scenario, as the real "loss" happens in the Opus compression stage anyway.

- Resample to 48 KHz is only recommended if source have a greater samplerate. If not let the original samplerate.

Opus is a "48 KHz only" format, so anything not already 48 KHz will be up- or down-sampled to 48 KHz, by OpusEnc, before sending it to the actual Opus encoder library. OpusEnc uses its built-in Speex re-sampler for that job.

So, only reason to re-sample manually to 48 KHz before sending your audio to OpusEnc, IMO, would be if you want to use a different re-sampler than Speex...

tebasuna51
10th December 2017, 17:08
Opus is a "48 KHz only" format...

I didn't know.

By default eac3to uses SSRC (Shibatch) resampler, or r8brain resampler if you include the parameter -r8brain

VincAlastor
11th December 2017, 11:35
Thanks guys!
Without initiating a religious war, I would like to ask what is the better resampler. Speex or SSRC?
Can opus really receive and decode pro logic II information correctly?
And if I understand that correctly, it is better to let opus do a bit-down-sampling automatically if necessary, right?

edit:
ok, i've got the answer for what's the better resampler: it doesn't matter, you can't hear the better SOX/SSRC. Speex has no GPL conflict and that's ok.
https://hydrogenaud.io/index.php/topic,113655.0.html