The aim of the pidato experiment is to demonstrate a method to handle vibrato on a digital piano. It offers a solution to the ‘vibrato’ markings on the piano solo scores of Franz Liszt. Also, it is fun to play with.
Pidato stands for piano, vibrato and Arduino: the chip used in this experiment. It also means expression, speech in Indonesian.
More info on The Pidato Experiment: Vibrato on a Digital Piano Using an Arduino
The way it works is by translating movement (accelerometer data) to MIDI messages.
The hardware consists of an Arduino, MIDI ports and a three axis accelerometer.
The software should know when a vibrato like movement is made and how to translate such movement to MIDI messages. The software therefore contains a periodicity estimator and frequency detector to detect how periodic a movement is and how fast the movement is repeated. This was done with the YIN algorithm (more commonly used in audio signal analysis).
The YIN algorithm is encapsulated in an Arduino Library and can be used to estimate pitch and periodicity of any signal.
A video on youtube shows the results of the Pidato experiment: vibrato on a digital piano. Please note that this is a technical demonstration, not an artistic performance… in any way.
The software is licensed under the GPL since the Yin code is based on the GPL’d TarsosDSP java implementation which is in turn based on the aubio implementation in c by Paul Brossier, also under the GPL.