top of page

NET–SOUNDS Workshop : Introduction to digital audio processing with Faust

Del 04 de mayo del 2016 al 02 de mayo del 2016



El objetivo de este taller de tres días es enseñar a construir aplicaciones de audio digital, a través del uso de Faust.


Este taller enseñará herramientas que serán de utilidad para aquellos que quieran presenter sus  proyectos  en la convocatoria “Net- Sounds. Residences Lyon-México 2016-2017”. PDF de convocatoria.


Fechas: 2, 3 y 4 de mayo

Horario: 10 am a 1pm y 2pm a 6pm

Cupo máximo: 15 personas

Lugar: auditorio del CMMAS


Impartido en Inglés

Es necesario que se inscriban al taller antes del 25 de abril con


Descripción del taller:

Duration : 3 days

Within the framework of the NET-SOUNDS projects, the goal of this three days workshop is to learn how to build digital audio applications, in particular web audio applications, using Faust. The participants should be familiar with computers and web development, but no pre-existing knowledge of Faust is required. The attendee will learn to program with Faust during the workshop.


About Faust

Faust (Functional Audio Stream) is a functional programming language specifically

designed for real-time signal processing and synthesis. Faust targets high-performance

signal processing applications and audio plug-ins for a variety of platforms and standards.

A distinctive feature of Faust is that it is not an interpreted, but a compiled language. The Faust compiler translates Faust programs into optimized C++ code for : MaxMSP, VST, LV2, Puredata, SuperCollider, Csound, etc. Faust can also compile to other programming languages, in particular Javascript, and can therefore be used to create efficient realtime audio applications that run in web browsers.


Objectives of the workshop

At the end of the workshop the participants will:

  • have acquire basic programming skills in Faust,

  • have acquire basic knowledge of signal processing,

  • understand how simple digital audio effects work,

  • be able to develop their own audio applications or plugins, in particular web audio applications.


Program of the Workshop

Day 1

  • Why programming is important for digital artists

  • Introduction to Faust and related tools

  • Introduction to audio synthesis

  • what is digital audio

  • simple oscillators

  • frequency modulation

  • Introduction to audio analysis

  • envelop detection

  • pitch detection

Day 2

  • Introduction to audio processing

  • delays and echos

  • panning

  • filters

  • flangers

  • reverb

  • distorsion

  • granular synthesis

  • spatialisation

Day 3

  • Building an audio applications

  • Organizing and structuring Faust code

  • Designing user interfaces (GUI, MIDI, OSC, HTTP)

  • Deploying Faust code on multiple targets

  • Using Faust for Web audio development


Equipments and softwares

We recommend one computer with headphones per participant. Additionally one computer for the teacher with a video projector and a stereophonic sound system will be needed. Internet connection on every machine is highly recommended.


Concerning softwares, many developments can be done via a Web browser using online tools like the faust online compile ( and the Faust playground ( Nevertheless we recommend to install FaustLive (see on all machines before the beginning of the workshop.


About Yann Orlarey

Yann Orlarey (1959) is a french composer and researcher.


He is currently scientific director at GRAME. His repertoire includes sound installations, realtime interactive pieces, and instrumental pieces for soloists, small groups and orchestras. Works by him have been performed in Europe, North America and Asia.


His research work focuses on real-time architectures of music systems, and programming languages for music composition and audio processing. He authored or co-authored more than 50 scientific papers and several music-oriented softwares. He is the designer of FAUST (Functional Audio Stream), a functional programming language specifically designed for real-time signal processing and synthesis. His current research interests include efficient compilation and parallelization of signal processing programs and preservation of signal processing programs using formal mathematical techniques.


  • Cmmas | Facebook
  • Cmmas | Instagram
  • Cmmas | X
bottom of page