Posted on Leave a comment

Recreating Notre Dame’s Acoustics

Earlier in the year I was part of a team carrying out a preliminary study on a system that can be used to place musicians in virtual spaces in order to study the impact of acoustics on performance. This was part of the Experimental Virtual Archaeological-Acoustics (EVAA) research umbrella project led by Brian FG Katz at Sorbonne University, Paris.

The study used a bespoke plugin I developed that allows for the directivity of the source to be modelled, including its orientation in real-time. This lets the musician perform and interact in as realistic way as possible with the acoustic space. We had several singers who had experience singing in Notre Dame de Paris before the fire of 2019, placed them in a virtual Notre Dame and asked them to sing so we could have feedback on the quality of the reproduction (from mic-ing, DSP and loudspeaker/headphone playback). It was quite something to have private performances of wonderful singers in “Notre Dame”.

The study was run with Nolan Eley, Sarabeth Mullins and Brian FG Katz. You can read the paper (open access) here. There’s also a nice video presentation of the work by Nolan available on YouTube.

Posted on

25% Discount September 2020

A short post to announce that I am running a 25% discount on all plugins and bundles for the rest of September 2020.

You can pick up any of my plugins with maximum spatial resolutions of 1st-, 3rd- or 7th-order, depending on your requirements. For example, if you’re working with 1st-order microphone recordings you don’t need the higher order plugins for processing.

And, as usual, you can get all the plugins for a particular order in one of the bundles that already have a large discount compared to buying all plugins individually.

Stay safe out there,
Peter

Posted on

Plugin Updates and New Plugin (Beta)

All of the plugins in aXPlugins suite have been updated with new features, stability, and bug fixes. Here is a summary of the biggest or most interesting changes.

  • All plugins – All plugins can now have their license deactivated so you can move it to another computer. Simply hit the “SSA” logo at the bottom of the GUI and click to deactivate the plugin. If you are using Offline activation you will need to connect to the internet in order to deactivate your plugin.
  • All plugins – the number of activations available per license has increased to 5. One license still covers only a single user.
  • All plugins – the plugins are now installed using installers so you no longer have to copy the files to the plugin folders. All plugins are now automatically installed in the recommended system folders depending on their type (AAX/AU/VST3) and the operating system (Win/Mac).
  • All plugins – the Mac .pkg installers are now Notarized by Apple meaning the plugins should install without any warnings from Gatekeeper on Catalina (macOS 10.15). Please get in touch if you have any issues.
  • aXRotate – Yaw, pitch and roll can now be received via OSC messages. Select your desired port number (double click to enter) and click Connect. Click Show More to see the message format expected by the plugin as well as the incoming messages to your selected port.
  • aXDeesser – Some bug fixes.
  • aXEqualizer – Fixed a bug where changing a filter band at low frequency could cause the plugin to become unstable. Fixed another bug where loading a preset from the DAW would cause the UI markers to become unlinked from the audio.

To get the updated version of your plugin just head over to the Downloads section of your account page.

Please note: Because the updates now use installers, you should manually remove any previous versions of the plugins from you DAW plugin path, especially if you have used custom paths in the past.

New Plugin Beta Release

If you have bought one of the plugin bundles then you will find a beta version of a new plugin with the download from your account – aXLimiter! As the name suggests, this is an Ambisonic limiter with input gain, ceiling, look-ahead and release time (with option for auto).

Anyone who has bought a bundle will get aXLimiter for free when it is officially released.

The display shows the peak across all Ambisonic channels for the output (blue) and the input with gain applied (red). The amount of gain reduction over time is shown in white and in the meter to the bottom right.

I would be very happy to hear your thoughts and experiences using it, especially if you run in to any bugs.

Posted on

New Plugin: aXDeesser

Today I am happy to announce a new plugin: aXDeesser. As the name suggests, it is a de-esser made specifically to be used on Ambisonic signals. It is available in VST3 format (Windows and Mac), AAX (Windows and Mac) for Pro Tools | Ultimate, and AudioUnit (Mac).

As with the other plugins in the aX range, the aXDeesser is available in first-order, third-order and seventh-order variations. You can pick the one that fits your needs. The introductory price is 50% of the standard price. It costs 10€ for first-order, 20€ for third-order and 40€ for seventh-order (excluding VAT/sales tax).

You can also get the aXDeesser in the aXBundles. If you have bought any of the bundles in the past then you can head over to the downloads section of your account to get it for free! Just download the latest bundle and you will find the aXDeesser with your other plugins.

Why an Ambisonic De-esser?

Processing Ambisonic signals has to be done carefully to avoid changing or destroying the spatial properties of the sound field, so you need a de-esser that is designed with this in mind.

The aXDeesser also takes advantage of the spatial information provided by Ambisonics to allow you to focus on specific regions of your sound field in order to trigger the de-esser processing, giving you even more control over your processing. Effectively, you use the virtual microphone as a side-chain signal to activate the de-essing processing on the full signal.

Who needs an Ambisonic de-esser?

You can use the aXDeesser on any Ambisonics stream, but it is most useful if you are processing signals recorded with Ambisonic microphones. Anyone working on complete mixes where access to mono-encoded sources are no longer available will also find it useful.

If you have a recording made with a first-order microphone, such as the TetraMic or Sennheiser AMBEO VR mic, then the a1Deesser will fit your needs. The a3Deesser will allow you to de-ess recordings from the OctoMic or Zylia microphone. The a7Deesser is overkill for recordings made with an Ambisonic microphone, but can be used on full mixed scenes or if used creatively.

So, if you have a recording made with an Ambisonic microphone then the aXDeesser is the perfect tool for de-essing. You can tame excessive sibilance, at the same time preserving spatial fidelity.

How does it work?

The plugin has two modules – a virtual microphone and the main de-esser module. The virtual microphone captures a signal that is used to feed the de-esser’s detection algorithm. When the microphone signals activates the de-esser, the processing is applied to the whole sound field.

You can control the direction of the virtual microphone, along with the focus. The focus essentially controls how directive the microphone is, with the maximum directivity depending on the Ambisonic order of the signal received by the plugin. The incoming signal order is shown in the bottom left of the plugin GUI. A focus of 0% gives an omnidirectional microphone response. Focus of 100% gives a cardioid response for a first-order signal and the beam narrows as the input order gets higher. The meter on the left of the GUI shows the level of the virtual microphone signal.

The de-esser has all of the usual controls you would expect to find. You can set the frequency, the bandwidth, level, compression ratio and attack and release times. The meter on the right of the GUI shows the gain reduction being applied to the sibilance band.

Interested?

Does all of that sound like something that could be useful to you? If so, head over to the shop by clicking below. By buying from this website you will be helping support independent development of spatial audio tools. Thanks for your support!

Posted on

New Prices and Plugin Updates

It has been a while but now I have plenty of news to share!

New Prices

First up (as you probably saw in the big image at the top!), if you head over to the shop, you will see that all of the plugins have new, lower prices. I think you’ll find them quite attractive. By buying a plugin you will be supporting the independent development of spatial audio tools. The more interest there is in the plugins, the more time I can spend making improvements, adding new features and developing new plugins.

Offline Activation

All plugins can now be used offline. You just need to be connected to the internet the first time you activate the plugin. Then, from that point on you should not need an internet connection to use the plugin. Easy! A lot of users requested this, so I am really glad to be able to release it.

You can finally work with your spatial audio projects on the plane!

Plugin Updates

I am always working to try improve the plugins in any way I can. Here are a few of the improvements:

  • VST to VST3 – The plugins are now available for VST3 instead of VST. VST3 is now the only format supported by Steinberg, so I wanted to make the move early. After polling users, it appears that most are using the VST3-supporting Reaper as their main spatial audio DAW. The VST3 plugins should automatically replace the VST versions in old projects but I cannot guarantee this, so you should not delete the older versions of the plugins that you might need.
  • aXEqualizer
    • improvements to the filter algorithm for less CPU use.
    • GUI now displays the pre- and post-EQ spectrum.
  • Performance improvements – I have added small performance improvements to most of the plugins. This is an ongoing project so I hope to be able to speed things up even more in the future.
  • GUI – All plugins have had the way they display the measurement units updated. These are now included alongside the parameter value, rather than in the label.

Coming Up…

I have a few new plugins coming up of various complexities. One is quite simple and the others are more ambitious and exciting. The simple plugin will be out sooner rather than later. The other will require some beta testing. If getting your hands on some plugins early is something you are interested in, get in touch in the comment section or send me an email.

Posted on

New Research: Adapting to HRTFs

I spend most of my time working on my plugins or developing new tools for clients to use in their projects and products. But sometimes I have the chance to be involved in fundamental research.

A paper I co-authored with Brian Katz (Sorbonne Université, Paris) and Lorenzo Picinali (Imperial College London) was published earlier this year in Scientific Reports by Nature. If you want to read the paper, head over here – it’s Open Access so you can read it for free!

The title is: Auditory Accommodation to Poorly Matched Non-Individual Spectral Localization Cues Through Active Learning.

The paper looked at how well people can adapt to an HRTF over time with training. We then looked to see if, over time and without training, they would retain the localisation abilities they had gained. The “twist” was that we gave subjects an HRTF that was initially badly rated for them. We did this in order to investigate the worst-case scenario for content distributed without HRTF choice.

Studies like this are important for spatial and immersive audio because it still seems like it will be a while before consumers can have customised HRTFs. This means there will always be some people listening through an HRTF that is not well suited to them. If we can find ways to adapt users to these HRTFs then we can go some of the way to alleviating this problem.

Reference

Stitt, P., Picinali, L., & Katz, B. F. (2019). Auditory Accommodation to Poorly Matched Non-Individual Spectral Localization Cues Through Active Learning. Scientific reports, 9(1), 1063.

Abstract

This study examines the effect of adaptation to non-ideal auditory localization cues represented by the Head-Related Transfer Function (HRTF) and the retention of training for up to three months after the last session. Continuing from a previous study on rapid non-individual HRTF learning, subjects using non-individual HRTFs were tested alongside control subjects using their own measured HRTFs. Perceptually worst-rated non-individual HRTFs were chosen to represent the worst-case scenario in practice and to allow for maximum potential for improvement. The methodology consisted of a training game and a localization test to evaluate performance carried out over 10 sessions. Sessions 1–4 occurred at 1 week intervals, performed by all subjects. During initial sessions, subjects showed improvement in localization performance for polar error. Following this, half of the subjects stopped the training game element, continuing with only the localization task. The group that continued to train showed improvement, with 3 of 8 subjects achieving group mean polar errors comparable to the control group. The majority of the group that stopped the training game retained their performance attained at the end of session 4. In general, adaptation was found to be quite subject dependent, highlighting the limits of HRTF adaptation in the case of poor HRTF matches. No identifier to predict learning ability was observed.

Posted on

5 Things You Should Know About Ambisonics

Ambisonics is a wonderful format for 3D sound/spatial audio for many reasons: it is flexible, interactive, future-proof, and realistic. Despite being around since the 1970s, it is still very new to a lot of people and, like every technique, it has a bit of a learning curve. Here are 5 things every beginner should know about Ambisonics before getting started.

1  – You can’t listen directly to Ambisonic signals

If you work with traditional surround formats (5.1, 7.1 etc.) then you’re used to sending the sound where you want it. Dialogue to come from the screen? Centre channel. Sound effects and ambiences? Rear channels. You get the drift. 

Ambisonics is totally different. You take your mono or stereo sound and pass it through an encoder, such as the aXPanner, and you get B-format signals out the other side. Unlike traditional surround, you cannot pass these signals directly to your speakers and listen to them. If you do, you’ll not get anything that sounds particularly spatialised.

Instead, you’ll need a decoder that takes into account your loudspeaker positions and converts your B-format signals to loudspeaker signals. Or you can convert it binaural 3D audio for headphone listening. The aXMonitor plugin will do this for you.

2 – Ambisonics gets better with order

As soon as you start reading about Ambisonics you will quickly come across phrases like first-order, third-order, higher order. But what exactly does this mean? Without going into the deep maths of it, the order is a measure of how much spatial detail is in your sound scene.

Zeroth-order is the same as an omni-directional recording – all of the sound is capture but none of the directional qualities. First-order adds in x, y and z directions so we can now move the sound around. Higher orders use more complex mathematical functions. This increases the spatial resolution so it’s easier to discriminate the directions of multiple source when you are listening. If you would like to read in this about more detail you can check out one of my earlier posts.

Essentially, the higher the order you are able to use, the better the spatial quality of your work will be. The trade-off is that higher order require more audio channels to carry the spatial information. This needs more CPU. At first-order we need 4 channels, third-order it’s 16 channels and seventh-order it’s 64 channels!

Personally, I will always work in seventh-order to keep my work future-proof so I can archive in the highest possible quality. It’s trivial to convert from seventh- to first-order by dropping some channels. However, going the other way requires you to change settings or plugins throughout your projects(s). Better to do it right the first time!

3 – The channel sequencing matters!

Your Ambisonic panner will output the signals in a specific sequence. The decoder that you use will expect them to arrive in a particular sequence. If these don’t match, the final rendering will not have the intended spatial qualities. It should be easy to work without this becoming a problem, yes?

Unfortunately, no. There are quite a few Ambisonics conventions floating around and if you are using tools from different manufacturers you need to be sure they are all working with the same sequencing format. Channel sequencing can cause headaches even for the most experienced Ambisonics users.

These different conventions have tended to arise from mathematical formulations or practical considerations during Ambisonics’ time in the wilderness. The two best known these days are FuMa (short for Furse-Malham) an AmbiX (short for Ambisonic eXchange). For first-order signals FuMa uses the channel sequence W-X-Y-Z, while AmbiX uses W-Y-Z-X. This really isn’t something you can neglect.

Thankfully, the industry seems to have largely settled on the AmbiX convention for most purposes. This means you’re less likely to run into any confusion, but it can still happen – some tools, like Sennheiser’s AMBEO microphone A-to-B plugin, give the choice of FuMa and AmbiX. Just make sure you set it to the format expect by your decoder. The aX Ambisonic plugins all use AmbiX format specifically to avoid the confusion of different formats.

4 – The level relationship matters, too

This one is related to the last point. Different conventions set the levels differently between different Ambisonic channels groups. For example, the omni W channel is 3 dB weaker in FuMa than AmbiX format, while their first-order  (x, y, and z) channels match in level (but, remember, not in sequencing!).

Generally, if you get your channel order correct, the level relationships will follow. You just have to careful that you do not change the level of one channel without doing exactly the same to all of the others. Doing so will mess with the spatial qualities of your sound scene. This also applies for frequency-dependent level changes, like EQ.

5 – Ambisonics is very sensitive to phase changes

If you’re processing your B-format Ambisonics then you had better be careful you’re using the right tools. Anything you do to one channel has to be repeated exactly on all the others because even a small phase change in only one channel can ruin the spatialisation of your work.

I’ve prepared a short audio demonstration of this with a sample of pink noise. The noise is panned to the left using first-order Ambisonics and rendered binaurally using the aXMonitor. Every two seconds it switches between a correct rendering and one in which one of the B-format channels is delayed by only 0.1 ms (4.41 samples). Hardly a massive delay! With stereo it would barely be audible. With Ambisonics, it completely ruins the spatial impression – listen as the noise goes from fully to the left to splitting into two spatial distinct sounds.

Listen with headphones!

The practical point to be made here is that plugins that change phase (or level) have to have been designed carefully. Using multi-mono plugins will apply processing individually to each B-format channel and almost certainly ruin the spatial quality of your audio. The SSA Plugins aXCompressor, aXGate and aXEqualiser give you dynamic range processing and EQ that you can apply to B-format signals and preserve the spatial integrity of your audio.


So here are 5 things you need to know about Ambisonics before you get started. If you have more questions about setting up an Ambisonic project, leave a comment or get in touch. I’m always happy to answer questions to help you down the road to spatial audio and 3D sound.

Posted on

aXMeter Updates to Version 1.1.0

aXMeter Ambsionic meter with a third order input signal

Two weeks ago I released the free aXMeter – an Ambisonic level metering plugin. I immediately had several requests for new features that would make it better and have added them to the plugin. aXMeter now in has three parameters (accessible from the “Open Settings” button in the bottom left):

  • Numbering Convention: choose between Ambisonic Channel Number (ACN)
    convention, starting at 0 for the first channel, or ACN + 1, starting at 1.
  • Dynamic Range: Set the minimum value of the meter between -6 dB and -90 dB.
  • Peak Decay Speed: control how quickly the peak marker decays to zero.

If you’ve already downloaded the plugin, go to the Downloads section of your account and download it. If you haven’t downloaded it yet, head over to the web shop and download it for free!

The Summer Sale is continuing, so you can get 20% to 50% discount on all of the plugins in the store. If you do, you’ll be supporting independent development of Ambisonics tools. Thanks!

Posted on

New Plugin: aXMeter Ambisonic Meter

aXMeter Ambsionic meter with a third order input signal

It’s time for a new plugin – and it’s free!

The aXMeter is an Ambisonic meter plugin (VST, AAX, AU) that shows the RMS and peak levels for each of the Ambisonic channels up to seventh-order. It’s GUI size varies dynamically depending on the order of the signal it receives. For first- to third-order it shows all of the channels up to third-order. If the input is a higher order it expands to show the new channels.

Just like previous updates, this plugin exists because it was requested by users who thought it would improve their workflow. So, if there is some feature you’d like to see added or a plugin you think would be worth having, get in touch! The more requests a particular feature gets, the faster it gets made.

And the Summer Sale is continuing. There are discounts of 20% to 50% on all of the plugins in the shop. If you purchase something then you’ll be helping to support independent development of spatial audio tools.

If you want to download the free aXMeter head over here.