Re: [Sursound] Looking for virtual mic equations for 2nd order

2019-04-10 Thread Hector Centeno
Thnak you very much Fons. I appreciate the explanation, it's very helpful
(It's also hard to find comprehensive literature about it). It would be
great to see those Python scripts, thank you for offering to send them.

Cheers,

Hector


On Tue, Apr 9, 2019 at 3:53 PM Fons Adriaensen  wrote:

> Hello Hector,
>
> > As quoted below, some time ago Fons kindly provided the equations to
> > extract virtual microphone signals from an ambisonic 1st order
> soundfield.
> > I was wondering, is there a set of available and known formulas to
> extract
> > virtual microphones from 2nd order recordings, taking advantage of the
> > higher spatial resolution?
>
> If you want first order virtual mics you can use the same formulas,
> just drop the higher order signals. Note that the equations you quoted
> are for FuMa normalisation, higher order signal sets today would probably
> use SN3D. For SN3D, remove the sqrt(2) in the first equation.
>
> If you want 2nd or higher order virtual mics things get a bit
> more complicated. Of course any polar pattern is just a weighted
> sum of the AMB components. But for higher order you get a lot more
> choices. Now if you limit the choice to axisymmetric patterns things
> get easier. Axisymmetric polar patterns are those that depend only
> on the angle between the axis of the mic and the direction of the
> source, i.e. you can imagine the pattern as something that is
> rotated around an axis in a given direction. All first order
> patterns are axisymmetric, but higher order ones don't have to be.
>
> But even for axisymmetric higher order patterns you need more than
> some simple equations that I could copy into an mailing list post.
> I could sent you some python code that computes the gain factors
> for higher order axisymmetric virtual mics. Let me know if you're
> interested.
>
> Ciao,
>
> --
> FA
>
> ___
> Sursound mailing list
> Sursound@music.vt.edu
> https://mail.music.vt.edu/mailman/listinfo/sursound - unsubscribe here,
> edit account or options, view archives and so on.
>
-- next part --
An HTML attachment was scrubbed...
URL: 

___
Sursound mailing list
Sursound@music.vt.edu
https://mail.music.vt.edu/mailman/listinfo/sursound - unsubscribe here, edit 
account or options, view archives and so on.


Re: [Sursound] Looking for virtual mic equations for 2nd order

2019-04-09 Thread Fons Adriaensen
Hello Hector,
 
> As quoted below, some time ago Fons kindly provided the equations to
> extract virtual microphone signals from an ambisonic 1st order soundfield.
> I was wondering, is there a set of available and known formulas to extract
> virtual microphones from 2nd order recordings, taking advantage of the
> higher spatial resolution?

If you want first order virtual mics you can use the same formulas,
just drop the higher order signals. Note that the equations you quoted
are for FuMa normalisation, higher order signal sets today would probably
use SN3D. For SN3D, remove the sqrt(2) in the first equation.

If you want 2nd or higher order virtual mics things get a bit
more complicated. Of course any polar pattern is just a weighted
sum of the AMB components. But for higher order you get a lot more
choices. Now if you limit the choice to axisymmetric patterns things
get easier. Axisymmetric polar patterns are those that depend only
on the angle between the axis of the mic and the direction of the
source, i.e. you can imagine the pattern as something that is 
rotated around an axis in a given direction. All first order
patterns are axisymmetric, but higher order ones don't have to be.

But even for axisymmetric higher order patterns you need more than
some simple equations that I could copy into an mailing list post. 
I could sent you some python code that computes the gain factors
for higher order axisymmetric virtual mics. Let me know if you're
interested.

Ciao,

-- 
FA

___
Sursound mailing list
Sursound@music.vt.edu
https://mail.music.vt.edu/mailman/listinfo/sursound - unsubscribe here, edit 
account or options, view archives and so on.


[Sursound] Looking for virtual mic equations for 2nd order

2019-04-07 Thread Hector Centeno
Hello,

As quoted below, some time ago Fons kindly provided the equations to
extract virtual microphone signals from an ambisonic 1st order soundfield.
I was wondering, is there a set of available and known formulas to extract
virtual microphones from 2nd order recordings, taking advantage of the
higher spatial resolution? Does it make sense or the formula applies the
same only utilizing the 1st order part of it? I've seen some plugins doing
spherical processing to achieve this but that's an area I'm not familiar
with.

Thanks!

Hector



On Fri, Jul 19, 2013 at 10:37 AM Fons Adriaensen 
wrote:

> On Fri, Jul 19, 2013 at 09:56:40AM -0400, Hector Centeno wrote:
>
> > I'm trying to implement virtual microphones derived from first order
> > ambisonic soundfields using Csound. I was wondering if anyone had any
> > resources to share with equations that would allow me to achieve this,
> > specifying azimuth, elevation and directivity of the mic. I've been
> > analyzing Fons' code for Tetraproc (the Virtmic class) but I'm having
> > difficulties understanding some parts of it (but I'll keep trying). I
> found
> > the paper "Has Ambisonics Come of Age?" by Bruce Wiggins which contains
> > equations for doing this but it seems that it only takes azimuth angle in
> > consideration.
>
> Given
>
> A = mic direction azimuth
> E = mic direction elevation
> D = directivity, [0...1], 0 = omni, 0.5 = cardioid, 1 = fig-8
>
> and assuming your B-format is FuMA, compute
>
>   cw = sqrt(2) * (1 - D)
>   cx = cos(A) * cos(E) * D
>   cy = sin(A) * cos(E) * D
>   cz = sin(E) * D
>
> and then the output signal for the mic is
>
>   cw * W + cx * X + cy * Y + cz * Z
>
> Ciao,
>
> --
> FA
>
> A world of exhaustive, reliable metadata would be an utopia.
> It's also a pipe-dream, founded on self-delusion, nerd hubris
> and hysterically inflated market opportunities. (Cory Doctorow)
>
> ___
> Sursound mailing list
> Sursound@music.vt.edu
> https://mail.music.vt.edu/mailman/listinfo/sursound
>
-- next part --
An HTML attachment was scrubbed...
URL: 

___
Sursound mailing list
Sursound@music.vt.edu
https://mail.music.vt.edu/mailman/listinfo/sursound - unsubscribe here, edit 
account or options, view archives and so on.


[Sursound] Looking for virtual mic equations

2013-07-19 Thread Hector Centeno
Hi,

I'm trying to implement virtual microphones derived from first order
ambisonic soundfields using Csound. I was wondering if anyone had any
resources to share with equations that would allow me to achieve this,
specifying azimuth, elevation and directivity of the mic. I've been
analyzing Fons' code for Tetraproc (the Virtmic class) but I'm having
difficulties understanding some parts of it (but I'll keep trying). I found
the paper Has Ambisonics Come of Age? by Bruce Wiggins wich contains
equations for doing this but it seems that it only takes azimuth angle in
consideration.

Thanks in advance,

Hector
-- next part --
An HTML attachment was scrubbed...
URL: 
https://mail.music.vt.edu/mailman/private/sursound/attachments/20130719/5f00c717/attachment.html
___
Sursound mailing list
Sursound@music.vt.edu
https://mail.music.vt.edu/mailman/listinfo/sursound


Re: [Sursound] Looking for virtual mic equations

2013-07-19 Thread Fons Adriaensen
On Fri, Jul 19, 2013 at 09:56:40AM -0400, Hector Centeno wrote:
 
 I'm trying to implement virtual microphones derived from first order
 ambisonic soundfields using Csound. I was wondering if anyone had any
 resources to share with equations that would allow me to achieve this,
 specifying azimuth, elevation and directivity of the mic. I've been
 analyzing Fons' code for Tetraproc (the Virtmic class) but I'm having
 difficulties understanding some parts of it (but I'll keep trying). I found
 the paper Has Ambisonics Come of Age? by Bruce Wiggins wich contains
 equations for doing this but it seems that it only takes azimuth angle in
 consideration.

Given

A = mic direction azimuth
E = mic direction elevation
D = directivity, [0...1], 0 = omni, 0.5 = cardioid, 1 = fig-8

and assuming your B-format is FuMA, compute

  cw = sqrt(2) * (1 - D)
  cx = cos(A) * cos(E) * D
  cy = sin(A) * cos(E) * D
  cz = sin(E) * D

and then the output signal for the mic is

  cw * W + cx * X + cy * Y + cz * Z

Ciao,

-- 
FA

A world of exhaustive, reliable metadata would be an utopia.
It's also a pipe-dream, founded on self-delusion, nerd hubris
and hysterically inflated market opportunities. (Cory Doctorow)

___
Sursound mailing list
Sursound@music.vt.edu
https://mail.music.vt.edu/mailman/listinfo/sursound


Re: [Sursound] Looking for virtual mic equations

2013-07-19 Thread Joseph Anderson
Hello Hector,

If you're up for moving to SuperCollider for your work, check out the ATK:

http://www.ambisonictoolkit.net


We have all sorts of these things in-built. Along with lots of fancy tricks and 
spatial filters.

Docs are found here:

http://doc.sccode.org/Browse.html#Libraries%3EAmbisonic%20Toolkit



My best,

~~
Joseph Anderson

Artist: http://joseph-anderson.org
Ambisonic Toolkit:  http://ambisonictoolkit.net





On 19 Jul 2013, at 4:02 pm, Hector Centeno hcen...@gmail.com wrote:

 Thank you very much Fons!
 
 
 On Fri, Jul 19, 2013 at 10:37 AM, Fons Adriaensen f...@linuxaudio.orgwrote:
 
 On Fri, Jul 19, 2013 at 09:56:40AM -0400, Hector Centeno wrote:
 
 I'm trying to implement virtual microphones derived from first order
 ambisonic soundfields using Csound. I was wondering if anyone had any
 resources to share with equations that would allow me to achieve this,
 specifying azimuth, elevation and directivity of the mic. I've been
 analyzing Fons' code for Tetraproc (the Virtmic class) but I'm having
 difficulties understanding some parts of it (but I'll keep trying). I
 found
 the paper Has Ambisonics Come of Age? by Bruce Wiggins wich contains
 equations for doing this but it seems that it only takes azimuth angle in
 consideration.
 
 Given
 
 A = mic direction azimuth
 E = mic direction elevation
 D = directivity, [0...1], 0 = omni, 0.5 = cardioid, 1 = fig-8
 
 and assuming your B-format is FuMA, compute
 
  cw = sqrt(2) * (1 - D)
  cx = cos(A) * cos(E) * D
  cy = sin(A) * cos(E) * D
  cz = sin(E) * D
 
 and then the output signal for the mic is
 
  cw * W + cx * X + cy * Y + cz * Z
 
 Ciao,
 
 --
 FA
 
 A world of exhaustive, reliable metadata would be an utopia.
 It's also a pipe-dream, founded on self-delusion, nerd hubris
 and hysterically inflated market opportunities. (Cory Doctorow)
 
 ___
 Sursound mailing list
 Sursound@music.vt.edu
 https://mail.music.vt.edu/mailman/listinfo/sursound
 
 -- next part --
 An HTML attachment was scrubbed...
 URL: 
 https://mail.music.vt.edu/mailman/private/sursound/attachments/20130719/a5cc7e60/attachment.html
 ___
 Sursound mailing list
 Sursound@music.vt.edu
 https://mail.music.vt.edu/mailman/listinfo/sursound


-- next part --
An HTML attachment was scrubbed...
URL: 
https://mail.music.vt.edu/mailman/private/sursound/attachments/20130719/f37ef471/attachment.html
___
Sursound mailing list
Sursound@music.vt.edu
https://mail.music.vt.edu/mailman/listinfo/sursound