1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71
|
faust2ck - A FAUST wrapper-generator for ChucK Ugens.
========
FAUST is a functional language for defining DSP structures that can be
used for real-time audio computing. It can generate block diagrams
and also C++ code which will execute the given routine.
This is an ideal way to create unit generators (UGens) for ChucK. The
ChucK data structures can be a bit weird and the learning curve for
hacking on ChucK can be a little steep. Using FAUST, you can
concentrate on the DSP algorithm, and allow faust2ck to take care of
creating ChucK-compatible C++ code so that you can instantiate your
new DSP object in a ChucK program.
Please see the FAUST websites for more details, online tutorials, and
even an online compiler that you can try:
http://faust.grame.fr/
https://fausteditor.grame.fr/
https://faustide.grame.fr/
This document describes how to use faust2ck.
This code is directly based off of Scott Sinclair's original faust2ck,
without which this latest iteration would not exist.
Build/Install
=============
To build faust2ck, first download the source:
$ git clone https://github.com/spencersalazar/faust2ck.git
Then compile:
$ cd faust2ck/src
$ make
Then install!
$ sudo make install
Usage
=====
Running faust2ck with no parameters will give you a usage string:
$ faust2ck
Usage: faust2ck <filename.dsp>
You can see that it requires a single input, the name of a FAUST .dsp file.
How you come up with this .dsp file is beyond the scope of this document,
but check out here: http://faust.grame.fr/examples.html for some
cool examples.
When you execute faust2ck with a suitable .dsp file:
$ faust2ck filename.dsp
it will generate a ChuGin called "filename.chug". You can load this into ChucK
with the -g option:
$ chuck -gfilename
but chuck will exit immediately because you haven't provided it with a script
to run. If you want to load your new ChuGin without the annoying -g option,
simply copy it to your ChuGin directory (typically /usr/local/lib/chuck).
|