About PAW 2019, December 14, Lyon

With 9 talks and 7 workshops, PAW is an intensive day devoted to electronic sounds and programmable audio technologies!

PAW is completely free, but the number of seats is limited. Register as soon as possible at PAW 2019 REGISTRATION IS NOW CLOSED.

Event Location

UCLy-Université Catholique de Lyon
Campus Saint-Paul
10 Place des Archives, 69002 Lyon

Program Overview

Morning: Talks

Amphithéâtre R. Mouterde
Pierre Lecomte
(Université Lyon 1 -- Lyon, France)
The SOUL Platform
Julian Storer
(ROLI -- London, UK)
Jakob Leben
(Limbic Media -- Victoria, Canada)
Coffee Break
Catinca Dumitrascu
(GRAME-CNCM -- Lyon, France)
Faust Everywhere
Yann Orlarey
(GRAME-CNCM -- Lyon, France)
FPGAs for low latency audio applications?
Florent de Dinechin
(CITI-Lab/INSA -- Lyon, France)
Coffee Break
Ultra-affordable electronic musical instruments
Romain Michon
(GRAME-CNCM -- Lyon, France)
21 high-quality guitar FX WebAudio Plugins in 21 days!
Michel Buffa
(Université de la Côte d'Azur -- Sophia Antipolis, France)
Lunch Break

Afternoon: Workshops

Room C156 Room C157
Bela Webaudio Plugins
Embedded Faust Arrp
Sound Spatialization SOUL
Live Coding Live Coding

Program Details

08:30-09:00, Registration

Morning Talks (Amphithéâtre R. Mouterde)

09:00-09:20, Ambitools

Pierre Lecomte (Université Lyon 1 -- Lyon, France)

Ambitools, sound field synthesis with higher-order ambisonics and Faust.

09:20-09:40, SOUL

Julian Storer (ROLI -- London, UK)

The SOUL Platform - the journey from announcement to beta release!

09:40-10:00, Arrp

Jakob Leben (Limbic Media -- Victoria, Canada)

Arrp - a language for simple and efficient processing of multi-dimensional signals with different rates.

10:00-10:20, Coffee Break

10:20-10:40, Amstramgrame

Catinca Dumitrascu (GRAME-CNCM -- Lyon, France)

Amstramgrame, the junior computer music programming laboratory.

10:40-11:00, Faust Everywhere

Yann Orlarey (GRAME-CNCM -- Lyon, France)

Faust Everywhere: turning Faust into a ubiquitous platform.

11:00-11:20, FPGAs for low latency audio applications?

Florent de Dinechin (CITI-Lab/INSA -- Lyon, France)

Are Field Gate Programmable Arrays (FPGA) ready for low latency audio applications?

11:20-11:40, Coffee Break

11:40-12:00, Ultra-affordable electronic musical instruments

Romain Michon (GRAME-CNCM -- Lyon, France)

Ultra-affordable embedded electronic musical instruments with Faust.

12:00-12:20, 21 high-quality guitar FX WebAudio Plugins in 21 days!

Michel Buffa (Université de la Côte d'Azur -- Sophia Antipolis, France)

Make 21 high-quality guitar FX WebAudio Plugins (WAPs) from Faust code, in 21 days!

12:20-14:00, Lunch Break

Afternoon Workshops

14:00-15:00, Bela Workshop (Room C156)

Adan Benito Temprano and Andrea Guidi (Bela -- UK, London)

Bela is a maker platform for creating beautifully responsive audio and interactive applications.

This hands-on workshop will give an overview on how to create interactive musical embedded projects using our platform, showcasing some of the most useful features of Bela, such as the browser-based development environment, a built-in oscilloscope, sensor connectivity capabilities and support for many programming languages.

No special requirements are needed, just bring a computer with a working web browser on it, headphones and you are all set, we will provide Bela kits, breadboards and other electronics.

14:00-15:00, WebAudio Plugins Workshop (Room C157)

Michel Buffa (Université de la Côte d'Azur -- Sophia Antipolis, France)

In this session we will start by presenting the WAP standard (WebAudio Plugins, aka VSTs for the Web), which was designed by a group of people including FAUST authors, traditional C++ audio developers, and teams specialized in Web technologies. Thus, this WAP standard allows to write audio plugins in various languages: JavaScript of course, but also C/C++ and DSLs like FAUST via compilation to the new high performance WebAssembly standard. The presentation will focus on the new online version of the FAUST IDE, showing how without touching the code you can test and publish 100% functional WebAudio plugins directly from the IDE and use them in online host software such as a virtual pedalboard for guitarists or a DAW online. In last July, we challenged ourselves: write and publish a plugin per day during 21 days, reusing and adapting existing FAUST code. In the end, 21 days was too much, and we produced more plugins than expected!

15:00-16:00, Programming audio DSP on microcontroller-based boards (Room C156)

Romain Michon (GRAME-CNCM -- Lyon, France)

Faust can now be used to program a wide range of embedded platforms to carry out real-time audio DSP tasks. In particular, an effort was made in recent years to target powerful microcontroller-based boards such as the Teensy and the ESP-32. Despite some limitations (e.g., computational power, memory, etc.), this type of chip offers many advantages over systems used traditionally for real-time audio DSP (e.g., DSPs, embedded Linux systems, etc.) such as boot time, ultra-low latency, price, etc. In this short tutorial, we'll walk you through the steps of programming a Teensy 4.0 and an ESP-32-based board (TTGO T-Audio) with Faust to implement synthesizers and audio effects. Finally, we'll demonstrate towards the end of the workshop how Faust can be used to program other types of embedded systems such as Android smartphones.

15:00-16:00, Sound synthesis and analysis with Arrp (Room C157)

Jakob Leben (Limbic Media -- Victoria, Canada)

The workshop will introduce the unique syntax of the Arrp language which allows almost literal translation of mathematical equations for signal processing into code. The support for multi-dimensional signals and signals with different rates enables intuitive implementation of audio synthesis, processing as well as analysis algorithms. Function polymorphism supports implementation of highly reusable functions. Participants will be able to try Arrp in an online programming environment using a web browser, but limited to short input and output streams in text format. It will be demonstrated how to use Arrp to process sound files or real-time audio, and how to integrate the C++ code generated by the Arrp compiler into larger projects. A ready-to-use Arrp compiler for Linux and Mac OS will be available for download, and participants are encouraged to have installed a C++ compiler with support for C++17.

16:00-17:00, Sound spatialization with Faust: from stereo to VBAP (Room C156)

Pierre Lecomte (Université Lyon 1 -- Lyon, France)

In this workshop, we will review the laws of stereophony and the Vector Based Amplitude Panning (VBAP) sound spatialization technique. From the theory, we will program several plugins with Faust, to spatialize sound sources on a loudspeaker array.

16:00-17:00, Building and deploying SOUL effects and synths (Room C157)

Julian Storer and Cesare Ferrari (ROLI -- London, UK)

We'll walk through the process of building a chorus and a monosynth in SOUL, with attendees following along using either the web playground, the command-line tools, or Tracktion Waveform as their IDE. Towards the end of the workshop, we're hoping to be able to bring some guest hardware on which we can run people's creations!

17:00-18:00, Introduction to live-coding with TidalCycles (Room C156+C157)

Agathe Herrou (Lyon, France)

TidalCycles is a programming language derived from Haskell for the live-coding of music. This workshop will be an introduction to the different notions used in pattern-based live-coding, and to the TidalCycles language (including a crash course in Haskell). Some experience in programming in general, and in particular functional programming, would be a definite plus, but the workshop will be designed to be accessible to non-coders as well.

Ressources: It would be better for attendees to have TidalCycles installed. Installation instructions can be found here (https://tidalcycles.org/index.php/Installation). Materials from the course will be available at https://agathe.herrou.fr/tidal/ afterwards.


Michel Buffa

Michel Buffa is a professor/researcher at University Cote d'Azur, a member of the WIMMICS research group, common to INRIA and to the I3S Laboratory (CNRS). He contributed to the development of the WebAudio research field, since he participated in all WebAudio Conferences, being part of each program committee between 2015 and 2018. In addition, he actively works with the W3C WebAudio working group, has given extensive tutorials on WebAudio at several international conferences (e.g. Web Conference 2018), and has even written a MOOC module on WebAudio at edX.org, the MIT/Harvard online MOOC platform, which has had approximately 70,000 students to date. With other researchers and developers (notably with Faust authors from GRAME) he co-created the WebAudio Plugin standard (aka VSTs for the Web). He also developed (with his team) many state-of-the-art WebAudio applications for the ANR WASABI research project, in particular, tube guitar amp simulators, a virtual pedalboard application for guitarists, etc.

Florent de Dinechin

Florent de Dinechin is a professor at INSA-Lyon and CITI laboratory. His research interests include FPGA-based computing and computer arithmetic in software and hardware, in particular, the implementation of elementary functions and digital filters.

Catinca Dumitrascu

Graduated from the Ecole Normale Supérieure in Lyon with a specialization in French and comparative literature, Catinca Dumitrascu has been working in the field of cultural mediation since 2012. At Grame, national center for music creation, she is currently in charge of the pedagogy and transmission department where she imagines and implements pedagogical paths with a strong reflection on new educational tools integrating : artistic performance, musical creation and design of new musical instruments.

Cesare Ferrari

With over 25 years C++ software development experience, Cesare has worked in a wide range of industries, from safety critical systems through low latency trading to audio plugin development. He is currently working with Jules on the design and implementation of the SOUL programming language and runtime.

Andrea Guidi

Andrea Guidi is a P.h.D. student at the Centre for Digital Music (C4DM), Queen Mary University of London. Graduated in electronic music composition and sound technology at the Music Conservatory of Milan, his research focuses on embodied performance and sonic interaction design using embedded low-latency audio platforms. Before starting his P.h.D., he worked both as a teacher, and in the music industry as part of a band signed to EMI publishing. As a designer, he recently presented an interactive sound installation at ARS Electronica 2019, Linz. His teaching activity focuses on visual programming languages (like Pure Data), basic electronic circuits design for acquiring sensors data, and electronic music production.

Agathe Herrou

Agathe Herrou is currently preparing a PhD on geometric approaches to optimal transport. Prior to that, she was working on lambda-calculus, which gave her a theoretical advantage when she started learning Haskell to delve into TidalCycles about two years ago. Since then, she has explored this language and has given several performances, including an opening act for Graham Dunning.

Jakob Leben

Jakob has recently obtained a PhD in computer science from the University of Victoria, Canada. The language Arrp and its novel compilation techiques were the topic of his thesis. He also studied computer music composition at the Institute of Sonology, the Netherlands, and philosophy at the University of Ljubljana, Slovenia. Before developing Arrp, he contributed to the audio programming framework SuperCollider, most notably as a creator of its cross-platform IDE. Jakob is currently working at Limbic Media, Canada, where he is developing machine listening algorithms for the Aurora sound-reactive lighting system.

Pierre Lecomte

Pierre Lecomte completed his PhD in 2016 at the "Conservatoire National des Arts et Métiers" (Paris, France) and at the University of Sherbrooke in (Canada). During this period, his research were on 3D sound field synthesis with higher-order ambisonics. He authored a plug-in suite in Faust for sound field synthesis "ambitools" After two post-doctoral experiences between 2017 and 2019, he works now as an associate professor at the University of Lyon 1, in the Laboratory of Fluid Mechanics and Acoustics.

Romain Michon

Romain Michon is a full-time researcher at GRAME-CNCM (Lyon, France) and a researcher and lecturer at the Center for Computer Research in Music and Acoustics (CCRMA) at Stanford University (USA). He has been involved in the development of the Faust programming language since 2008. Beside that, Romain's research interests involve embedded systems for real-time audio processing, Human Computer Interaction (HCI), New Interfaces for Musical Expression (NIME), and physical modeling of musical instruments.

Yann Orlarey

Yann Orlarey is currently the scientific director of GRAME-CNCM (Lyon, France). His research work focuses on the design and implementation of programming languages for musical and sound creation, with a particular interest in lambda-calculus, functional programming, and real-time and compilation techniques. Yann Orlarey and his colleagues at Grame are the designers of Faust (Functional Audio Stream), a functional programming language for sound synthesis and audio processing with a strong focus on the design of synthesizers, musical instruments, audio effects, etc.

Julian Storer

Julian Storer is the creator of Tracktion, JUCE and SOUL. He is currently working at ROLI on JUCE and the recently-released SOUL audio language.

Adan Benito Temprano

Adan Benito is currently pursuing his PhD within the AI + Music programme at Queen Mary University of London in the Centre for Digital Music (C4DM). His research interests focus on left-hand gesture analysis on guitar combining fuzzy sensor data and MIR to explore the potential of a latent gestural space able to capture expressivity for the design of new instrument augmentations. Adan holds an MSc on Sound and Music Computing from Queen Mary University of London, and a Telecommunications Engineering Degree and an MSc in Radio Communications from University of Cantabria. Since 2018 he has been one of the core developers behind Bela (bela.io). Besides that, he has a passion for all things guitar, ranging from playing to guitar making.


Participants must register online: PAW 2019 REGISTRATION IS NOW CLOSED. Registration is free in the limit of available seats.

Feel free to write your questions to paw_at_grame_dot_fr.