Skip to main content

Research Repository

Advanced Search

Fun with Interfaces (SVG Interfaces for Musical Expression)

Gaster, Benedict; Nathan, Renney; Carinna, Parraman


Benedict Gaster
Associate Professor in Physical Computing

Nathan Renney
Graduate Tutor in Computere Science - Artificial Intelligence


In this paper we address the design and implementation of custom controller interfaces, bridging the issue of user mapping between action and sound in interactive music systems. A simple framework utilizing functional specifications for musical interfaces and their mappings is presented, in terms of a subset of Scalable Vector Graphics (SVG); interfaces can be described using a simple Haskell based `controller DSL' or equally using a vector drawing application (i.e. Illustrator).

We demonstrate the practical use of our system for specifying interfaces as SVGs combined with Faust, a functional DSL for Digital Signal Processing (DSP), in the context of building digital musical instruments. We combine these into a hardware and software audio toolkit, with synthesizers, a sampler, effects, and sequencers. Written in the systems programming language Rust, it demonstrates utilizing the output of our DSLs, providing a type safe and high-level framework for DSP and interface development, with the performance benefits of Rust. Working examples
of custom interfaces are described, using ROLI's Lightpad and Sensel's Morph.

Presentation Conference Type Conference Paper (unpublished)
Start Date Aug 23, 2019
Peer Reviewed Peer Reviewed
APA6 Citation Gaster, B., Nathan, R., & Carinna, P. (2019, August). Fun with Interfaces (SVG Interfaces for Musical Expression). Paper presented at 7th ACM SIGPLAN International Workshop on Functional Art, Music, Modeling, and Design
Keywords Haskell, Rust, SVG, DSL, DMI
Additional Information Title of Conference or Conference Proceedings : Proceedings of the 7th ACM SIGPLAN International Workshop on Functional Art, Music, Modeling, and Design


You might also like

Downloadable Citations