as usual Michael is behind the times with anything libav/ffmpeg related (virtually any AV related 3rd party app worth mentioning uses one or the other today as its core work horse) but basically any app that uses a current libav/ffmpeg can use opus decoding now once they update their version with this patch , im not aware of any encode patches at this time, not that it matters as the only one that matters is AAC along with AVC for video if you care about hardware assisted encode/decode and lower power usage not to mention better quality AV per used bit all round
Originally Posted by Aleve Sicofante
May 22, 2012
... This patch adds preliminary Opus audio decoding support with libopus for libav.The patch does not currently utilize multistreams, channel mapping and output gain.
Retaining copyright to Nicolas George (Cigaes) as most of the code was reused from the existing CELT decoding code."
Last edited by popper; 05-31-2012 at 02:03 PM.
I don't comment here on TMZ often, but I would like to offer my 3 cents for anyone who has made it to this post.
I don't code on the actual codec, but I have been hanging out and working with the people who do for over a year now. I'm a computer audio and music enthusiast, and have been listening to music stored in computer files since the mid 90's when hard drives were only slightly more roomy than CD's. The vast majority of my personal music collection is in FLAC format, and I am particularly annoyed by compression artifacts in all forms.
Opus is the best lossy audio codec ever developed. There is only two scenario's where you would not want to use Opus. The first is if you want a perfect copy, then you would use FLAC. The other is if your trying to use insanely low bitrates such as below 1K per second, in such case you want the codec known as Codec2.
In my experience Vorbis is 'transparent' to me (meaning no way I could tell you if it was lossless or not by just listening) at Q7, which is about 192k per second. MP3 at 320k, and for AAC I haven't heard any at a high bitrate so I can't tell you, but every use of it is at a lower rate, which sounds quite bad to me.
To me Opus is transparent at 128k, and this means for particularly hard music for codecs such as Norwegian Black Metal. Minimal techno and related music could fool me at 64k per second. Above around 96k per second you probably couldn't do a scientific study and get meaningful results, but I suppose well have to wait for the science to come in on that. The actual developers of the project maybe more conservative on sweeping statements and such, but I am not afraid to stick my neck out. For the vast majority of digital audio needs, Opus is the best choice.
The core software is pretty much ready to go, and we are working now on spreading support across the open source ecosystem, if you are a developer of audio software, stop by #opus on freenode IRC. We are happy to help.
Thanks David, that was interesting to know.
What's the catch? Does it use 10x the cpu compared to Vorbis decoding and 50x encoding, etc?
The catch would probably be that, Opus didn't exist until now. All those years of not having it, were a PITA.
[oneman@rawdod4::/data2/music/music/Kraftwerk - The Man-Machine (1978) [FLAC]]$ time opusenc --bitrate 128 04\ -\ The\ Model.wav 04\ -\ The\ Model.opus
Encoding using libopus 0.9.11-55-g7143b2d (audio)
Input: 44.1kHz 2 channels
Output: 2 channels (2 coupled)
20ms packets, 128kbit/sec VBR
Encoded: 3 minutes and 42.52 seconds
Runtime: 6.074 seconds
Wrote: 3439926 bytes, 11126 packets, 225 pages
Bitrate: 122.682kbit/s (without overhead)
Rate range: 1.2kbit/s to 221.2kbit/s
(3 to 553 bytes per packet)
Overhead: 0.8% (container+metadata)
Nice, it's as fast encoding. I do wonder about decoding still.
it takes about 1.2 seconds to decode one minute of opus
[oneman@rawdod4::/data2/music/music/Kraftwerk - The Man-Machine (1978) [FLAC]]$ time opusdec 04\ -\ The\ Model.opus 04\ -\ The\ Model.wav.test
Decoding 44100 Hz audio (2 channels)
Encoded with 0.1.0 0.1.0 (using libopus 0.9.11-55-g7143b2d)
[oneman@rawdod4::/data2/music/music/Kraftwerk - The Man-Machine (1978) [FLAC]]$
OK, so decoding opus needs five times the cpu of vorbis, approximately.
I would never reccomend storing your music collection in Opus. Opus is a CBR or constant bit rate codec. If you're going to store your music, you should either store it in a lossless or in a lossy VBR or variable bit rate codec. It should be noted that opus simply blows it's competitors out of the water when it comes to telephony. It would be amazing if all phones started using opus. It would be a great victory for open source in multimedia. Unless I am mistaken, after Opus, Xiph will begin focusing its efforts on transogg (a new media container), ghost (a new VBR lossy/lossless hybrid audio codec that is meant to be by far the best standard lossy audio codec), and daala (a new lossy video codec that is indended to be better than h.265). I'm sure they could use all the help they can get against MPEG LA, but if Opus is any indication, then maybe we can eventually win the fight for open codecs.
Last edited by Prescience500; 06-04-2012 at 11:06 PM.