< Back to IRCAM Forum

Spat.decoder bformat channel weighting

Hi. In spat.decoder @type=bformat, what is the channel weighting / normalisation? Is it FuMa or SN3D? I don’t seem to find this clarified in the documentation. Or in other words, if you use the spat.decoder for a FuMa source (or a Soundfield recording) do you need to divide W by 0.707107? This came up while using bformat2UHJ setting, where I am now unsure of what channel weighting the bformat2UHJ decoder is expecting. Unlike spat pan, the decoder can’t be set with an @norm argument. Thanks for info, apologies if this question has come up and I’ve missed the answer.

Hi Natasha,

This normalization is described in the spat.harmonics patcher.
You’ll see that “@type = bformat” corresponds neither to FuMa nor SN3D. It is provided only for backward compatibility with legacy versions of Spat~.
I would recommend not to use it.

As for the impact of normalization on UHJ transcoder, that’s a good question.
I’ll have to think about it.

T.

I see. So to be clear then, the bformat2UHJ transcoder is expecting spat’s own flavour of bformat, where all four channels have a different normalisation to anything else? (i.e. needing a manual conversion as spat-flavour bformat is not an option in hoaconverter). Or is bformat2UHJ expecting FuMa?

Thanks
Natasha

I’d say with 95% confidence that the UHJ transcoder expects FuMa.
For the remaining 5%, I need to clear my head and think about it…

T.

Also, two things to be careful about :

  • if you inspect the inlets of [spat.decoder~ @numinputs 4 @numoutputs 2 @type bformat2uhj], you’ll see that it expects W,X,Y,Z signals. So, this does not follow ACN channel ordering.
  • the bformat2uhj follows the spat coordinate convention where X axis points toward the right, and Y axis points forward. In most other HOA tools, X is pointing forward and Y to the left. So, you might need a 90° rotation…
  
----------begin_max5_patcher----------  
2524.3oc4cs0iihiF84T+JP4wcSmAay08odjVsRqztur6C8MMpDI3jP2DHBH  
U0yNZpe6quAApXHlT.wo6VpqpvDCGe746ye9Z9iGlMeU52w4yM9aFewX1r+3  
gYyXIQSXl35Yy2G780wA4rO17D7yoq957E7aUf+dAK4vf0uX.Lfk2H439ziE  
w3BVtLEotIMoHO5+gooA.KKS9PPw5cQIaeLCutfCFjoI41F1treA3WA7WZZ7  
ahLEExdwDv7NDXdsWPRvd1KX9ulEEDWCPQIk3ARS6Oe3A5OV71J3GLVsIMae  
PA73tuJuzCkU5gcU5cM8nkWjsM8WPSK9upU54O9he+.lmi44QaSnk1p+RFQ4  
zSdxpNDwYB1QPOjmRTL9IbVdTZBqLsPjdvgC0RdVsrP4zulxdPNKpRJJgmDn  
JoL7SQk42uJ0fLBQUPXoiYbj+cOm47aRpGenLqkrnsKUhYXwHQOGelfx18DK  
Rpx2Fmt9a3vZhTB2d.mDkbHCmiSJBJDvn51g3MAGiKdTd0Yy6uIXMt0LKsBX  
17sYQgoITPzHmzjKecew.vJTzedpvv9DIAGjj4bR43X9pfLJstJFWSVRzxoo  
wMuUUMIwjHHIhntwEQbvBMqdnQ6OjEkTz3EgSBHOic4qyRiia7n324II2IjT  
YuF+bTXwN1ypNUR93QGJqBlWwQgQaw4EMSqHXadyTZ3bqtJrtsdiz6xluoc+  
e4EBPsqeqlF8fZ2oEkByxplJqlC.HhYxirbn+xT7ipp5Vba.sL44hINrfu1q  
QmdNZ7gp4yvxc9qJJx0sxcxNqzQqvHc3qHd2Ku8Jg1oRtcFBtzdHnRO8lJGJ  
M84zoyXHLcza17u9xX4cPvl.u93bvYLDz1ZPUv5z86Ijjz5f+d6UAlpUErIa  
6plsJ0QECRHs8r6SMivrPjKnbqi5rt0Ux5f6cgOzhI4g1V8heg.lZ2dPk9Hs  
2W96LW5XaaYCGCO5BRE3yit1bXboC0aRcWT7JbVQG5a3aReifr38.r9F2W8M  
.x6xb+pJVb4JEfd6tgG0houmynD4BIPvS5bdmHe65by6AmGjVyLGEeG.GduW  
4bpKZP3TjulGKx+cZiEwykGTQubkTlIEiDA48yZjH7nog1t8OD7gMNDj6cPe  
JAd11tVigqDaay5tRbFFWIN+bGFRIo1uNXVlqQJLDj8cPXH9HeGez3MBJCrN  
25mEcdq74XIVQZfXsqfQxh1tqXrBHo0gS0xymONfWJvBH7G+.KZmkLGx.Df5  
v.UvAsZ5sNHFateO6xe1ZY1pcARsaTZfvlznIxvKFuYBs6bpa1AcujYGv6mQ  
yNmQvpC3d+a04zOiNfi1Zz84Izhy0qbopnROncz73D9zzwbUckSMlyUyYtON  
cLGBIFiR0XNOMm49vzwbt8Rx4qADG6opVqfs6cRzeG4tzOqot1GF6VKwlSfC  
+2FSH71zOl3R856NlODShzfxGv6X9vY3kGfAgNNsd+hiRZa4swJPz6KmmxSO  
lstD0kiWgAnAvCw4EQIUK+wubZVVLZRC6hBCatbC4qPub558iuxJUpVs2X9b  
nHGyzopWSvLcwzoDlgZDlQpxydmIhtYZC29fYMgm8TEyt5ClcTDy.MBy1pxy  
N2g1f12g1f15COadG1lB7NDy.UwLTavrxzLPeBQxVwv5jn6uYXV0lTX9WzDW  
cV8AyZj1PILqOMCpZqfH8oEEjxX1RavrpNmQ5SCJPUoYnFQypFfDXnr.M9sG  
puYImmG7DN7Qxq.ut3wfhhrnUGK3ioP8844acGMd4cLYO1leRAQGu71doaiS  
WEDK1YqU4UxtI7gSjXO2xvqJ22rR2VvHQpAYaEihCrZO61xByxEYsD333.cV  
XXgjtISjNJ2HukVj744RyFe9oLcYOIW3BCeut1XwahSCJpsjW5dGFWMy6yqn  
zbBhVtmT+GQd1GNVj+xRBKcHnP5VNFcE7byIS3zDI7etpci9YSdPqqvVSvRW  
5XlpdMgmoyRSx+b.zr4cZvEaaqsCs64V1FLf72+Zb4OW2dyett8k+btg72m6  
A+A6h+jHj7EamOS4ScUcN3VJg9zHRAHjxTP0hf5VvAeb73.WGKk4faIE7gQj  
BLgpKCtgTPTR9ABnM3O8eQvBFEoF6C9F1H+XF1nXG13CK93hOs3yFAjqWmlj  
PxCNz3YRXDr6+6F46ROFGV97owatN8HeBiPCj+5yYYKX88t.fulfrPsPyf6D  
mtWSiVPDcdRsP9p1lkncJKK6K2bEv+NwWcOkO1lrYWVMNv6NwWceMg365M03  
.26Dm0WgEjCwSs6IwfJlPVPO0kOSQDe6wE3rWjySfK5Jn5bch9SeyK26KokS  
qZudRe94qdTyacIjanOLkPnNVBElwCSIDnkkPt01vTBMG4RXddvVrjfs1j1c  
4V8ihN.eggC4NeDKRU2tnCoLg+s6LpiMBL6RCxSyJHksWLdeZVHNy.X7dRTo  
7DMBVmPR+XQ40a1uSZLlPozpc+oU9ZuD5x8l6YtDREcfdcH20xeIWJdkG9cJ  
NHoGBxBXFbOxOoyNMFrS8XGJgqIZ2pwMD3NlC.nE3GwA.TxVRhzOU1fWwoyt  
iIwx8GgQwShtxqOjvTz2lt7.FRbhQb6Qb+wdMTknAhcgPWRLhdOU3K6H8Tg9  
YitVefHw4ggi2Y8pVIWfRMDsM6IcizX+ccvgNbUmMuCl7QABPOGtjNxDds3c  
JMIpHMqK+RCnZj3PMjF4hw+jJBAcGnxoY5Cbs5KK1Y.hu+YVmpE4h2jzgJ4A  
xwNISGn.4DigkOe7Bcux33.1SPfbsQGOuNNMGOXDhWMBgezpcEDBx8FGY6SQ  
3mIQyRcjymi8bZjszqNfC9FNK2vz3846ReN3.Nid1AaXJ0qtkTZ08ZoUfPhA  
XCQOcDS6vqNesAP8pKvL6uqRk9+3n7BbB0CI+Z4UF80qOPi85CtnmMwIpCmh  
A02gFWb2YHaiL8pVEXwHzYvpVCrT9PPRivS.MBOwRDdBoqbnPxcHAoX7ON9u  
Clj9oIlYEwAS7H1MMjVnfYPq4VrgW495U4inJV9Rb8TuxZYETApuFFOeU8b9  
J54LwVuvCPE7XNI3wtwRNsq0RKX5vCPE7.mD7.TfddEGN1vAnBb.SFbfp.mo  
qxBcA33LonAn.Z.ZiP1YxzwNJvMr0HJbxfioJvAnM5Xf0j5z4RV4.nV4CD.l  
T3bIsCX5ZgvWE3LcjCREobiOynCGnBvANcvAn.b.SGbzGsikJnAMYvAYND3Y  
eT3gznjh7xAovmePWIFGrSWc5EMb0u1JTBPl8rD.84G6470Fh2oqFgRPyMt0  
PUBDXFXWuDPuZDJAdpzcqVvO3Bng2Y4W809EEHu5q6qW8U804eMe01WwWj2y  
e9v+GiE.hAC  
-----------end_max5_patcher-----------  

Hi Thibaut, Thanks for the patch.

I have a question refinement: prior to the recent new release of the bformat2uhj transcoder (in April?) you mentioned that when specifying inputs=4 and outputs=2, the transcoder would include energy from the vertical component. But when I compare inputs=4 and inputs=3, then elevate the signal, the outputs are identical. I was wondering whether you had removed the vertical energy feature, or if there is something else going on? (e.g. adding vertical energy equally over left and right output channels then compensating to avoid an overall gain increase?)

Thanks
Natasha

April ? I have no recollection of that…
Indeed the Z component is not taken into account in the L/R mix.
That would be a nice feature. If you have any publication/equation, I would be glad to implement it.

T.