Albert Cahalan wrote: > On Jan 21, 2008 12:27 PM, Walter Bender <[EMAIL PROTECTED]> wrote: >> (b) as has been pointed out repeatedly, CSound is an open standard >> (which incidentally predates the MIDI standard). > > It may be open, but it isn't much of a standard. > I've only found one implementation, csound itself. > There are no hardware implementations. > > Pushing this kind of thing is **wrong**. > >> (c) Victor gave some very compelling reasons as to why CSound is a >> better choice, especially for a program that is reaching out to >> non-Western musical sensibilities. > > MIDI does non-Western stuff, including unusual > tuning systems. > _______________________________________________ > Devel mailing list > [email protected] > http://lists.laptop.org/listinfo/devel >
Well ... I can't speak for the children of the developing world, nor do I have much experience with Tam Tam as wrapped around CSound. But as someone who has devoted a fair amount of his spare time over the past few decades in pursuit of algorithmic composition and synthesis (henceforth abbreviated algocompsynth) of music, I think I'm qualified to lay down some opinions here. 1. MIDI is limited but more or less universally spoken. Serious algocompsynth *must* involve support of MIDI. CSound recognized this years ago. 2. There have been numerous attempts to improve on CSound, but nothing else has come forth that's as comprehensive. The orchestras read like assembler code and the scores like a 1960s FORTRAN input card deck, but just about every working algocompsynth practitioner has it and knows it. So, serious algocompsynth *must* involve support of CSound. 3. There are a number of specialized Linux distros for audio. The three that I know the most about are Studio64, Jack Audio Distribution (JAD) and dyne:bolic. Almost all of them have a patched low-latency kernel, and all of them use something called the Jack Audio Connection Kit. They may still have to support both OSS and ALSA, but as I noted in another post, ALSA had support years ago for sound cards that weren't supported by free-as-in-freedom OSS drivers. So, serious algocompsynth on Linux *must* have a low-latency patched kernel, ALSA, and the Jack Audio Connection Kit. 4. Finally, there are three languages now in common use in algocompsynth. In historical order, they are Lisp/Scheme, Java and Python. Forth was prominent at one time as well, but the major Forth algocompsynth codes have mostly been ported to one of the other languages. So, serious algocompsynth *must* provide Python, Lisp/Scheme and Java support. So the question in my mind is, "Should the XO be a platform for serious algocompsynth, or should it be what the project says it is -- an educational project for children to explore and discover?" Do children need MIDI, CSound, low-latency kernels, Jack, Lisp and Java? I don't really think so. The fact that Tam Tam has CSound and Python "under the hood" is only a convenience for the implementers. There are many fewer wheels that need to be re-invented as a result. By the way, one other note here. A number of the more advanced synthesis algorithms edge upon some rather well-defended patents by Yamaha and others. It's a similar issue to those around media codecs -- even though technically such things are "software" or "formulas" that can't be patented, once they get embodied in pieces of gear that you can buy in a music store, things change. By the way -- as far as microtonal and xentonal and "world music scales" are concerned, MIDI's pitch bends are an awkward hack. Serious *microtonal* algocompsynth practitioners either have to spend time working around MIDI or use something else. _______________________________________________ Devel mailing list [email protected] http://lists.laptop.org/listinfo/devel
