PORTABLE DIGITAL AUDIO SYNTHESIZER ASSEMBLY WITH OPEN-SOURCE SOFTWARE

Authors
J D Campos, W D A Fonseca

Since the middle of the 20th century, the music world has been modulated by synthesizers. Beginning with Hammond electromechanical organs using additive synthesis, large analog modular organs followed in the 1950s, giving way to the first portable Minimoog by the 1960s. While also analog, the Minimoog innovated in how much smaller it is compared to its predecessors and its function based on subtractive synthesis. At the beginning of the digital age1 , synthesizers also started to modify. The Sinclavier, which uses frequency modulation synthesis, is one of the first examples of such change. With the increase of digital processing power by the end of the 1980s and the beginning of the 1990s, other types of synthesis such as wavetable and physical modeling started to be implemented in commercial instruments. By the end of the 20th century, virtual studio technology was launched and quickly became one of the most popular ways to make electronic music. This kind of software allows for different types of synthesis and audio processing within a generic personal computer, making the producer’s task both easier and cheaper. Still, it can be cumbersome to bring a full PC on stage for performances. Even laptop computers can be tricky and bigger than necessary. It is possibly a little inconvenient and also may feel artificial to play, especially if the computer does not have enough processing power, which adds latency (or delay) to the musician’s performance. This paper describes the assembly of a digital audio synthesizer embedded on a Single Board Computer (SBC), the powerful2 and small Raspberry Pi 3B+3 . The approach uses Zynthian (an open-source software)4 , which is a plugin host to several other free compatible synthesis and audio effect software. The objective here is to achieve quality sound synthesis while keeping the project’s costs low, using alternative hardware to build the complete instrument. Low latency is also important, thus, system performance is accordingly tested. Measurements of several timbres generated by the synthesizer were carried out for time and frequency domain characterizations. Furthermore, notions of how to implement a plugin for Zynthian will be given, using the (open-source) Faust5 programming language (Functional Programming Language for Real Time Signal Processing).