There's some Creative Pact thing that people do for the month of September. I've decided that I should work on my commission for the Vocal Constructivists. I'm going to generate some graphics notation for them. When I say 'generate,' that's pretty literal. My plan is to computer generate graphics notation in real time, in response to computer listening to what the choir is doing, so as to create a feedback loop of sorts.
Obviously, there are a lot of parts for this. I have some vague ideas of how to do the listening (SCMIR and some other feature extraction with SuperCollider). But as this is a feedback loop, there's also a question of how people will tend to respond to various notation, so I'm starting with the notation aspect first.
There have been some very interesting live notation projects I've seen. They often use LilyPond as the rendering engine. There are some SuperCollider libraries that interface with this system. However, the Constructivists are more about graphic notation, so unless lilypond lets you disassemble notation symbols like Cardew's Treatise, it's not quite what I need. I really need a vector graphics library that I can communicate with via OSC.
Practising and Performing
The LilyPond stuff works really well because the notation is already very widely understood. There are a lot of ways a performer can interpret a crotchet on B-flat, but the pitch and duration are already set, at least, Other dynamics markings, phrase markings, etc give a lot of data to a performer. In essence, the perofrmer has thousands of hours spent already learning the notational symbols. Many or most of these elements may be absent or modified in graphical notation. Therefore, a performer of a graphical score must learn the notations they learn the piece. If the notation is changing in real time, this sets up a serious issue as to how they should practice.
There's a chasing-one's-tail problem with feedback loops, so for now some set process will generate the notation. Performers need to be able to see the notation while they practice and perform. This implies that either I'll need to create some static printed sheets, which are in danger of beocming a fixed score, or else I need to be able to send notation to the laptops, tablets or other devices that they can then take home with them and look at.
I'm hoping somebody gives me some suggestions, but barring that, Processing has a lot of documentation and a large user base. Also, since this is a piece for performers, I'd like it to have a longer self-life than I would expect out of a purely digital piece. If people are going to go to the trouble of learning it, they shouldn't be forced to abandon it before they're ready.
So my next task is to dig out my art supplies and start sketching out ideas. What might a snapshot of the notation look like? What are elements on the page and how might they transform?