IPB

Welcome Guest ( Log In | Register )

Vorbis (development) resurrection, surround...
LordWarlock
post Feb 28 2010, 22:47
Post #1





Group: Members
Posts: 120
Joined: 21-August 05
Member No.: 24044



Vorbis surround update.
Go to the top of the page
+Quote Post
 
Start new topic
Replies
SebastianG
post Mar 28 2010, 17:31
Post #2





Group: Developer
Posts: 1318
Joined: 20-March 04
From: Göttingen (DE)
Member No.: 12875



QUOTE (NullC @ Mar 27 2010, 00:16) *
That isn't what it says at all.

You're right. I was kind of reading between the lines and adding my bits from what I've learned writing an Ogg/Vorbis decoder from scratch a couple of years ago. It was sort of the first thing that came to my mind while reading the text.

QUOTE (NullC @ Mar 27 2010, 00:16) *
Just because a particular linear transform doesn't compact all the energy doesn't make it useless.

It isn't linear and that's actually a big issue. I still think it serves no purpose. I base this on the things you can find in the specification -- not on the figures you referred to (figures showing results from a specific implementation of the specification).

QUOTE (xiphmont @ Mar 28 2010, 07:01) *
QUOTE (SebastianG @ Mar 16 2010, 08:57) *

[...] "square polar mapping" is essentially useless. [...]

Yes and no. It's not useful all by itself as a lossless coupling. It would need to be switched on to gain in those cases where the spectral content of the coupled channels is similar

What gain? When you switch it on between two channels, it's on for the whole spectrum. If it's on for the whole spectrum and don't want to mess with the phase for lower frequencies you have to losslessly code "magnitude" and "angle" in those regions. But this nonlinear mapping introduces the dependency -2|mag| <= ang <= 2|mag|, so you have to use channel-interleaved vector quantization ("residue 2" + VQ, I'll just use "CIVQ" for short) in order to avoid wasting bits. However, I get the same effect by removing SPM and replacing the vector codebooks. Even for things like "point stereo" one could use "sparse" vector code books. No need for SPM. I'm not claiming to have it figured out 100% -- after all, I didn't write an encoder from scratch. So, maybe it's really much more convenient to use SPM for things like point stereo (in the sense that it allows the codec setup packets with the code books to be smaller). If that's not the case then either of us misses something. The use of SPM requires CIVQ. But CIVQ kind of makes SPM obsolete, doesn't it?. If i remember correctly we've had this conversation already. If my memory serves me well, your reply to that was something along the lines of "SPM still helps during multipass encoding" but I could neither figure out how nor do I remember you telling me why you think so.

QUOTE (xiphmont @ Mar 28 2010, 07:01) *
Like mid/side, square polar is a liability in a lossless encoding because it increases the random energy content of the result.

huh.gif

Cheers,
SG
Go to the top of the page
+Quote Post
SebastianG
post Apr 5 2010, 15:25
Post #3





Group: Developer
Posts: 1318
Joined: 20-March 04
From: Göttingen (DE)
Member No.: 12875



QUOTE (SebastianG @ Mar 28 2010, 17:31) *
QUOTE (xiphmont @ Mar 28 2010, 07:01) *

QUOTE (SebastianG @ Mar 16 2010, 08:57) *

[...] "square polar mapping" is essentially useless. [...]

Yes and no. It's not useful all by itself as a lossless coupling. It would need to be switched on to gain in those cases where the spectral content of the coupled channels is similar

What gain? [...]


Quoting from stereo.html:
QUOTE
The astute reader, at this point, will notice that in the theoretical case in which we can use monolithic codebooks of arbitrarily large size, we can directly interleave and encode left and right without polar mapping; in fact, the polar mapping does not appear to lend any benefit whatsoever to the efficiency of the entropy coding.

Bingo. It doesn't "appear" that way -- not to me. I would love to read explanations for this.
QUOTE
In fact, it is perfectly possible and reasonable to build a Vorbis encoder that dispenses with polar mapping entirely and merely interleaves the channel.

Yeah, that's what I said.
QUOTE
However, when we leave the ideal/theoretical domain, we notice that polar mapping does give additional practical benefits, as discussed in the above section on polar mapping and summarized again here:
  • Polar mapping aids in controlling entropy 'leakage' between stages of a cascaded codebook.
  • Polar mapping separates the stereo image into point and diffuse components which may be analyzed and handled differently.

Someone please explain this to me. I don't get it. What's "entropy leakage"? Where exactly is the benefit of SPM for "casdaded codebooks"? Encoders can analyze as much as they want. This doesn't require the use of SPM in the coded bitstream. What does "handled differently" exactly mean in this context? We cannot handle them separately during coding without wasting precious bits which makes us use CIVQ to compensate for it. With CIVQ in use, SPM becomes "pretty much" obsolete. The only thing I can imagine where SPM might be useful (in not-yet-existing encoders) and this might be what Monty referred to by "handled differently" is that if you treat VQ and SPM as a single "vector coding black box" you can represent code books with code vectors distributed like this:
CODE
   +     +     +
       +     +
     +     +
   +    [+]    +
       +     +
     +     +
   +     +     +

(effectivly, higher resolution "magnitude" and lower resolution "angle") more efficiently because you don't need the "tesselated VQ mode" for emulating this without SPM. But this only reduces the size of the codec setup packet (which is good, no question) -- not the actual audio packets, unfortunately. But as far as I know this hasn't been done in any encoders, and yet, Monty suggests the existence of actual benefits in todays encoders.

Cheers,
SG

This post has been edited by SebastianG: Apr 5 2010, 15:30
Go to the top of the page
+Quote Post

Posts in this topic
- LordWarlock   Vorbis (development) resurrection   Feb 28 2010, 22:47
- - fedetxf   This makes sense seeing the increased interest in ...   Mar 1 2010, 18:47
- - skamp   Who wants us to watch movies in a web browser? Ple...   Mar 2 2010, 05:49
- - HotshotGG   Ohh nice it's 100x times easier to understand ...   Mar 2 2010, 14:43
- - timcupery   I'm not hot for watching movies in a browser, ...   Mar 2 2010, 18:13
- - HotshotGG   QUOTE Theora is improved to the point that it...   Mar 2 2010, 21:16
|- - timcupery   QUOTE (HotshotGG @ Mar 2 2010, 15:16) I t...   Mar 3 2010, 05:52
- - gameplaya15143   QUOTE (LordWarlock @ Feb 28 2010, 16:47) ...   Mar 7 2010, 06:43
- - bawjaws   Update #2 http://people.xiph.org/~xiphmont/surrou...   Mar 16 2010, 11:23
|- - SebastianG   QUOTE (bawjaws @ Mar 16 2010, 11:23) Upda...   Mar 16 2010, 13:57
|- - bawjaws   Xiph have added a web page with ideas for where pe...   Mar 22 2010, 12:24
|- - NullC   QUOTE (SebastianG @ Mar 16 2010, 05:57) Q...   Mar 27 2010, 00:16
|- - xiphmont   QUOTE (SebastianG @ Mar 16 2010, 08:57) L...   Mar 28 2010, 07:01
|- - saratoga   xiphmont: As long as you're here, could I a...   Mar 29 2010, 01:14
- - HotshotGG   QUOTE Update #2 http://people.xiph.org/~xiphmont/...   Mar 16 2010, 13:37
- - HotshotGG   QUOTE Xiph have added a web page with ideas for wh...   Mar 22 2010, 17:11
- - LordWarlock   Released as libao 1.0.0, libVorbis 1.3.1 and vorbi...   Mar 27 2010, 10:39
- - SebastianG   QUOTE (NullC @ Mar 27 2010, 00:16) That i...   Mar 28 2010, 17:31
- - SebastianG   QUOTE (SebastianG @ Mar 28 2010, 17:31) Q...   Apr 5 2010, 15:25


Reply to this topicStart new topic
1 User(s) are reading this topic (1 Guests and 0 Anonymous Users)
0 Members:

 



RSS Lo-Fi Version Time is now: 31st October 2014 - 15:32