Faust DSP on Microcontrollers

Programming microcontrollers with the Faust programming language for real-time audio DSP applications. This includes faust2teensy and faust2esp32.

Faust Tutorials

A series of tutorials around the Faust programming language. Various topics are covered including physical modeling in Faust, making mobile apps with Faust, using faust2api, etc.

FAST Project

A project to program FPGAs with the Faust programming langauge towards active acoustic control.

The Gramophone

A speaker/musical instrument with built-in sensors programmable in Faust.

Amstramgrame

A pedagogical project to facilitate the teaching of maths and physics through audio programming.

SyFaLa Project

A project to explore the possibility of programming FPGAs boards with Faust for ultra-low latency real-time audio signal processing.

Faust Mass Interaction

A collection of tools to implement mass-interaction physical models with Faust.

Faust Physical Modeling Toolkit

A set of tools in the Faust programming language to easily implement physical models of musical instruments. This is a sub-project of the hybrid lutheries project.

Mobile 3D OpenScad Library

An OpenScad library to simplify the design of mobile device augmentations. This is a sub-project of the hybrid lutheries project.

SmartKeyboard App Generator

A tool to generate musical applications on Android and iOS. This is a sub-project of the hybrid lutheries project.

Mobile Devices External Control

A comparison of various techniques that can be used to send real-time data to a wide range of mobile device.

FaucK

A tool to compile Faust code on the fly within the Chuck programming language.

Nuance

A device adding multi-touch force sensitivity and velocity detection to the iPad screen.

3D Printing and Physical Modeling

A new technique to predict the acoustical properties of 3D printed resonators using a matrix of impulse responses and mode interpolation.

Driving Simulator Audio Engine

A custom audio engine for the Stanford driving simulator.

BladeAxe Series

The BladeAxe is a guitar-like controller that uses "real world" audio excitations to drive a physical model of a guitar on a laptop.

faust2android

A tool that converts a Faust code into a fully functional Android application.

faust2api

A system to generate robust and high level APIs for real time audio processing for a wide range of platforms.

Mephisto

Mephisto is an open source project. Up to 5 sensors can be plugged to it. Their output signals are digitalized and streamed as OSC messages on any WIFI network. A simple program can be used to configure it. Mephisto is compatible with apps generated by faust2android.

AnaLocos

AnaLocos is a CCRMA based orchestra of analog synthesizers. On this blog, I give technical details about my own synth (parts list, schematic, etc.).

The Chanforgnophone

The Black Box is a site based installation that allows users to create unique sounds through physical interaction.

The BlackBox

The Black Box is a site based installation that allows users to create unique sounds through physical interaction.

The Féraillophone

The Férraillophone is a "musical instrument" made of two surfaces: a compact disc and lazer disc. These surfaces can be stroke, bowed, etc. to generate an excitation that is captured by piezo sensors.

Hybrid Saxophone

A hybrid saxophone where the mouthpiece was designed on a computer and 3D printed and where the bore is a waveguide physical model.

The Faust Online Compiler

The Faust Online Compiler is a PHP/JavaScript based web application that provides a cross-platform and cross-processor programming environment for the Faust language.

The Faust-STK

The Faust-STK is a set of instruments written in the FAUST programing language.

Chant-lib

A full re-implementation of the CHANT program in OpenMusic.

Hybrid Screen

A "hybrid" physical model controller based on a screen and a series of sensors.

Faust 3

An extended version of the Faust programming language algebra allowing to create multi-dimensional block diagrams.

Hybrid Luthery

My PhD Thesis

2018-2020 Atelier d'informatique musicale
Role: Main Instructor
Fall 2018-2020 - Université Jean Monnet, Saint-Étienne (France)

2020 Embedded Systems for Real-Time Audio Processing
Role: Main Instructor (with Tanguy Risset)
Fall 2020 - INSA Lyon, Lyon (France)

2018-2021 Physical Interaction Design for Music
Role: Main Instructor
Winters and Springs 2018-2021 - CCRMA, Stanford University

2018-2019 Digital Signal Processing With the Faust Programming Language
Role: Main Instructor
2018-2019 - Aalborg University, Copenhagen (Denmark)

2019 Low-Level Embedded DSP for New Musical Instruments
Role: Main Instructor
2019 - Aalborg University, Copenhagen (Denmark)

2018 Real-Time Audio Signal Processing in Faust
Role: Main Instructor
2018 - Online Course, Kadenze Platform

2018 Augmented Smartphones for New Musical Instruments
Role: Main Instructor
2018 - Aalborg University, Copenhagen (Denmark)

2017 Mobile Synth Workshop Series
Role: Main Instructor (co-teaching with John Granzow)
Summer 2017 - CCRMA, Stanford University

2017 CCRMA Faust Day
Role: Main Instructor
April 2017 - CCRMA, Stanford University

2017 Augmented Smartphone Workshop
Role: Main Instructor
March 2017 - Aalborg University, Copenhagen (Denmark)

2016 Music 256a / CS 476a: Music, Computing, and Design I: Art of Design for Computer Music
Role: main instructor (replacing Ge Wang on sabbatical)
Fall 2016 - CCRMA, Stanford University

2016 CCRMA Stompbox Summer Workshop
Role: Main Instructor (co-teaching with Esteban Maestre)
July 2016 - CCRMA, Stanford University

2016 CCRMA Composed Instrument Summer Workshop
Role: Main Instructor (co-teaching with John Granzow)
July 2016 - CCRMA, Stanford University

2016 CCRMA Audio Plug-ins Designed with Faust Summer Workshop
Role: Main Instructor
July 2016 - CCRMA, Stanford University

2016 Stanford Music Department TA Training
Role: Main Instructor (assistant: Kara Riopelle)
Spring 2016 - Stanford University

2016 CCRMA Faust Day
Role: Main Instructor
February 2016 - CCRMA, Stanford University

2015 CCRMA Audio Plug-ins Designed with Faust Summer Workshop
Role: Main Instructor
July 2015 - CCRMA, Stanford University

2015 CCRMA Audio Plug-ins Designed with Faust Summer Workshop - Online Course Version
Role: Main Instructor
July 2015 - CCRMA, Stanford University

2015 Stanford Music Department TA Training
Role: Assistant Instructor (main instructor: Victoria Chang)
Spring 2015 - Stanford University

2015 Music 220c: Research Seminar in Computer Generated Music
Role: Teaching Assistant (main instructor: Prof. Chris Chafe)
Spring 2015 - CCRMA, Stanford University

2015 CCRMA Faust Day
Role: Main Instructor
January 2015 - CCRMA, Stanford University

2015 Music 256b / CS 476b: Mobile Music (Music, Computing, and Design II)
Role: Teaching Assistant (main instructor: Prof. Ge Wang)
Winter 2015 - CCRMA, Stanford University

Audio Plug-ins Designed with Faust Workshop - Festival de Audio y Acústica Costarricense
Role: Main Instructor
September 2014 - San Jose, Costa Rica

2015 Music 250a: Physical Interaction Design for Music
Role: Teaching Assistant (main instructor: Sasha Leitman)
Fall 2014 - CCRMA, Stanford University

2014 CCRMA Audio Plug-ins Designed with Faust Summer Workshop
Role: Main Instructor
July 2014 - CCRMA, Stanford University

2014 Music 220c: Research Seminar in Computer Generated Music
Role: Teaching Assistant (main instructor: Prof. Chris Chafe)
Spring 2014 - CCRMA, Stanford University

2014 Music 220b: Compositional Algorithms, Psychoacoustics, and Spatial Processing
Role: Teaching Assistant (main instructor: Prof. Ge Wang)
Winter 2014 - CCRMA, Stanford University

2013 Music 220a: Fundamentals of Computer-Generated Sound
Role: Teaching Assistant (main instructor: Prof. Chris Chafe)
Fall 2013 - CCRMA, Stanford University

2013 CCRMA Faust Day
Role: Main Instructor
January 2013 - CCRMA, Stanford University