New directory tree, with preprocessor/ inside interpretor/.
[Faustine.git] / interpretor / preprocessor / faust-0.9.47mr3 / examples / faust-stk / README
diff --git a/interpretor/preprocessor/faust-0.9.47mr3/examples/faust-stk/README b/interpretor/preprocessor/faust-0.9.47mr3/examples/faust-stk/README
new file mode 100644 (file)
index 0000000..a43dca7
--- /dev/null
@@ -0,0 +1,122 @@
+FAUST SYNTHESIS TOOLKIT: A SET OF LINEAR AND NONLINEAR PHYSICAL MODELS FOR FAUST
+                        
+CIEREC, EA 3068                                Center for Computer Research in Music and Acoustics
+UniversitĂ© Jean Monnet                 and    (CCRMA) Stanford University
+F-42023, Saint-Etienne, France         Palo Alto, CA 94305, USA
+                             
+                        
+
+1/ What is it?
+--------------
+
+The FAUST Synthesis ToolKit is a set virtual musical instruments written in the FAUST 
+programming language and based on waveguide algorithms and modal synthesis. Most of them
+were inspired by instruments implemented in the Synthesis ToolKit and the program SynthBuilder.
+
+The STK is developed since 1996 by P. R. Cook and G. P. Scavone. It is a set of open 
+source audio signal processing and algorithmic synthesis classes written in the C++ programming
+language that can be used in the development of music synthesis and audio processing
+software (https://ccrma.stanford.edu/software/stk/).
+
+On the other hand, SynthBuilder was a program used at Stanford's CCRMA (Center for Computer Research 
+in Music and Acoustics) in the nineties to implement physical models of musical instruments. Most
+of its algorithms use the waveguide synthesis technique but some of them are also based on modal synthesis.
+
+Our attention has partly been focused on the pedagogical aspect of the implemented objects. Indeed, 
+we tried to make the FAUST code of each objects as optimized and as expressive as possible.
+
+Some of the instruments in the (FAUST-STK) use nonlinear allpass filters to create interesting and 
+new behaviors. Also, most of them can be used with gesture following datas (see the /gesture-following folder
+for some examples).
+
+2/ Which instruments?
+---------------------
+
+WIND INSTRUMENTS
+
+     - A simple clarinet (clarinet.dsp),
+     - A clarinet with a tone hole model (blowHole.dsp),
+     - A flute (flutestk.dsp),
+     - A pan-flute (flute.dsp),
+     - A brass instrument that can be used as a trumpet, a trombon, a french horn, etc. (brass.dsp),
+     - A simple saxophone (saxophony.dsp),
+     - A bottle where it is possible to blow threw the neck to make sound (blowBotle.dsp).
+
+STRING INSTRUMENTS
+
+     - An acoustic finger bass (bass.dsp),
+     - A bowed string instrument that can be used as a cello, a violin, etc. (bowed.dsp),
+     - A simple sitar (sitar.dsp),
+     - A nonlinear extended Karplus-Strong (NLFeks.dsp).  
+
+KEYBOARDS INSTRUMENTS
+
+     - A piano that uses commuted waveguide synthesis (piano.dsp),
+     - An harpsichord (harpsi.dsp).
+
+PERCUSSION INSTRUMENTS
+
+     - A tibetan bowl (tibetanBowl.dsp),
+     - A wooden bare (uniBar.dsp),
+     - An iron bare (tunedBar.dsp),
+     - A glass bare (glassHarmonica.dsp),
+     - A set of percussion instruments that use modal synthesis (modalBar.dsp). 
+
+OTHER  
+
+     - A voice synthesizer (voiceForm.dsp),
+     - A FM synthesizer that uses an nonlinear allpass filter (NLFfm.dsp).
+
+3/ Organisation of the distribution and remarks
+-----------------------------------------------
+
+Most of the instruments implemented in the FAUST-STK use functions declared in instrument.lib so
+this file is required for compilation. Also, a few instruments use datas that are stored in external
+C++ functions (.h).
+
+The "pd-patches" folder contains examples of use of the FAUST-STK instruments in PureData (faust2pd
+needs to be install on your computer to use these examples). 
+
+The FAUST-STK instruments are all monophonic. If you wish to make them polyphonic, we recommend you
+to compile them for PureData and to use faust2pd ("make pdpoly2" or "make pdpoly4" or "make pdpoly6" or
+"make pdpoly8" where 2, 4, 6 and 8 are the number of voices). For more informations about that, 
+you can look at the examples in the pd-patches/ folder. 
+
+You can find in the gesture-following/ folder an improved version of bowed.dsp that uses gesture following
+datas in PureData (first, type "make" in a terminal and then open playMe.pd). This work has been done with
+the help of E. Maestre (MTG, Barcelona).
+
+The instruments from the Faust-STK have been tested with the OSC support for FAUST implemented with some
+of the architecture files (jackqt, jackgtk, etc.).
+
+3/ How to compile?
+------------------
+
+In order to compile the instruments, the latest FAUST repository must be installed on your computer 
+(03/21/2011) as well as all the required dependencies for the FAUST architecture you wish to use. 
+
+Type "make help" in a terminal to print the list of available architectures and to know how to compile
+the examples.
+
+4/ Acknowledgments
+------------------
+
+This work has been carried out in the frame of the ASTREE project (Analyse et Synthèse Temps REEl), 
+supported by the Agence Nationale de Recherche (ANR-08-CORD-003) at Stanford's CCRMA (Center for 
+Computer Research in Music and Acoustics).
+
+Special thanks to J.O. Smith, Y. Orlarey, E. Maestre, S. Letz and L. Pottier for their support and help.
+
+Thanks also to my colleagues from the CCRMA team for all their suggestions and good ideas.
+
+5/ Questions and suggestions
+----------------------------
+
+About FAUST-STK: rmichon@ccrma.stanford.edu or rmnmichon@gmail.com
+
+About FAUST: https://lists.sourceforge.net/lists/listinfo/faudiostream-users  
+
+
+
+
+Romain Michon
\ No newline at end of file