New directory tree, with preprocessor/ inside interpretor/.
[Faustine.git] / interpretor / preprocessor / faust-0.9.47mr3 / README
1 FAUST : a programming language for
2 audio applications and plugins
3 ==============
4 Grame, Centre National de Creation Musicale
5 http://www.grame.fr
6
7
8
9 1/ Introduction
10 ----------------
11 FAUST (Functional Audio Stream) is a functional programming
12 language specifically designed for real-time signal processing and
13 synthesis. A distinctive characteristic of FAUST is to be fully
14 compiled.
15
16 The FAUST compiler translates DSP specifications into
17 very efficient C++ code that works at sample level. It targets
18 high-performance signal processing applications, libraries and
19 audio plug-ins for a variety of audio platforms and standards. A
20 same FAUST specification can be used to easily generate native
21 JACK or ALSA applications, as well as CSOUND, LADSPA, MAX/MSP, PD,
22 Q, SC and VST plugins.
23
24
25 2/ Organisation of the distribution
26 -----------------------------------
27 The Faust distribution can be downloaded at:
28 http://sourceforge.net/projects/faudiostream
29
30 It's organisation is the following :
31
32 architecture/ : the architecture files and libraries
33 currently supported
34 benchmark/ : tools to measure the impact of various
35 compiler options
36 compiler/ : sources of the Faust compiler
37 documentation / : Faust developer's documentation
38 examples/ : examples of Faust programs with makefiles
39 for various audio targets
40 syntax-highlighting/: support for syntax highlighting for
41 several editors
42 tools/ : Additional easy-to-use scripts to
43 produce binaries and plugins
44
45
46 3/ Compilation and installation
47 --------------------------------
48 To compile and install the Faust compiler on Linux and MacOSX :
49
50 make
51 su
52 make install
53 or
54 sudo make install
55
56 It could be also useful to install additional tools, for example :
57
58 cd tools/faust2appls/
59 sudo make install
60
61 On Windows :
62
63 The first option is to use the Visual Studio 2008 solution
64 /faust/compiler/windows/faust_vs2008.sln. Open the solution with
65 the Visual Studio 2008 environment and run Build. Both
66 Debug/Release targets are supported.
67
68 The second solution is to download and install the QT4.6 SDK :
69 http://qt.nokia.com/downloads/sdk-windows-cpp
70 and use the project file 'compiler.pro' in the compiler folder.
71
72
73 2/ Compilation of the examples
74 -------------------------------
75 Several FAUST examples are provided in the example folder. To
76 compile and test the examples with Jack/GTK do :
77
78 cd examples
79 make jackgtk
80
81 This will create a subfolder jackgtkdir with all the jack
82 applications. You can also create alsa applications (make alsagtk)
83 as well as other formats.
84
85 In order to compile your own applications, you can simply place you
86 files in the example folder and use the existing makefiles.
87
88 To list for possible audio targets :
89
90 make help
91
92 About 20 different audio plateforms are supported :
93
94 - Action Script
95 - Alsa
96 - ChucK
97 - CoreAudio
98 - CSOUND
99 - iPhone
100 - Jack
101 - LADSPA
102 - Matlab
103 - MaxMSP
104 - Octave
105 - OSS
106 - PortAudio
107 - Pure
108 - PureData
109 - Q
110 - Sndfile
111 - Snd-RT
112 - SuperCollider
113 - SynthFile
114 - VST
115 - VSTi (mono)
116
117 For all these audio platforms you may have to install the related
118 SDK and/or development libraries.
119
120 4/ Acknowledgments
121 ------------------
122
123 Many persons have been contributing to the FAUST project by
124 providing code for the compiler, architecture files, libraries,
125 examples, documentation, scripts, bug reports, ideas, etc.
126
127 I would like to thank them and especially: Fons Adriaensen, Tiziano
128 Bole, Baktery Chanka, Thomas Charbonnel, Damien Cramet, Etienne
129 Gaudrin, Albert Graef, Stefan Kersten, Victor Lazzarini, Matthieu
130 Leberre, Mathieu Leroi, Kjetil Matheussen, Remy Muller, Sampo
131 Savolainen, Nicolas Scaringella, Stephen Sinclair, Travis Skare,
132 Julius Smith, as well as my colleagues at GRAME, in particular :
133 Dominique Fober, Stephane Letz and Karim Barkati, and from the
134 ASTREE project : Jerome Barthelemy (IRCAM), Alain Bonardi (IRCAM),
135 Raffaele Ciavarella (IRCAM), Pierre Jouvelot (Ecole des
136 Mines/ParisTech), Laurent Pottier (U. Saint-Etienne)
137
138
139 5/ Questions and suggestions
140 ----------------------------
141
142 If you have questions suggestions and comments, or if you want to
143 contribute to the project, two mailing lists are available:
144 https://lists.sourceforge.net/lists/listinfo/faudiostream-devel
145 https://lists.sourceforge.net/lists/listinfo/faudiostream-users
146
147
148
149
150 Yann Orlarey
151