I’m a music notation specialist and composer (was Karlheinz Stockhausen’s copyist 1974-2000), and have been developing assistant composer and assistant performer software in .NET/C# since 2006. I am not a vvvv user.
My most recent scores are written in SVG, and contain embedded temporal information defining the “default” meanings of the symbols. (A symbol’s graphic appearance is independent of its temporal meaning, so can be designed differently for different purposes. A standard chord symbol on a five-line staff is not the only way to notate a “MIDI event” – see 1) and 2).)
These scores can be played back in real time (while reading the score) using my AssistantPerformer (AP) software to create MIDI output. (As always, the MIDI output can be used to control anything, not just sounds.)
Currently, the AP is a node in a standard patch in my Moritz patch editor 3), but it needs to be taken out of that (experimental) context. It could become a standalone program, whose output could be sent to a MIDI input device somewhere, or it could become a vvvv node.
I’d be interested in turning this into an open source project, but am not so sure that I am the right person to lead it. I have no experience of group programming, and I am also wanting to develop the AssistantComposer’s notation modules…
The AP is not a trivial application. It involves a great deal of multi-threading, so the project would need to involve people experienced in that area. My AP works, but its probably better to think of it as a proof of concept. I’ve been working alone, and am pretty sure that cooperative programming would have lead to better solutions…
moritz reminds me of heinrich (even though i have to admit i don’t get neither moritz nor heinrich).
that said, i don’t see how you wouldn’t be the best person to get this going. after all it is your idea and you already have a prototype. you obviously can code, you say it is all in c#/.net, so head over to the plugins page and make your code into some plugins.
as i understand it when starting an opensource project you need to be the one that does all the hard work (probably even more so with such a specialized topic). and only if you get it to a point where it is actually useful to others and those others can even code you maybe able to attract some contributors.
so unless you found a threadsafe soulmate here, get it started, ask your questions, show us your results. judging from what you have implemented so far this should be a cake (if i may say so). good luck.
hi joreg,
thanks for the reply. Yes, you’re probably right.
I’m going to try moving my AssistantPerformer out of moritz and into vvvv, and take it from there. The first thing to do is reproduce something like moritz’ standard performance patch (see below) using vvvv nodes wherever possible.
The AP currently just supports my own SVG-MIDI score format, but I could fairly easily re-activate support for capella (.capx) files http://www.whc.de/capella.cfm. Maybe someone else would like to write the corresponding code for MusicXML. (I’m not interested enough in standard music notation to do that myself.)
Not sure yet where my SVG-MIDI score writer (AssistantComposer) fits in here, but its interesting that vvvv’s speciality seems to be graphics. We’ll see. The AC is really what I want to be working on…