On 06/27/2013 02:15 PM, John Clements wrote:
On Jun 12, 2013, at 9:24 AM, Tom Schouten wrote:

On 05/30/2013 08:21 PM, Tom Schouten wrote:
On 05/30/2013 05:30 PM, John Clements wrote:
On May 30, 2013, at 1:21 PM, Tom Schouten wrote:

Hi List,

Here's a tiny experimental tool I've been working on the last couple of months:
http://zwizwa.be/rai/rai.html

It's mostly aimed at the music DSP world (sound synthesizers and effects) where 
feedback structures are very important, but it could be fairly generic in its 
use.  I tried to stay as close to Scheme as possible.

The basic idea is to use Racket as replacement for Matlab, i.e. to analyze 
algorithms specified in a high level format, and use it to generate 
dependency-free C or ASM code for deeply embedded targets.

Currently it can generate binary plugins for Windows VSTi, Pure Data and Jack 
Audio.
This looks totally awesome.  Would you consider making a Racket Package out of 
this? My fall class could definitely be interested.

Cool :)

Here's the package:
raco pkg install github://github.com/zwizwa/rai/master
That will run all the Racket code.

For the C code gen, the Makefile is the best point of entry.
Currently Linux only, and might need some tweaking.

added synth-lib.rkt basic synth kit and synth.rkt example synthesizer.

- envelopes
- parameter control dezippers
- parameter control scales (exponential, "squashed" exponential, ...)
- SVF filter
- supersaw osc
- anti-aliased saw osc
- saturation functions
- FDN reverb tail

How I use it at this time, Linux + Pd:

make sp_host.pd_linux # build binary Pd wrapper
pd sp_test.pd&  # run Pd patch built around sp_host
make livecode # continuously compile synth.rkt ->  synth.sp binary module

then edit synth.rkt or any of its dependencies and the binary code running in 
Pd will be updated, leaving state intact if the type didn't change.
Very cool.

If only my students weren't all running windows….

John


It already uses mingw on linux for cross compilation so it should work pretty much out of the box with mingw on windows.

____________________
 Racket Users list:
 http://lists.racket-lang.org/users

Reply via email to