[comp.music] Music representation

beck-chris@CS.YALE.EDU (Chris Beck) (01/17/90)

I have a philosophical question for anyone outhere:

I was wondering if anyone could recommend some books, or, preferably, had
some of their own thoughts, about possible representations for music that
can be understood by a computer (other than standard notation and MIDI).

What constitutes a musical event?  What would be a good strategy for 
representing not only the music itself but also all (if possible) aspects
of a given musical performance?

- Chris

mjs@hpfcso.HP.COM (Marc Sabatella) (01/18/90)

>I was wondering if anyone could recommend some books, or, preferably, had
>some of their own thoughts, about possible representations for music that
>can be understood by a computer (other than standard notation and MIDI).

The programming environemt Formula, developed by David Anderson (UC Berkeley)
and Ron Kuivila (Wesleyan U), on which I did my Master's work, uses a
purely procedural external representation in which pitch numbers, volume,
and durations are encapsulated in concurrent processes.  Thus one process
would consist of a procedure which spat out note names; another would consist
of a procedural representation of a volume curve (giving volume as a function
of time), and a third process would consist of a procedure which spat out note
durations.  The processes can be tied together in any fashion, although one
common use would be to have several pitch generating process, each tied to its
own duration generating process, and have one global volume process controlling
all of them (each pitch process may have its own volume process in addition,
so that, for instance, the melody could always be brought out a little stronger
as it changed from voice to voice).

Complicating this is the concept of "virtual time" - all functions of time are
functions in some virtual coordinate system, but processes could be constructed
which "deform" a virtual coordinate system in relation to real time.  For
example, a durations generating process might spit out a series of eighth
notes, while some time deforming process might be sitting in a loop,
"stretching" the lenght of every other eighth note in real time, thus giving
the effect of "swing" eighth notes.

>What constitutes a musical event?  What would be a good strategy for 
>representing not only the music itself but also all (if possible) aspects
>of a given musical performance?

In the Formula scheme of things, the "musical event" is somewhat lost in the
external view, since it is distributed over several processes.  Internally,
though, there is just a big buffer, ordered by virtual time, of MIDI commands.
The system takes care of the the conversion from a bunch of concurrent
processes describing the music as a whole, into discrete note-on and note-off
commands.  There is no particular reason this has to be tied to MIDI; it's
just that that is what we had available.  The event records could be whatever
your synthesizer or score generator or what have you recognizes.  Similarly,
we allow message passing between processes as a means of explicit
synchronization (implicit synchronization is achieved since processes execute
in a virtual time coordinate system), but the form of the messages is
unspecified.  I wrote an application in which the messages were simple MIDI
commands, but again, if you have some synthesizer or other application which
understands something else, that is not prohibited by the system.

Thus the internal representation music within Formula is nothing to write home
about, being tailored to available devices, but the external view, that of
cooperating concurrent processes, is what gives the system its expressibility.
For example, you can get articulation effects by defining a process which
gives an "articulation curve" similar to the volume curve, and by defining a
note-playing process to somehow factor this articulation value into the
duration of a note (low values for the articulation curve might mean cut the
note short and insert an appropriate amount of space for the remainder of the
originally specified duration).

--------------
Marc Sabatella (marc%hpfcrt@hplabs.hp.com)
Disclaimers:
	2 + 2 = 3, for suitably small values of 2
	Bill and Dave may not always agree with me

wright@hpccc.HP.COM (Jeff Wright) (01/18/90)

> I have a philosophical question for anyone outhere:
> 
> I was wondering if anyone could recommend some books, or, preferably, had
> some of their own thoughts, about possible representations for music that
> can be understood by a computer (other than standard notation and MIDI).
> 
> What constitutes a musical event?  What would be a good strategy for 
> representing not only the music itself but also all (if possible) aspects
> of a given musical performance?

a CD would fit your description...

--Jeff Wright