Hi Ben, Thanks for your lengthy reply! It's interesting to look at and to think of other tools such as Silence, cmask, nGen, and OMDE and how these tools end up with similar designs. If you're going to port this architecture Python, I'd be very interested to give it a try. ^_^ Thanks! steven On 1/10/06, Ben McAllister wrote: > Hi Steven - > > Forgot to reply to this - Sorry and thanks again for your reply. I'll give > it a go - keep in mind I use CM-1.4, not 2.0. > > I always assumed the ItemStream concept was based on set theory. You have > a series (here called an ItemStream) - it has some qualifying keywords which > modify how the stream is read. There are a few different types of Items > defined in CM - pitch, rhythm, and a few others, which have some special > behavior. You can nest the streams for musically interesting results, which > is really where they get interesting. There is more functionality to them, > but I use them basically for these reasons. > > An ItemStream gives an item every time it is evaluated, it's best > illustrated by some examples: > > (item (items 1 2 3 4 5))would yield '1 2 3 4 5' if evaluated five times, > (item (items 1 2 3 4 5 in random)) would yield some random set contain any > of '1 2 3 4 5' if evaluated five times, > (item (items 1 2 3 4 5 in heap)) would yield some random set contain some > combination of '1 2 3 4 5' if evaluated five times, without repeating any of > the members more than once, as in basic 12-tone composition. > (item (items 1 2 3 4 5)(items 1 2 3 4 5)) would yield '1 2 3 4 5 1 2 3 4 5' > etc > > (item (rhythms s s e) tempo (tempo 60)) would yield startimes for your > notes based on a 16th-16th-8th rhythmic pattern at 60 bpm. > > There are a handful of these modifiers which, combined with some > programming knowledge, can yield some interesting musical results. The full > docs for ItemStreams is still mirrored online here: > > http://www.notam02.no/internt/cm-sys/cm-1.4/doc/dict/item_streams.tpc.html > > The entire CM Dictionary for 1.4 is here > > http://www.notam02.no/internt/cm-sys/cm-1.4/doc/dict/index.html > > I use it very often - for everything from generating dense textures and > crowd sounds to programming beats, chord progressions, and melodic ideas for > pop songs (and lots in between). I do a lot of music for films, and often I > want quick sketches of elaborate ideas so it comes in handy there. I usually > take the results from CM and vary them by hand, rather than just take the > result of the algorithm blindly. I'd like to automate _some_ of that > variation-by-hand, and extend the framework, so I am porting this to a > language I'm more comfy with. > > Thanks for asking! b > > PS - there was a book on CM that was due to be published by MIT press, and > I think the author was Mary Simony. Anyone know what ever became of it? > > On 12/21/05, Steven Yi wrote: > > > > > > BTW: I'm not sure if you have time but could you explain the > > ItemStream concept from Common Music? The last time I had a working > > common music system on my computer was a couple years ago and when I > > got into it I remember having problems with the way it abstracted some > > ideas about time and music; it'd be great to hear your thoughts on it. > > > > Thanks and also Happy Holidays to all! > > steven > > > > > > > > > > On 12/21/05, Ben McAllister wrote: > > > Hi all, > > > > > > I've been lurking since 1996, but rarely write - so, first, THANK YOU > to > > > you devs for csound5 - I'm a software dev myself during the day and > > > understand the investment you are making. Thanks so much! > > > > > > My question: > > > In an effort to reinvigorate my Python skills, I'm going to port my > > > favorite bits of Common Music 1.x to Python, particularly the ItemStream > > > concept and a few other things I frequently use. As many of you know, > it's > > > a good fit within Steven Yi's excellent program blue, and the last drop > of > > > csound5 included a python wrapper for the Csound API. I'm excited as > well > > > about the GUI-building possibilities between this wrapper and the Python > > > ugens Maurizio Umberto Puxeddu contributed. But I digress... > > > > > > Looking for starting points within the csound world, I've found the > > > following: athenaCl, Steven's Orchestra Library in the last drop of > blue, > > > and some in csoundVST. I'm playing catchup to a certain degree. There > are > > > a few examples in the last release of csoundVST which I saw, and I > > > understand there is more in Silence, but it appears to no longer be > hosted > > > at csounds.com. Is it still available anywhere? Someone is using the > name > > > at sourceforge :( I noticed that Michael Gogin's site is down due to > it's > > > popularity, so perhaps it's there waiting to be downloaded. > > > > > > So, csound community, do you know of any other > > > algorithmic-composition-related python resources which I might find > useful > > > in this endeavor? I'm wondering if someone hasn't already invented this > > > wheel. I'd much rather get back to building instruments and making > music ;) > > > Seriously, I'd rather build on something others are using than reinvent > the > > > wheel. > > > > > > Merry Christmas and Happy New Year from Seattle, > > > Ben McAllister > > > http://www.listenfaster.com > > > > > > > > -- > > Send bugs reports to this list. > > To unsubscribe, send email to > csound-unsubscribe@lists.bath.ac.uk > > > >