Giraf
All projects

Project 15 / 20

Giraf

A Bela-based self-contained polyphonic sampler

The instrument

The basis of Giraf is a polyphonic sampler where a sample can be played by hitting the “sound trigger” pad – the amplitude of the sound is determined by how hard the pad is struck. The pitch of this triggered sample can then be controlled by a infra-red distance sensor, in such a way that the further the hand is from the sensor, the lower the pitch. Instead of having continous control, the pitch that is actually played is determined in relation to a selected musical scale making harmonically related results easier to acheive.

Se a walktrough of the instrument in the video below:

Signal path and effects

The signal path of Giraf is as follows:

Alongside the main sampler Giraf has multiple built-in effects.

Software and technical notes

The code implementation is written in C++ and it was programmed using the browser-based Bela IDE, which runs on a server on the Bela itself – no internet required. Using C++ and working with Bela allowed me to keep everything very fast and responsive. There was a total of ~66 samples group delay, that is - at 44.1kHz - 1.5ms of latency from trigger to the sound coming out: thank you Bela!!!

The Bela Blog

The project can be found on the Bela blog here: Giraf