Lossless Extensions for Opus (Backwards Compatible), How to embed lossless deltas inside an Opus stream |
![]() ![]() |
Lossless Extensions for Opus (Backwards Compatible), How to embed lossless deltas inside an Opus stream |
Mar 29 2013, 15:10
Post
#76
|
|
|
Group: Developer Posts: 618 Joined: 6-December 08 From: Erlangen Germany Member No.: 64012 |
I'm not going to stop until I see for myself that this will not work well. This is an exemplary attitude! Sometimes I wish we had a bit more of this in the scientific and engineering world, since it's often the only way to achieve progress. Honestly, good luck with your project. And please, do let us know about your findings. Chris -------------------- If I don't reply to your reply, it means I agree with you.
|
|
|
|
Mar 30 2013, 22:58
Post
#77
|
|
|
Group: Members Posts: 82 Joined: 11-December 06 Member No.: 38563 |
I'll just use this thread as sort of a log.
Anyway, I've tested Monkey's Audio against Opus residuals at a variety of bitrates and it is proving to be competitive against OptimFROG. Given that I have no idea what lossless codec may eventually be used to compress the residuals, I need to redo the principles of operation to accommodate one that uses variable frame sizes (that is, other than 60 ms, which I have been assuming up until now). It is highly likely that there will be many Opus packets for each delta packet, and this ratio is likely to vary throughout a stream. |
|
|
|
Mar 31 2013, 10:54
Post
#78
|
|
![]() Group: Members Posts: 733 Joined: 17-September 06 Member No.: 35307 |
With mention of an open lossy codec being a requirement, the other option is Ogg Vorbis, which supports specific sampling rates and isn't too far behind Opus in bitrate efficiency and is an open format that has fairly widespread support in the wild (main exception being Apple, despite Wikipedia's use of Vorbis). Then you have no worry about resampling consistently so that the hybrid remains lossless. You then just need to presumably place non-Vorbis packets in the Ogg stream that all Vorbis decoders (except your hybrid decoder) will ignore. Presumably it would also be easy to strip out only Vorbis packets from the Ogg stream to obtain a smaller lossy file.
The other option where sampling rate can be specified and still be expected to play is Xiph.org's CELT (forerunner to the CELT half of Opus you're thinking of), but plain CELT decoder support in the wild is very limited and will very likely remain so now Opus has superceded it, even though I believe Google's plugin for Chat/Hangouts uses CELT in its new Studio mode (click Learn More in this link) and will possibly implement Opus in due course, possibly piggybacking on WebRTC integration. On the positive side for Opus, it's possible that being standardized by IETF with clearly specified open patent licensing, support will eventually surpass that of Vorbis. |
|
|
|
Mar 31 2013, 11:55
Post
#79
|
|
![]() Group: Members Posts: 512 Joined: 4-June 02 Member No.: 2220 |
Dynamic's suggestion is very interesting. In addition to the points mentioned there are a few other things I wanted rehearse here:
- former lossless Vorbis [q 10] discontinued; - new iteration of Vorbis, possibly ditched due to Ghost/OPUS and the possibility of broken compatibility; - the AoTuV project low-bitrate settings (q-1, q-2) sounded better to me than Speex at comparable bitrate, IMO. -------------------- "Something bothering you, Mister Spock?"
|
|
|
|
Mar 31 2013, 15:40
Post
#80
|
|
|
Group: Members Posts: 82 Joined: 11-December 06 Member No.: 38563 |
One of the main reasons for choosing Opus is because of the IETF standardization Dynamic mentioned. Also, Opus lets me extend it at the sub-container level. There should be no reason a lossless/hybrid stream can't be placed in any container that can handle standardized Opus. My hybrid encoder API so far is completely container agnostic.
This post has been edited by wswartzendruber: Mar 31 2013, 15:40 |
|
|
|
Apr 1 2013, 22:52
Post
#81
|
|
|
Group: Members Posts: 82 Joined: 11-December 06 Member No.: 38563 |
Florin got back to me. He's just in a bit of a personal dilemma and estimates reviewing my comments in one week.
This post has been edited by wswartzendruber: Apr 1 2013, 22:52 |
|
|
|
Apr 19 2013, 06:38
Post
#82
|
|
|
Group: Members Posts: 82 Joined: 11-December 06 Member No.: 38563 |
One week, right. I think he's in a bit more of a jam than he admitted.
Whatever. As soon as libopus-1.1 comes out, I'm gonna start gutting the tree until I have a fixed-point decoder and nothing else. |
|
|
|
![]() ![]() |
|
Lo-Fi Version | Time is now: 19th May 2013 - 09:15 |