GRAME - Centre National de Creation Musicale - is happy to announce the release 
of FAUST 
0.9.65.

This release provides some extensions to the language, two new architectures : 
Android and 
Audio Units, enhanced libraries and a new hoa.lib (high order ambisonic) 
library, enhanced 
iOS and LV2 architectures, improved HTTP and OSC support, new examples 
(guitarix 
amplifiers)...


-------------
About FAUST :
-------------

FAUST (Functional Audio Stream) is a functional programming language 
specifically designed 
for real-time signal processing and synthesis.

A distinctive characteristic of FAUST is to be fully compiled. The FAUST 
compiler 
translates DSP specifications into very efficient C++ code that works at sample 
level. The 
generated code is self contained and doesn't depend on any library or runtime.

Moreover a same FAUST specification can be used to generate native 
implementations for 
most OS (Linux, OSX, Android, iOS) or platforms (LV2, Ladspa, VST, PD, Csound, 
SC,..)


Faust distribution can be downloaded at: 
http://sourceforge.net/projects/faudiostream

The GIT repository can be cloned with the following command :
git clone git://git.code.sf.net/p/faudiostream/code faust

To compile faust :
make httpd (skip this step if you don't have GNU libmicrohttpd installed)
make
sudo make install


Two mailing lists are available:
https://lists.sourceforge.net/lists/listinfo/faudiostream-devel
https://lists.sourceforge.net/lists/listinfo/faudiostream-users

In order to test FAUST without installing it, please refer to the Online Faust 
Compiler :
http://faust.grame.fr


======================== WHAT'S NEW ==============================

------------
iOS     
------------
The iOS architecture has been improved and is now compatible with iOS 7. New 
metadata 
allow to map accelerometers to user interface widgets.


------------
Android 
------------
A new architecture, contributed by Romain Michon from CCRMA, allows to develop 
audio 
applications for Android. It uses the same metadata as iOS to map 
accelerometers to user 
interface widgets.


------------
Audio Unit
------------
A new architecture, contributed by Reza Payami from CCRMA, allows to develop 
Audio Units 
for OSX. The custom user interface includes:
- Normal Faust GUI horizontal and vertical box layout support
- Normal Faust GUI widgets including hsliders, vsliders, hbargraphs, vbargraphs,
   knobs, buttons and checkboxes
- Viewer support for hbargraph and vbargraph using Audio Unit Event Listening 
and
   automatically moving sliders
- Save button for saving plugin state in Faust XML format


------------
OSC
------------
Improved OSC support. Faust applications compiled with the -osc option embed 
OSC support. 
With FAUST 0.9.65, applications have now also the possibility to send OSC 
messages (and 
therefore to be used as OSC controller).

The transmission can be activated either when the application is started using 
the "-xmit 
1" command line option, or later on, by sending to the application the osc 
message xmit 1.


------------
HTTP
------------
Improved HTTP support. Faust applications compiled with the -httpd option embed 
a small 
web server that allows to remotely control the faust application using any 
HTML5 capable 
web browser. The web page now reproduces a nice looking graphic user interface 
very 
similar to the QT one. The control's fluidity has been improved. The 
application can also 
display a QRcode to easily take control of it with a smartphone.


------------
LV2
------------
A critical bug was fixed in the LV2 implementation which aims at providing LV2 
support, 
both audio (pure signal processing) and instrument (MIDI -> audio) plugins. The 
full 
faust-lv2 package by Albert Gräf (U. of Mainz) is available here :
        http://code.google.com/p/faust-lv2/


---------------
Supercollider
---------------
Improved supercollider architecture with modifications for supernova 
contributed by 
Fernando Lopez-Lezcano.


------------
Libraries
------------
- Improved filter.lib, oscillator.lib and effect.lib contributed by Julius 
Smith 
(CCRMA/Stanford U.).

- A new harmonic exciter effect by Priyanka Shekar (CCRMA) has been added to 
effect.lib

- a new library "hoa.lib" has been contributed by the CICM/U. Paris 8. It 
provides a set 
of functions for high order Ambisonics sound reproduction (encoder: encodes a 
signal in 
the circular harmonics domain; decoder: decodes an Ambisonics sound field for a 
circular 
array of loudspeakers; decoderStereo: decodes an ambisonic sound field for 
stereophonic 
configuration; optimBasic, optimMaxRe, optimInPhase: apply Ambisonics 
optimizations; 
wider: enlarges the diffusion of a localized sound; map : encodes a source with 
distance 
compensation; rotate : rotates the sound field). Web site: 
http://www.mshparisnord.fr/hoalibrary/en


------------
Examples
------------

Guitarix amplifiers. Thanks to code contributed by the Guitarix development 
team, the 
examples folder now contains Guitarix tube amp emulations. The faust-tubes 
folder contains 
the tube.lib, the tonestack.lib, and the tube tables with valve.h, which 
contain the 
foreign function, and an example tube preamp.dsp.

---------------------------
Extensions to the language
---------------------------

1) extended syntax for foreign function declarations :
The syntax for foreign function declarations has been extended to take into 
account the 
floating point precision in use (float, double and quad). It is now possible to 
give a 
different function name for each floating point precision using the 
construction:

name1|name2|name3.

Here is an example of declaration :

asinh = ffunction(float asinhf|asinh|asinhl (float), <math.h>, "");


2) inputs(exp) and outputs(exp) :
These two new constructions give respectively the number of inputs and the 
number of 
outputs of a Faust expression. These constructions are useful to define high 
order 
functions and to build algorithmically complex block-diagrams.

Here is an example to reverse the order of the inputs of an expression 
automatically.

X(expr) = bus(n) <: par(i,n,selector(n-i-1,n)) : expr with { n=inputs(expr); };


3) waveform :
A waveform is a fixed periodic signal defined by a list of samples. A waveform 
has two 
outputs. The first output is constant and indicates the size (number of 
samples) of the 
period. The second output is the periodic signal itself. This design allows 
waveform to 
work nicely with tables.

For example waveform {0,1,2,3} produces two outputs, the constant signal 4 and 
the 
periodic signal
        0,1,2,3,0,1,2,3,0,1...


---------------------------
New compiler's options
---------------------------

A new compiler option '-I dir' add dir to the list of directory to search for 
components, 
library and imports. It is equivalent of gcc -I dir option.


----------------
Acknowledgments
----------------
Many persons have been contributing to the FAUST project by providing code for 
the 
compiler, architecture files, libraries, examples, documentation, scripts, bug 
reports, 
ideas, etc.

We would like to thank them and especially: Fons Adriaensen, Jerome Barthelemy, 
Tim 
Blechmann, Tiziano Bole, Alain Bonardi, Baktery Chanka, Thomas Charbonnel, 
Raffaele 
Ciavarella, Julien Colafrancesco, Damien Cramet, Etienne Gaudrin, Olivier 
Guillerminet, 
Albert Graef, Pierre Guillot, Pierre Jouvelot, Stefan Kersten, Victor 
Lazzarini, Matthieu 
Leberre, Mathieu Leroi, Fernando Lopez-Lezcano, Kjetil Matheussen, Hermann 
Meyer, Romain 
Michon, Remy Muller, Eliott Paris, Reza Payami, Laurent Pottier, Sampo 
Savolainen, Nicolas 
Scaringella, Anne Sedes, Priyanka Shekar, Stephen Sinclair, Travis Skare, 
Julius Smith, 
Michael Wilson, as well as our colleagues  at GRAME, in particular : Karim 
Barkati, Sarah 
Denoux, Olivier Guillerminet, Christophe Lebreton and Mike Solomon.

Yann Orlarey, Stephane Letz and Dominique Fober
GRAME



------------------------------------------------------------------------------
CenturyLink Cloud: The Leader in Enterprise Cloud Services.
Learn Why More Businesses Are Choosing CenturyLink Cloud For
Critical Workloads, Development Environments & Everything In Between.
Get a Quote or Start a Free Trial Today. 
http://pubads.g.doubleclick.net/gampad/clk?id=119420431&iu=/4140/ostg.clktrk
_______________________________________________
Faudiostream-devel mailing list
Faudiostream-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/faudiostream-devel

Reply via email to