Projects | Audio FX
EQ Plugin
This project implements an audio equaliser using JUCE and C++. By default, it includes 3 peaking bands, 2 shelves, and 2 cut bands. The peaking bands are dynamically implemented, allowing for easy adjustment of the number of bands. All of the following plugins also include a save / load functionality along with an undo / redo manager.
All filter coefficients are calculated manually and applied using a Transposed Direct Form II BiQuad Filter. An interactive MATLAB and Python prototype demo is available on GitHub.
Go to this repositoryCompressor Plugin
An audio dynamic range compressor is implemented using JUCE and C++. It includes parameters such as Threshold, Ratio, Attack, Release, Makeup Gain and an adjustable knee parameter for fine-tuning compression characteristics.
A custom FIFO buffer has been implemented to analyse the audio input and apply compression using a Peak-RMS based detection method. An interactive MATLAB and Python prototype demo is available on GitHub.
Go to this repositoryProjects | Apps
CRTN Calculator
This project provides a prototype application in MATLAB app designer to calculate the road traffic noise based upon the equations in the 1988 CRTN documentation.
With LDEN calculations with customisable dB penalties. It includes correction features for gradient, angle, HGV percentage, road surface, and distance measured, ensuring accurate assessments. Users can view average and maximum LDEN and LA10 values and benefit from auto-fill, save/load data, reset, and help tools for streamlined noise analysis.
Go to this repositoryReverb Calculator
Providing a prototype application in MATLAB app designer to calculate the reverb times for a set of frequencies based on a rooms dimensions and materials.
This project compares both convolutional reverberation using RIR and algorithmic reverberation using absorption coefficients.
Go to this repository