| Author |
Message |
ge

Joined: Aug 13, 2006 Posts: 102 Location: Palo Alto, CA
|
Posted: Wed Jul 16, 2008 4:49 am Post subject:
chuck-1.2.1.2 (dracula) unleashed Subject description: dynamic arrays, new uanae, many bug fixes, paves way for new toolkit |
 |
|
Dear all,
chuck-1.2.1.2 (dracula) is available:
http://chuck.cs.princeton.edu/
This release introduces dynamic auto-growing arrays, various fixes, enhancements, and likely new and better bugs/features (see below for a full list). Rebecca and I have added additional UAnae (unit analyzers, see http://chuck.cs.princeton.edu/uana/) in preparation for an all-new upcoming toolkit (following in the footsteps of S.M.E.L.T., see http://smelt.cs.princeton.edu/), which Rebecca will announce soon! A new
miniAudicle is on the way from Spencer, as well as an updated audicle version. As always, let us know if you encounter unexpected fishiness (and expected fishiness as well).
Many many thanks to Kassen, Kijjaz, Eduard, folks on the electro-music chuck forum, chuck-users, PLOrk, SLOrk, students and staff at CCRMA and Princeton, Fernando Lopez-Lezcano, Carr Wilkerson, and rest of the chuck community for helping to make this release happen!!
Thanks and Happy ChucKing, UpChucKing!
Best,
chuck team
Changes:
http://chuck.cs.princeton.edu/release/VERSIONS |
|
|
Back to top
|
|
 |
djdaphalgan
Joined: Jul 19, 2007 Posts: 18 Location: Belgium
|
Posted: Wed Jul 16, 2008 4:59 am Post subject:
|
 |
|
| Will the new version have MAUI elements for windows (or other gui elements)? |
|
|
Back to top
|
|
 |
Kassen
Janitor


Joined: Jul 06, 2004 Posts: 6716 Location: The Hague, NL
G2 patch files: 3
|
Posted: Wed Jul 16, 2008 5:51 am Post subject:
|
 |
|
Release notes;
| Quote: |
CHANGES
---
1.2.1.2
- (added) dynamic, resizable arrays
.size( int ) resizes array; .size() returns current size()
<< operator appends new elements into array
.popBack() pops the last element of the array, reducing
size by 1
.clear() zero's out elements of the array
(see examples/array/
array_dyanmic.ck
array_resize.ck)
- (added) new UAna: FeatureCollector
turns UAna input into a single feature vector, upon
.upchuck()
new UAna: Flip
turns audio samples into frames in the UAna domain
new UAna: pilF
turns UAna frames into audio samples, via overlap add
new UAna: AutoCorr
computes the autocorrelation of UAna input
new UAna: XCorr
computes the cross correlation of the first two UAna input
- (added) UGen.isConnectedTo( Ugen ) // is connected to another ugen?
- (added) UAna.isUpConnectedTo( UAna ) // is connected to another uana
via =^?
- (added) int Shred.done() // is the shred done?
int Shred.running() // is the shred running?
- (added) int Math.ensurePow2( int )
- (added) Math.INFINITY, Math.FLOAT_MAX, Math.FLOAT_MIN_MAG,
Math.INT_MAX
- (added) TriOsc.width(), PulseOsc.width(), SawOsc.width(),
SqrOsc.width()
- (added) Std.system(string) is now disabled by default, to enable:
specify the --caution-to-the-wind command line flag, for
example:
%> chuck --caution-to-the-wind --loop
- (removed) SqrOsc.width( float ), width is always .5
- (fixed) it's now (again) possible to multiply connect
two UGen's
- (fixed) OS X only: sudden-motion-sensor HID no longer
introduces audio dropouts below peak CPU usage
due to added centralized polling;
added static Hid.globalPollRate( dur ) to control
the central SMS polling's rate
- (fixed) Windows only: implementation of array via STL
vector::reserve() has been replaced with a more compatible
approach (see chuck_oo.cpp)
- (fixed) dac amplitude no longer halved!
NOTE: this increases the gain from before by
a factor of 2, or roughly 6 dB!! BEWARE!!
- (fixed) corrected order of shred/ugen dealloc in VM destructor,
preventing a potential crash during shutdown
- (fixed) UAna can now upchuck() at now==0
- (fixed) STK Chorus UGen now has reasonable defaults
.max( dur, float ) for initializing to delay/depth limits
.baseDelay( dur ) sets current base delay
- (fixed) dur +=> now no longer crashes
- (fixed) ADSR now returns attackTime, decayTime, and releaseTime that
corresponds to the duration-based setting functions
(internally multiplied by SR) (thanks Eduard)
- (fixed) STK Mandolin no longer plays without explicit noteOn
- (fixed) unsporked Shred instances now given id == 0 (thanks Kassen)
- (fixed) typos in ugen_xxx.cpp and chuck-specific rtaudio.cpp (/moudi) |
So no Linux/Windows interface elements here just yet. _________________ Modern technology offers an endless field day to any deviant strains in our personalities. --J.G.Ballard |
|
|
Back to top
|
|
 |
djdaphalgan
Joined: Jul 19, 2007 Posts: 18 Location: Belgium
|
Posted: Wed Jul 16, 2008 6:59 am Post subject:
|
 |
|
| Kassen wrote: | Release notes;
| Quote: |
CHANGES
---
1.2.1.2
- (added) dynamic, resizable arrays
.size( int ) resizes array; .size() returns current size()
<<operator> now no longer crashes
- (fixed) ADSR now returns attackTime, decayTime, and releaseTime that
corresponds to the duration-based setting functions
(internally multiplied by SR) (thanks Eduard)
- (fixed) STK Mandolin no longer plays without explicit noteOn
- (fixed) unsporked Shred instances now given id == 0 (thanks Kassen)
- (fixed) typos in ugen_xxx.cpp and chuck-specific rtaudio.cpp (/moudi) |
So no Linux/Windows interface elements here just yet. |
Sorry, was a bit too lazy to look into the release notes...  |
|
|
Back to top
|
|
 |
Antimon

Joined: Jan 18, 2005 Posts: 1127 Location: Sweden
Audio files: 10
G2 patch files: 58
|
Posted: Wed Jul 16, 2008 8:35 am Post subject:
|
 |
|
Ah, a new ChucK release - goody! Thanks for all of the work put into this. I should really start checking out those UAna thingies.
/Stefan _________________ @myspace @virb A blog home - in Cyberspace no one can hear you SEGV |
|
|
Back to top
|
|
 |
kijjaz

Joined: Sep 20, 2004 Posts: 568 Location: bangkok, thailand
Audio files: 2
|
Posted: Wed Jul 16, 2008 9:53 am Post subject:
|
 |
|
I still haven't used all the UAnae -_-" ..
(mainly only fft, ifft)
I was very excited about dynamic array sizing that I created this patch to test my idea:
| Code: | Flute s => dac;
int note[1];
int noteIndex[1];
int dummy; // for swapping
while(true)
{
for(int i; i < note.size(); i++)
{
note[noteIndex[i]] + 60 => Std.mtof => s.freq;
1 => s.noteOn;
100::ms => now;
<<< noteIndex[i], note[noteIndex[i]] >>>;
}
1 => s.noteOff;
200::ms => now;
noteIndex << note.size();
note << Std.rand2(0, 12);
if (maybe)
{
noteIndex[note.size()-1] => dummy;
noteIndex[Std.rand2(0, note.size()-2)] => noteIndex[note.size()-1];
dummy => noteIndex[note.size()-2];
<<< "Swap!", "" >>>;
}
} |
With this we can design more complex data structure.
That's what I always want to do in ChucK ^_^.
One question about this dynamic array feature:
Is the memory freed after popping last member of the array?
(garbage collection?) |
|
|
Back to top
|
|
 |
Frostburn

Joined: Dec 12, 2007 Posts: 253 Location: Finland
Audio files: 9
|
Posted: Wed Jul 16, 2008 10:24 am Post subject:
|
 |
|
| kijjaz wrote: | | (garbage collection?) |
I'd too really like to see automatic garbage collection in ChucK but even being able to manually free UGens and data structures would do. _________________ To boldly go where no man has bothered to go before. |
|
|
Back to top
|
|
 |
ge

Joined: Aug 13, 2006 Posts: 102 Location: Palo Alto, CA
|
Posted: Wed Jul 16, 2008 3:07 pm Post subject:
|
 |
|
| djdaphalgan wrote: | | Will the new version have MAUI elements for windows (or other gui elements)? |
I think this is a question for the miniAudicle release, which Spencer will be announcing shortly! |
|
|
Back to top
|
|
 |
ge

Joined: Aug 13, 2006 Posts: 102 Location: Palo Alto, CA
|
Posted: Wed Jul 16, 2008 3:29 pm Post subject:
|
 |
|
| kijjaz wrote: | One question about this dynamic array feature:
Is the memory freed after popping last member of the array?
(garbage collection?) |
.popBack() and .clear() both does releases references to any objects they are getting rid of. However, whether the object actually gets garbage collected may depend on the situation, and subject to the unfinished state of the GC. In short, .popBack() and .clear() shouldn't make garbage matters worse, at least. I hope that helps a bit. |
|
|
Back to top
|
|
 |
Inventor

Joined: Oct 13, 2007 Posts: 1700 Location: Florida, USA
Audio files: 67
|
Posted: Wed Jul 16, 2008 5:59 pm Post subject:
|
 |
|
| ge wrote: | | djdaphalgan wrote: | | Will the new version have MAUI elements for windows (or other gui elements)? |
I think this is a question for the miniAudicle release, which Spencer will be announcing shortly! |
Oooohhhh, come on cross-platform MAUI, gotta have it! I am going to start developing my guitar effects software now, and I really really wanna do it in MAUI. Plus ChucK Lab is in MAUI and remains underutilized. I feel like I'm a kid waiting for Christmas, come on MAUI!!! _________________ For those about to ChucK, we salute you! - Ge Wang
Let's make noise for peace! - kijjaz |
|
|
Back to top
|
|
 |
Kassen
Janitor


Joined: Jul 06, 2004 Posts: 6716 Location: The Hague, NL
G2 patch files: 3
|
Posted: Wed Jul 16, 2008 6:08 pm Post subject:
|
 |
|
Les, you should probably beg Spencer for that, he's the MiniAudicle man (and our residential HID expert). Maybe we can create a surge of interest :¬) _________________ Modern technology offers an endless field day to any deviant strains in our personalities. --J.G.Ballard |
|
|
Back to top
|
|
 |
Inventor

Joined: Oct 13, 2007 Posts: 1700 Location: Florida, USA
Audio files: 67
|
Posted: Wed Jul 16, 2008 6:34 pm Post subject:
|
 |
|
I'm not above begging, though I was under the impression it was planned for the next release. I'll wait and see what Spencer announces and if there's no cross-platform MAUI then I'll beg. Woof! Woof! Throw me a bone! _________________ For those about to ChucK, we salute you! - Ge Wang
Let's make noise for peace! - kijjaz |
|
|
Back to top
|
|
 |
Kassen
Janitor


Joined: Jul 06, 2004 Posts: 6716 Location: The Hague, NL
G2 patch files: 3
|
Posted: Thu Jul 17, 2008 5:32 am Post subject:
|
 |
|
Well, the impression I'm getting is that;
*It's easy for Spencer to make MiniA. Updates based simply on recompiling against new versions of ChucK.
*Spencer is bussy elsewhere these days.
*Spencer can be persuaded to develop the Mini further if we show interest.
Of course the last bit is most relevant; a while back a few people showed their enthusiasm and he seemed almost surprised by that on the list, calling three people "a surge of interest" and saying he'd work on it. I'm not sure Spencer realises for how many people the Mini hits the sweet spot of power& simplicity.
In addition to that; I think it's great that ChucK works the same way on all platforms and abstracts things the same way. Something like HID is really quite different between the three but ChucK abstracts it so we never notice the difference and we can take our code to our friends and expect it to work. This is different from -for example- the way SC works and I think it's good for unifying the scene. The interface elements are the biggest exception to this. _________________ Modern technology offers an endless field day to any deviant strains in our personalities. --J.G.Ballard |
|
|
Back to top
|
|
 |
Inventor

Joined: Oct 13, 2007 Posts: 1700 Location: Florida, USA
Audio files: 67
|
Posted: Thu Jul 17, 2008 5:46 am Post subject:
|
 |
|
Well, after some careful thought and design, I have distilled the project's controls down to two buttons and one axis of mouse motion, so it looks like a complicated GUI will not be required after all. So it will be OK whether we get cross-platform MAUI or not. We'll see if we get it... _________________ For those about to ChucK, we salute you! - Ge Wang
Let's make noise for peace! - kijjaz |
|
|
Back to top
|
|
 |
kijjaz

Joined: Sep 20, 2004 Posts: 568 Location: bangkok, thailand
Audio files: 2
|
Posted: Tue Jul 22, 2008 8:48 am Post subject:
|
 |
|
I've just tested the new chuck with Jack on linux,
and just noticed that in Jack's Connection, the audio input/output is now named ChucK ^_^
before this I think it was rtaudio,
so I guess it really helps more for working with Jack ^_^. |
|
|
Back to top
|
|
 |
|