This is more consistent in STK, but we seem to have lost some things in translation. Ge is currently working on fixing up ChucKSTK, and we'll try to get things more consistent. On Thu, 16 Feb 2006, Graham Coleman wrote:
Our discussion made me think of other issues:
5. Stk imports respond to different messages
I often switch out STK instruments in ChucKing sessions, and occasionally they differ as to which basic stk messages they respond to.
For example, Mandolin doesn't respond to noteOn, but it works with pluck. At least Wurley doesn't seem to respond to noteOff.
It seems like many basic messages could be standardized in a common interface for STK instruments.
This could be taken farther by generalizing over the different control change parameters for orchestras of instruments, but you could probably accomplish this better with a wrapper class.
6. Samples
Someone mentioned this at some point. Will ChucK have a library of sampled instruments? Or will performers construct or import their own and wrap them in code?
good much work,
Graham
On Wed, 15 Feb 2006, Ge Wang wrote:
Hi Graham!
ChucK hiccups from time to time, and this has been mentioned on lists. But where are the main inefficiencies? How could hiccups be avoided?
ChucK is the main inefficiency, huh huh. As for reducing hiccups, there are several ways, depending on the hiccups you are experiencing.
One common type of hiccup arises when a shred is added and then tries to load a big sound file. Since we haven't implemented chunking in sndbuf yet (it's on the todo list), a sufficiently large file will cause the hiccups. you can try to alleviate the problem for smaller files by using a bigger buffer size, for example when starting the chuck listener loop:
chuck --loop --bufsize2048
However, this is more complicated on Windows XP, since we seem to be having audio problems when using a buffer size greater than 512 since upgrading to the new RtAudio, which drastically improved latency on Window XP, but for some reason isn't liking large buffer sizes.
2. Local class library
It would be nice to automatically load local utility classes.
Also in the works, though the implementation may not happen for a few more releases.
3. Globals?
Theoretically we have global variables and functions. You can declare a public class with static members and those should be accessible by all subsequent code. For example:
public class The { static int number;
// a bug forces one to declare static objects as references static Event @ event; }
// instantiate the event outside (thanks to bug) new Event @=> The.event;
Having first compiled the file containing The, subsequent code should be able to access The.number and The.event.
Also previous related discussion:
https://lists.cs.princeton.edu/pipermail/chuck-users/2005-November/ 000164.html
https://lists.cs.princeton.edu/pipermail/chuck-users/2005-November/ 000165.html
Best, Ge!
_______________________________________________ chuck-users mailing list chuck-users@lists.cs.princeton.edu https://lists.cs.princeton.edu/mailman/listinfo/chuck-users
_______________________________________________ chuck-users mailing list chuck-users@lists.cs.princeton.edu https://lists.cs.princeton.edu/mailman/listinfo/chuck-users