Aspect 2 Modular Synthesizer
Tech Stack: C++, Python, CMake, GoogleTest, JUCE
Link: www.loomer.co.uk/aspect.html
Aspect is a simulation of an analogue synthesizer, using mathematical modelling techniques to reproduce the sounds of a hardware analogue synthesizer. It is commerically available for macOS, Linux, and Windows. Some of the key features I have developed include:
- Efficient, low-latency, high-performance, multithreaded, real-time audio engine.
- Uses graph theory to reorder processing modules when the synthesizer configuration changes. This also allows unused components to be disabled, further improving performance.
- Scalable, themable, user interface which has a feel familiar to hardware users, but also uses modern user interface conventions such as drag and drop.
- Unlimited undo and redo using the Command design pattern to store a historic stack of changes.
- Presets stored in XML format.
- Custom Python builder which builds the project on macOS, Linux, and Windows, and also creates the installer packages, handles code signing, notarization, and stapling.
- Extensive test coverage using GoogleTest and GoogleMock.