Terrain (2024)
|
Terrain is a Wave Terrain Synthesis plugin and the natural evolution of my prototype from 2016. This new product was created using JUCE, and features several drastic improvements over the prototype. Both Terrains and Trajectories can be modified and automated at the audio rate. Trajectories feature a two-dimensional recursive feedback loop to create musically useful time-modulated shapes. This version is also an Instrument Plugin, making control of plugin parameters and its usefulness as instrument greatly improved. Terrain is a free and open source project.
Source Code Tools used: JUCE 7, C++, OpenGL, GLM, CMake |
Orioto (2024) - In Development
Orioto ("Ori" - fold, "oto" - sound) is a waveshaper distortion plugin. The transfer function is editable via cubic bezier curve with control points. The effect this transfer function has on a normalized sinusoid is updated in real-time as the transfer function is edited. Standard input and output effects are present and automatable. Orioto is a free and open source project.
Source Code Tools used: JUCE 8, C++, CMake |
Freelance Audio Software (March 2020 - Present)
Development for various companies; projects ranging from Digital Audio Workstations, Audio Plugins, and audio applications for mobile devices.
Pedal (2019-2022)
Pedal is a C++ audio library created in collaboration with Keehong Youn. This open-source library has a long and growing list of audio unit classes. The defining feature of pedal is that these audio units are written with the intent that a user will look at the source code to learn how things work. Our code style was designed to prioritize clarity in the inner mechanics. The ambition is that pedal will be a source not only of new sounds to the world, but new sound makers as well.
Source Code
Source Code
|
Particle Accelerator (2020)Particle Accelerator is a real time audio synthesizer that harnesses the power of a Graphics Processing Unit (GPU). Common DSP tasks had to be reimagined to comply with the abilities of these massively parallel processing units. This labor and inventiveness was fruitful! This video was rendered on a decade-old laptop with a dedicated GPU, but still could render thousands of voices simultaneously.
Tools used: JUCE 6, C++, Cuda, CMake |
Wave Terrain Synthesizer (2016)
Wave Terrain Synthesis works by a two-dimensional trajectory scanning a three-dimensional terrain to produce a time-varying signal. The timbre of the signal is determined in conjunction by the topography of the terrain, and the shape of the scan. If a scan is periodic, then the fundamental frequency will be the perceived tone making this synthesis method an easy fit for keyboard instruments.
Tools used: C++, openFrameworks, ofxATK |
|
Ambisonic Grain Spatializer (Fall 2015)A system for discrete grain spatialization in a three-dimensional environment. Click for more information
|
Dipole Particle Generator (Fall 2015)The principle purpose of Dipole Particle Generator (DPG) is to develop the technique of glisson synthesis. The largest deviation from traditional glisson synthesis is the ability to use sampled sounds as opposed to solely synthetic waveforms. Immediately, the inclusion of sampled sounds in a particle synthesis system tempts the integration of classic granular synthesis techniques (time-stretching, pitch-shifting, etc.). DPG weaves characteristics of many particle and granular synthesis techniques into a single streamlined application. Click for more information
|