[Ardour-Dev] some thoughts on panning in a3

Jörn Nettingsmeier nettings at stackingdwarves.net
Tue Nov 29 09:08:10 PST 2011

hi *!

i spent the day digging into a3's panning, and here's what i found:

* the 2in2out panner is very nice indeed! a great improvement over a2. 
almost makes me sorry that i hardly ever produce in stereo :-p
just used it to position an xy drum overhead precisely on the image of 
the ortf main microphone, and it works like a charm, with width, center 
and even inversion (now who has never mixed up the left and right mike 
of an xy pair :)
* the vbap panner looks promising. i particularly like the fact that it 
doesn't try to do anything inside the speaker ring, which is impossible 
anyways! but is not quite functional atm:
   * mixer strips with multiple inputs do not get multiple independent 
output panning dots. probably a bug.
   * the speakers cannot be moved (as they originally could). that's a 
feature imho. a channel panner has no reason to mess with the speaker 
   * the speaker configuration window seems to be inactive. with my 16ch 
master bus, i'd expect it to have 16 speakers, but i see only two.

what i'd like to do is tack a set of ambisonic panners on, which re-use 
the vbap panning widget. since ambi panners want to include height, my 
idea is to use the inner circles for elevation, as if they were a globe 
seen from the north pole. to distinguish raised from lowered sources, 
the panning dot could get a thin red outline for negative elevation. 
negative elevation could be made stateful and gets toggled by dragging 
the dot to the outer ring once.

since this is tricky to use with any precision, the panner needs an 
additional text entry window. the way i see it, the panning widget is 
just a quick visual guide as to where a source is, not a precision 
control. real work happens in the text entry field, or a midi controller.

the panner is to have two parameters:
* azimuth or horizontal angle, positive angles going clockwise (contrary 
to mathematical convention, because otherwise ardour's standard 
parameter sliders would be counter-intuitive)
* elevation or vertical angle, where 0 is a position on the equator, 90° 
is straight up, and -90° is straight down.

in order to proceed, i need to understand the intended function of the 
speaker configuration window. iiuc, it's intended to correspond to the 
master bus. so it should always have as many speakers as the master bus 
has channels. is that how you think it should work?

in addition to vbap speaker arrangements, the speaker configuration 
window should offer a way to select ambisonic panning for orders 1-4. if 
ambisonic mode is engaged, the following happens:

* all speaker symbols disappear from the speaker config window and all 
the panner widgets.
* all panners switch to ambi mode as described above, retaining all 
meaningful information (i.e. the azimuth value from vbap), and setting 
others to default (elevation in this case).
* the master bus channels become ambisonic components in ACN ordering 
and SN3D normalisation (yes, the _NEW_ standard !)
* the monitor section loses the ability to control the monitor channels 
individually, because that would make no sense in ambisonics. in place 
of the individual controls, the monitor strip displays the ambisonics 
logo with a tooltip that explains how the stuff can be listened to.
the monitor bus should disconnect from the hardware outputs and inform 
the user about this.

ambisonic mode makes sense only for master buses with (n+1)² channels.
it should be possible to increase the order without invalidating the 
rest of the session, i.e. to be able to preproduce in 2nd (9ch) with low 
resource usage, and then just switch to 4th (25ch) when there's a 
particularly nice speaker system around. that means it must be possible 
from the speaker configuration to affect the width of the master bus. 
vice-versa, it should be impossible in the master bus connection 
dialogues to add or remove channels. the user should be directed to the 
speaker configuration window instead.

here's another very nice feature for the future: all channel panners 
"talk" to the speaker configuration widget, so that it can display a 
panning overview of all the channels, with dots in the appropriate track 
colors and tooltips for the names. this view could be read-only first, 
and maybe later converted to allow control as well.

i've seen this in fons' wfs control software, and the tu berlin and 
iosono wfs applications do the same. very helpful.

now once the ambi stuff is in place, it should be very easy to upgrade 
the vbap panners to full-sphere, too. all the triangulation code seems 
to be in place already.

another low-hanging fruit would be "ambisonics-equivalent panning", 
where you include the decoder for a fixed set of speaker layouts in the 
master bus. it's basically a hybrid of ambi panning and speaker feed 
output. personally i hate it, because it negates the biggest advantage 
of ambisonics (i.e. loudspeaker independence). but it might be 
interesting for people who want the smooth ambi panning yet can't seem 
to let go of speaker feed mixing just now...

looking forward to your comments!



Jörn Nettingsmeier
Lortzingstr. 11, 45128 Essen, Tel. +49 177 7937487

Meister für Veranstaltungstechnik (Bühne/Studio)
Tonmeister (VDT)


More information about the Ardour-Dev mailing list