Grindstone
Grindstone
Granular synthesis is a synthesis method that achieves its characteristic sound by playing short slices (or “grains”) of a source with varying parameters such as duration, density, or spatial position, to name just a few. The Grindstone is a granular synthesizer with a software component written in Objective C using the Cocoa, OpenGL and Core Audio libraries, and a hardware component using an Arduino, a Disky (DIY rotating optical encoder developed by Karl Yerkes), and pressure and one-dimensional location sensors.
Granular synthesizers are commonly controlled by slider banks, each individual slider mapped to one of the dozens of parameters associated with granular synthesis. Some initial goals of this project were to avoid “office work” performances (interaction via keyboard/mouse) and “audio engineer” performances (interaction via banks of sliders and knobs). Additionally, by withholding control over many of the synthesis parameters, interaction is greatly simplified and the sonic character of the instrument is defined by the constraints.
Another important goal was to experiment with a system that stores physical energy (rotational kinetic energy in the spinning platters of an old hard drive, in this case) and allow the natural dissipation of that energy to shape certain parameters of the synthesized sound. This is an unavoidable characteristic of all acoustic instruments and is frequently implemented artificially in electronic synthesizers (an ADSR amplitude envelope, for example). The Grindstone maps the rotational speed of the disc to grain density such that at high speeds many grains are triggered in rapid succession. As the disc slows down fewer grains are triggered and their separation in time increases until the disc comes to a stop and no more grains are played. Of course, the user sets the disc spinning with her hand and may manually sustain or damp the motion in her performance. The long touch strip senses both location and pressure: location is mapped to position within the source sample from where grains are sliced, and pressure is mapped to both grain amplitude and attack time, where high pressure results in loud grains with short attack times.
Next steps include simplifying the GUI to display only the waveform of the source sample and an indicator corresponding to the current position on the sensor, and addressing the problem of friction between the user’s finger and touch sensor when performing sliding gestures with high pressure.
Granular Synthesis - Wikipedia
Xcode Project (zip)
The Grindstone was used to create all of the granulated sounds in “Unsolver” and “Someday”. See the music page.
Many thanks to Stephen Pope, Matt Wright, and Karl Yerkes for their ongoing help with this project.