WARNING: you are not looking at the live version but at an older version.

Using Ambisonics as production format

Using Ambisonics as a production format in Ardour

This document assumes basic familiarity with Ambisonic concepts and techniques.

Introduction

Ardour can be used to create and process Ambisonic content, up to very high orders, thanks to its flexible routing concept with arbitrary number of channels per route.

When you want to create an Ambisonic mix, your Master bus (and any group busses you might want to use) become B-Format buses, with 4 channels for first-order, 9 for second-order, 16 for third-order, and so on. Or you could use intermediate channel counts for mixed-order setups. It is important to note that Ardour does not care what kind of data you send over those buses. The only Ardour component which does care are the panners, which currently only support discrete pair-wise panning, and hence must be bypassed. Consequently, it's the panners which decide what each of the channels in your master bus "means".

Setting up for discrete source panning

Instead of the built-in panners, you can use the AMB LADSPA plugin set by Fons Adriaensen, which provides spherical panners in 1st, 2nd, and 3rd order flavours. They use the Furse-Malham convention for channel ordering (W XYZ RSTUV KLMOPQ) and MaxN normalisation (i.e. each channel is normalized to fit between 0..1 for input at full scale). Each panner has two parameters, namely azimuth (horizontal angle, from -180 to 180) and elevation (vertical angle, from -90 to 90). Like all plugin parameters, these can be automated.

Before you start, some preparation is necessary:

  • Create a new session with an appropriate multi-channel master bus depending on the order you want to work in.
  • Activate the option "Run plugins during recording", so that the panners are activee while you're tracking (if you care about proper monitoring).
  • Create a mono track, bypass the default panner  and add a suitable panning plugin into the post-fader signal stream of each track.
  • Optionally, add some other utility plugins such as an EQ and a compressor, and save this track as a route template, from which you can then create as many tracks as you need.

Integrating natural Ambisonic recordings

The above paragraph assumed that you have discrete sources that you would like to pan anywhere on the Ambisonic sphere. If you have a first or higher-order soundfield microphone, you can also integrate natural Ambisonic recordings into your mix.
Note that it is generally advisable to record the A-Format of your microphone, i.e. the unprocessed, raw capsule output. That way, you can always fine-tune your B-Format encoding matrix in case anything went wrong at the recording location.
But this also means, that you cannot feed your A-Format track directly into the Master bus. Instead, you have to encode it to B-Format first. Use the tool that came with your microphone to accomplish this task. Users of the CoreSound TetraMic can patch the TetraProc processor into a post-fader 4channel insert and connect it in realtime via JACK. Other vendors might provide VST plugins for the same task. YMMV. As a last resort, create an offline B-Format rendering and import it into a suitable track of your session.

Mixed-order considerations:

You might want to work in 3rd order, but still add a first-order microphone recording for ambiance. This will work just great, except for one pitfall:
Normally, Ambisonics degrades gracefully, i.e. if you produce in pure 3rd order and your customer only has a first-order rig, s/he will experience reduced angular resolution but an otherwise unimpaired sound. When mixing signals of different orders, the overall balance will shift slightly: now your customer will get all of the first-order ambience signal, but miss some of the energy of the rest of the session that is contained in the 2nd and 3rd-order components - hence, the sonic balance will shift. If you have to target lower orders, frequently switch your monitoring system down to lower orders, just as you would check for mono compatibility when targetting AM radio.

Monitoring and target format

Of course, now your Master bus will output B-Format, which cannot be fed to your monitor speakers directly. Instead, you will need an Ambisonic decoder to match your speaker layout.
For a real ambisonic setup, use Fons Adriaensen's ambdec. Be sure to check "Furse-Malham" input normalization, and connect the appropriate ports of your Ardour Master bus to ambdec's inputs. In turn, ambdec's outputs will feed your speakers.
If you need to render to stereo, you can use UHJ encoding, which will give a very pleasurable and reasonable two-channel rendering, but it is not suitable for serious suround monitoring. An UHJ encoding configuration example comes with jconv, which is a very handy convolution engine also useful for high-end reverb sounds.

If your target format is 5.1, you can still use Ambisonics as a production format, and extract a 5.0 feed afterwards, again using ambdec with a specially optimized decoding configuration (the LFE channel is not suitable for music anyways and should be handled separately, as you would in a normal 5.1 session).
To obtain high channel separation in ITU 5.1 as required by the movie industry, it's advisable to use at least third-order Ambisonics. For natural, coherent sound fields, second order is sufficient.

A note on Ambisonic channel order and normalization

The traditional Furse-Malham format is an extension of Michael Gerzon et al.'s design from the 1970s. Back then, limitations of the existing magnetic recording media were the dominant engineering constraint. Hence, it was decided to drop the W channel by 3dB, and clamp each of the other channels to a defined maximum (MaxN normalisation). This made no sense from a mathematical point of view (and in fact needed to be corrected before decoding), but it ensured the best S/N performance of the tape machines of the era.

With the extension of Ambisonics to higher orders, the order of channels became crooked (which is apparent when you look at the shapes of the spherical harmonics and their ordering). Moreover, with modern digitial media. the historic normalisation compromises have lost their justification and are becoming increasingly cumbersome. Hence, a new, inherently logica,l mathematically convenient, encoding scheme has been proposed: ACN, or Ambisonic Channel Number. Similarly, current implementations favor SN3D or N3D normalisation over the old MaxN scheme, because it maintains meaningful level relations between the components.

It is to be expected that future panner implementations will move to this new scheme, and you will have to be aware of this possible complication. For compatibility, trivial adaptor plugins could be created.

Further reading:

Comments (0)