[chuck] version 1.2.0.5 released

Ge Wang gewang at CS.Princeton.EDU
Sun Mar 26 04:42:02 EST 2006


Dear All,

chuck-1.2.0.5 (dracula) is now available:

     http://chuck.cs.princeton.edu/release/
     (may need to reload page to see update)

It contains several new features (see full release note below):
     - multi-channel audio
     - HID/Joystick support (by Spencer Salazar)
       - see examples/hid/ for demos
     - massive STK update (in exchange for sleep from Mark Daly and Ge)
       - new StkInstrument parent class
       - control changes exposed
       - new examples
     - more documentation (Adam Tindale, Mark, and others)
     - bug fixes!  new bugs!

completely updated STK section:
     http://chuck.cs.princeton.edu/doc/program/ugen.html

Thanks to all who contributed to this release and to the wiki upgrade, 
including Mike McGonagle, Graham Coleman, Graham Percival, Eduard 
Aylon, Pedro Lopez-Cabanillas, Nelson Ferraz, and to Scot 
Gresham-Lancaster and Tim Perkis for working with us to develop new 
features, and many others.

As always, please let us know of any issues on [chuck-users], 
[chuck-dev], or email, and HappY ChucKing!

Best,
chuck team

---
1.2.0.5
   - (added) multi-channel audio
             - use --channels<N> or -c<N> set number of channels
               for both input and output
             - use --out<N>/-o<N> and --in<N>/-i<N> to request
               # of input and output channels separately
             - stereo is default (for now)
   - (added) UGen.channels()
   - (added) class UGen -> class UGen_Multi -> class UGen_Stereo
   - (added) UGen UGen_Multi.chan( int )
             use this to address individual channels
   - (added) examples in examples/multi
             - n.ck : n channels detuned sine
             - i.ck : n channels impulse
   - (added) HID support (author: Spencer Salazar)
   - (added) 'HidIn' event class (see examples/hid/*.ck)
   - (added) Terminal Keyboard Input (immediate mode, separate from HID)
   - (added) 'KBHit' event class (see examples/event/kb*.ck)
   - (added) sndbuf.chunks : better real-time behavior
             - can be set to arbitrary integers
               (before the .read happens)
             - default is 0 frames (no chunk)
             - set .chunks to 0 to read in entire file
               (previous behavior)
   - (added) int math.isinf( float ) // infinity test
   - (added) int math.isnan( float ) // NaN test
             (see examples/basic/infnan.ck)
   - (added) sndbuf.valueAt( int ) for returning sample at arbitrary pos
             (see examples/basic/valueat.ck)
   - (added) MASSIVE STK UPDATE
   - (added) 'StkInstrument' class
               .noteOn( float )
               .noteOff( float )
               .freq( float ) / .freq()
               .controlChange( int, float )
   - (added) the following now extend 'StkInstrument'
             (most of them have additional parameters)
               - BandedWG
               - BlowBotl
               - BlowHole
               - Bowed
               - Brass
               - Clarinet
               - Flute
               - FM (and all its subclasses: BeeThree, FMVoices,
                     HevyMetl, PercFlut, Rhodey, TubeBell, Wurley)
               - Mandolin
               - ModalBar
               - Moog
               - Saxofony
               - Shakers
               - Sitar
               - StifKarp
               - VoicForm
   - (added) better STK documentation
             http://chuck.cs.princeton.edu/doc/program/ugen.html
   - (added) examples/stk/modulate.ck
   - (added) --watchdog and --nowatchdog flags
             (very experiment watchdog for real-time audio)
   - (added) () => function; // calls function();
             (thanks to Mike McGonagle for reporting)
   - (added) if exp: ( cond ? if_cond : else_cond )
             (thanks to Mike McGonagle for reporting)
   - (added) math.abs( int ), math.fabs( float ), math.sgn( float )
             (std version unchanged)
   - (added) new examples
               - basic/infnan.ck
                      /fm.ck fm2.ck fm3.ck
                      /valueat.ck
               - event/kb.ck kb2.ck
               - hid/joy.ck
                    /joy-fm.ck
                    /joy-noise.ck
                    /joy-shake.ck
               - multi/i.ck
                      /n.ck
                      /we-robot.ck
               - osc/s.ck
                    /r.ck
               - stk/bandedwg.ck
                    /blowbotl.ck
                    /blowhole.ck
                    /bowed.ck
                    /brass.ck
                    /clarinet.ck
                    /flute.ck
                    /mandolin.ck
                    /modalbar.ck
                    /saxofony.ck
                    /stifkarp.ck
   - (fixed) sinsoc, triosc, sqrosc, phasor:
               - .sync( 0 ) uses input signal to modulate frequency
               - .sync( 2 ) uses input signal to modulate phase
                 (FM synthesis)
   - (fixed) impulse.last() no longer has extra samp delay
             (thanks to Mike McGonagle for reporting)
   - (fixed) class inheritance now handles the first overloaded
             function of a parent correctly when called using a
             subclass instance.  in other words, this part sucks
             less now.
             (thanks to Mike McGonagle for reporting)
   - (fixed) (internal) type checker re-instantiation patched
   - (fixed) (internal) detach_all() moved to chuck_globals.cpp
   - (fixed) (internal) global variables moved to chuck_globals.cpp
   - (fixed) file handles close in compiler and parser
   - (fixed) syntax error causing syntax errors



More information about the chuck mailing list