Provided by: faust_2.37.3~ds0-1_amd64
NAME
Faust - DSP to C/C++, CSharp, DLang, Interpreter, Java, LLVM IR, Rust, SOUL, and WebAssembly (wast/wasm)
SYNOPSIS
faust [options] file1 [file2 ...]
DESCRIPTION
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.
OPTIONS
Input options: -a <file> wrapper architecture file. -i –inline-architecture-files inline architecture files. -A <dir> –architecture-dir <dir> add the directory <dir> to the architecture search path. -I <dir> –import-dir <dir> add the directory <dir> to the import search path. -L <file> –library <file> link with the LLVM module <file>. -t <sec> –timeout <sec> abort compilation after <sec> seconds (default 120). Output options: -o <file> the output file. -e –export-dsp export expanded DSP (with all included libraries). -uim –user-interface-macros add user interface macro definitions to the output code. -xml generate an XML description file. -json generate a JSON description file. -O <dir> –output-dir <dir> specify the relative directory of the generated output code and of additional generated files (SVG, XML...). Code generation options: -lang <lang> –language select output language, `lang' should be c, cpp (default), csharp, dlang, fir, interp, java, julia, llvm, ocpp, rust, soul or wast/wasm. -single –single-precision-floats use single precision floats for internal computations (default). -double –double-precision-floats use double precision floats for internal computations. -quad –quad-precision-floats use quad precision floats for internal computations. -fx –fixed-point use fixed-point for internal computations. -es 1|0 –enable-semantics 1|0 use enable semantics when 1 (default), and simple multiplication otherwise. -lcc –local-causality-check check causality also at local level. -light –light-mode do not generate the entire DSP API. -clang –clang when compiled with clang/clang++, adds specific #pragma for auto- vectorization. -exp10 –generate-exp10 pow(10,x) replaced by possibly faster exp10(x). -os –one-sample generate one sample computation (same as -os0). -os0 –one-sample0 generate one sample computation (0 = separated control). -os1 –one-sample1 generate one sample computation (1 = separated control and DSP struct). -cm –compute-mix mix in outputs buffers. -cn <name> –class-name <name> specify the name of the dsp class to be used instead of mydsp. -scn <name> –super-class-name <name> specify the name of the super class to be used instead of dsp. -pn <name> –process-name <name> specify the name of the dsp entry-point instead of process. -mcd <n> –max-copy-delay <n> threshold between copy and ring buffer implementation (default 16 samples). -dlt <n> –delay-line-threshold <n> threshold between `mask' and `select' ring buffer implementation (default INT_MAX samples). -mem –memory allocate static in global state using a custom memory manager. -ftz <n> –flush-to-zero <n> code added to recursive signals [0:no (default), 1:fabs based, 2:mask based (fastest)]. -rui –range-ui whether to generate code to limit vslider/hslider/nentry values in [min..max] range. -inj <f> –inject <f> inject source file <f> into architecture file instead of compiling a dsp file. -scal –scalar generate non-vectorized code. -inpl –in-place generates code working when input and output buffers are the same (scalar mode only). -vec –vectorize generate easier to vectorize code. -vs <n> –vec-size <n> size of the vector (default 32 samples). -lv <n> –loop-variant <n> [0:fastest (default), 1:simple]. -omp –openmp generate OpenMP pragmas, activates –vectorize option. -pl –par-loop generate parallel loops in –openmp mode. -sch –scheduler generate tasks and use a Work Stealing scheduler, activates –vectorize option. -ocl –opencl generate tasks with OpenCL (experimental). -cuda –cuda generate tasks with CUDA (experimental). -dfs –deep-first-scheduling schedule vector loops in deep first order. -g –group-tasks group single-threaded sequential tasks together when -omp or -sch is used. -fun –fun-tasks separate tasks code as separated functions (in -vec, -sch, or -omp mode). -fm <file> –fast-math <file> use optimized versions of mathematical functions implemented in <file>, use `faust/dsp/fastmath.cpp' when file is `def'. -mapp –math-approximation simpler/faster versions of `floor/ceil/fmod/remainder' functions. -ns <name> –namespace <name> generate C++ or D code in a namespace <name>. -vhdl –vhdl output vhdl file. -wi <n> –widening-iterations <n> number of iterations before widening in signal bounding. -ni <n> –narrowing-iterations <n> number of iterations before stopping narrowing in signal bounding. Block diagram options: -ps –postscript print block-diagram to a postscript file. -svg –svg print block-diagram to a svg file. -sd –simplify-diagrams try to further simplify diagrams before drawing. -drf –draw-route-frame draw route frames instead of simple cables. -f <n> –fold <n> threshold to activate folding mode during block-diagram generation (default 25 elements). -fc <n> –fold-complexity <n> complexity threshold to fold an expression in folding mode (default 2). -mns <n> –max-name-size <n> threshold during block-diagram generation (default 40 char). -sn –simple-names use simple names (without arguments) during block-diagram generation. -blur –shadow-blur add a shadow blur to SVG boxes. Math doc options: -mdoc –mathdoc print math documentation of the Faust program in LaTeX format in a -mdoc folder. -mdlang <l> –mathdoc-lang <l> if translation file exists (<l> = en, fr, ...). -stripmdoc –strip-mdoc-tags strip mdoc tags when printing Faust -mdoc listings. Debug options: -d –details print compilation details. -time –compilation-time display compilation phases timing information. -flist –file-list print file list (including libraries) used to eval process. -tg –task-graph print the internal task graph in dot format. -sg –signal-graph print the internal signal graph in dot format. -norm –normalized-form print signals in normalized form and exit. -ct –check-table check table index range and exit at first failure. -cat –check-all-table check all table index range. -me –math-exceptions check / for 0 as denominator and remainder, fmod, sqrt, log10, log, acos, asin functions domain. Information options: -h –help print this help message. -v –version print version information and embedded backends list. -libdir –libdir print directory containing the Faust libraries. -includedir –includedir print directory containing the Faust headers. -archdir –archdir print directory containing the Faust architectures. -dspdir –dspdir print directory containing the Faust dsp libraries. -pathslist –pathslist print the architectures and dsp library paths. Example: faust -a jack-gtk.cpp -o myfx.cpp myfx.dsp
SEE ALSO
Grame Faust site at: <https://faust.grame.fr>
BUGS
Please report bugs to: <https://github.com/grame-cncm/faust/issues>
AUTHOR
Copyright (C) 2002-2021, GRAME - Centre National de Creation Musicale. All rights reserved.