FAUST is a language that compiles real-time audio signal processing software. Its code can be easily written and tested, allowing for rapid prototyping and development for music and audio applications.
Essentially, FAUST is a structured block diagram language that has a textual syntax. When programming with FAUST, users create a signal processor block-diagram - a code that produces output signals according to its input signals - with some UI parameters. Using FAUST means programming with electronic circuits and signals.
The language is compiled and translated to C++, with compilation based on a semantic approach that focuses on compiling the mathematical meaning of the block-diagram and what it computes. This results in highly efficient code, often performing just as well, if not better than hand-written C code.
The latest release includes several new architecture files, such as vst2p4.cpp, vsti-mono.cpp, and matlabplot.cpp, as well as new scripts for generating executable applications, including faust2alsa, faust2jack, and faust2plot. There are also new libraries like filter.lib and effect.lib, and improved metadata management with tags reported as comments in the generated C++ code.
This release contains extensions to the Faust language like the new fvariable declaration and unary operator "-" with identifiers. Moreover, many bugs have been corrected, new architecture files have been added, and various libraries have been improved, including a new oscillator library. Finally, compilation time for complex programs has been remarkably reduced.
Overall, FAUST is a powerful tool that can compete with hand-written code when it comes to real-time audio signal processing. Its blend of functional programming and block diagram composition makes it a popular choice for audio developers looking to deliver efficient audio plugins or standalone applications quickly.
Version 0.9.9.4: N/A