portfolio

LATE is one of the four plugins created for my third year AMT university course.

Before this project I had never actually created a proper delay effect that was anything more than a simple line in a script.

It is a LCR delay prototyped and scripted inside of MATLAB and based off the the LCR delay found in the KORG Triton and the LCR delay found in Will Pickles Book “Designing audio effect plugins in C++: for AAX, AU, and VST3 with DSP theory”.

However I have expanded on it providing further control of the centre channel filters and the ability to place the delay component of the left and right sides on the opposite channel to further the range of sounds this effect can create.

The filters used in the project use the coefficients from (Pirkle, 2019) for the Low Pass and High Pass Butterworth Filters.

Like the rest of the plugins they will be available on GitHub, so watch out for updates!

Block Diagram (Simplified)

Due to the constraints of my drawing skills I have simplified the block diagram of the plugin. This shows the most important parts but excludes pieces like switches, bypasses and the full change made when using the swap feature.

Swap Outputs

Again like many of the features in my plugins this was an addition made at the end of development. The main idea is that the delayed audio will appear in the opposite channel.

E.g. Guitar on the left channel, delay will be played through the right.

This creates an interesting call and response type effect that is similar to a ping pong but without any feedback.

The best part is that both sides can do this simultaneously and broadcast their delayed signal to the opposite channel. The block diagram can be seen below

Being someone that hates excess code, I tried to have this extend the functions already being used to add the delayed signals to the dry but this wasn’t working so I had to create a separate branch to evaluate this properly.

First the delays are calculated separately, then the function checks which delays are enabled allowing the correct output to be selected.

Centre Feedback

The feedback channel in the centre is what would be more traditionally known as a delay where multiple copies of the signal would be heard over and over till it dies out.

Where this implementation deviates from the Korg Triton is that the cutoff of the filters can be controlled. This allows for the character of the feedback to be controlled rather than just acting as a damper.

This is important as the frequency distribution of different inputs will not be the same. A high pitched guitar will not have the same frequency information as a snare drum.

And by having control of a Low and High filter it allows for a specific frequency band to be targeted, giving further control over the feedback path.

Examples

Example 1 – Swap Feature

In this first example the Swap L/R Delay function has been used to move the delayed signal to the opposite side.

With Effect

Without Effect


Example 2 – Swap with Low Delay Time

In this next example the Swap feature is used again, however with a much lower delay time to create a stereo widening effect

With Effect

Without Effect


Example 3 – L/R vs LCR

For this final example more traditional delay settings were used with a longer delay time and the swap feature disengaged. The examples below feature L/R delay, LCR (with the centre channel enabled) and the dry input.

L/R Delay

LCR Delay

Dry Input

DOWNLOAD

VST3: GitHub Link

AUv2: GitHub Link

SOURCE: GitHub Link

Due to macOS’s security policy, the VST3 version of the plugin is blocked. This means on macOS only the AU Version of the plugin is allowed to run.

However when both Logic and Ableton are scanning the plugins you need to manually allow the plugin to run through “System Settings” -> “Privacy & Security” and then allow.

Logic also requires the track to be in stereo mode for the plugin to appear in the effects list.

SYSTEM REQUIREMENTS

Supported Plugin Interfaces: VT3, AUv2

Operating Systems: macOS, Windows, Linux

REFERENCES

Pirkle, W.C. (2019) Designing audio effect plugins in C++: for AAX, AU, and VST3 with DSP theory. Second edition. New York: Routledge, Taylor & Francis Group.