[Vorbis-dev] Ambisonics in Ogg Vorbis

Paul Martin pm at nowster.zetnet.co.uk
Wed Apr 25 14:08:07 PDT 2007


On Wed, Apr 25, 2007 at 03:09:12PM +0200, Sebastian Olter wrote:
> Paul Martin:
> 
> >0.3536,0.3536,0.3536,0.3536,\
> >0.1768,0.1768,-0.1768,-0.1768,\
> >0.1768,- 0.1768,-0.1768,0.1768,\
> 
> 
> This means, despite the overall -9dB gain,
> LF=W+(X+Y)/2,
> RF=W+(X-Y)/2,
> LB=W-(X-Y)/2,
> RB=W-(X+Y)/2.
> 
> The exact solution (i.e. velocity decode) for the Furse-Malham equation set
> applied to a regular square is
> 
> L = 1.4 W + X/cos π/4 + Y/sin π/4 = 1.4 (W+X+Y)
> 
> and so on, which means that we should talk about cardioid decode here rather
> than energy decode.

Simplifying that by multiplying through by 1/sqrt(2), we have:

  LF = W' + X + Y
  RF = W' + X - Y
  LB = W' - X + Y
  RB = W' - X - Y

I go to equation 4.2 in Richard Lee's document, where (after
multiplying through by sqrt(2) so that it's equivalent to the above
equations):

  LB = W * sqrt(2) - X + Y

Lee calls this an "Energy decode", and that "Velocity" and "Cardioid"
decodes are 3dB either way from that. Therefore for the equations
above:

  Velocity decode has W' = W
  Energy decode has   W' = W + 3dB    [ W' = W * sqrt(2) ]
  Cardioid decode has W' = W + 6dB    [ W' = W * 2 ]

These agree with the "controlled opposites" decodes by Richard Furse
(of Furse-Malham).

Now, if I'm right with the -3dB on the W channel (which I have,
privately been told is wrong), I work out that my decode *is* right
for the "Energy" decode. If the W channel doesn't already have such a
correction applied, then that would make mine a "Cardioid" decode.

It's interesting that Richard Lee's document has the note:

  IMPORTANT CORRECTION

  The rectangular decoders in the early 5mar06 edition is (sic) wrong.
  Please destroy any copies of that document.



-- 
Paul Martin <pm at zetnet.net> (work)
  <pm at nowster.zetnet.co.uk> (home)


More information about the Vorbis-dev mailing list