Material from the community
Here is a list of additional material contributed by the community of Faust developers or users.
Articles, Video and Blog Posts
Handling infinity and not-a-number (NaN) values in Faust and C++ audio programming
This post by Dario Sanfilippo discusses insights gained over a few years of audio programming to implement robust Faust/C++ software, particularly when dealing with infinity and NaN values.
Three ways to implement recursive circuits in the Faust language
This post by Dario Sanfilippo is about the implementation of not-so-simple recursive circuits in the Faust language.
Make LV2 plugins with Faust
This post by Nicola Landro is about making LV2 plugins with Faust.
Getting started with Faust for SuperCollider
This post by Mads Kjeldgaard is about using Faust with SuperCollider.
Get Started Audio Programming with the FAUST Language
This post by Matt K is about starting audio Programming with Faust.
Using Faust on the OWL family of devices
This tutorial focus on using Faust and on features that are specific to OWL and the OpenWare firmware.
I ported native guitar plugins to JavaScript (in-depth)
This post by Konstantine Kutalia is porting Faust coded Kapitonov Plugins Pack in JavaScript.
Using Faust with the Arduino Audio Tools Library
A blog about using Faust with Arduino Audio Tools.
Writing a Slew Limiter in the Faust Language
A video about writing a Slew Limiter in the Faust Language by Julius Smith.
Make an Eight Channel Mixer in the Faust IDE
A video about making an Eight Channel Mixer in the Faust IDE by Julius Smith.
Various Tools
Syntax Highlighting
Syntax Highlighting Files
This folder contains syntax highlighting files for various editors.
Sublime Text syntax
Sublime Text syntax file for the Faust programming language.
Faust-Mode
Major Emacs mode for the Faust programming language, featuring syntax highlighting, automatic indentation and auto-completion.
Faustine
Faustine allows the edition of Faust code using emacs.
faust neovim plugin
Plugin to edit Faust code in the hyperextensible Vim-based text editor neowim.
Code Generators
faust2pdex
Generator of Faust wrappers for Pure Data. This software wraps the C++ code generated by Faust into a native external for Pure Data. You obtain a piece of source code that you can use with pd-lib-builder to produce a native binary with the help of make. No knowledge of C++ programming is required.
Faust.quark
This SuperCollider package makes it possible to create SuperCollider packages (Quarks) containing plugins written in Faust code. With this, you can distribute plugins written in Faust and make it easy for others to install, compile or uninstall them. It also contains some simple interfaces for the faust
and faust2sc.py
commands used behind the scenes.
ode2dsp
ode2dsp is a Python library for generating ordinary differential equation (ODE) solvers in digital signal processing (DSP) languages. It automates the tedious and error-prone symbolic calculations involved in creating a DSP model of an ODE.
Features:
- Support linear and nonlinear systems of ODEs
- Support trapezoidal and backward Euler discrete-time integral approximations
- Approximate solutions of implicit equations using Newton's method
- Render finite difference equations (FDEs) to Faust code
- Calculate stability of ODEs and FDEs at an operating point
Contributing
Feel free to contribute by forking this project and creating a pull request, or by mailing the library description here.