TitleA Hierarchy of Perceptually Meaningful Controls in ZIPI's Music Parameter Description Language (MPDL)
Publication TypeConference Paper
Year of Publication1995
AuthorsWright, M
EditorWessel, D
Conference NameSociety for Music Perception and Cognition
Conference LocationBerkeley, CA

ZIPIs Music Parameter Description Language (MPDL) is a language for describing music for the purpose of communicating digitally with a synthesizer. This paper discusses recent ideas about the encoding of real-time synthesis control parameters.Until now, ZIPIs scheme has been extremely similar to MIDIs continuous controllers: there is a set of arbitrary parameters (a.k.a. note descriptors) whose values can be sent over ZIPI. Each note descriptor consists of an ID, indicating which parameter is being set, and a value for that parameter. Some of the note descriptor IDs are reserved for well understood and universally implemented synthesizer parameters like pitch, roughness, and attack character. The rest are left explicitly undefined, for controlling unusual or innovative synthesis features.Unfortunately, this scheme has some deficiencies. To what extent should we require MPDL synthesizers to implement our chosen parameters? If we require too much, synthesizer manufacturers will resist adopting MPDL because of the cost. If we require too little, we'll be in a situation where so little is standardized that performers and composers cant make any assumptions about how an arbitrary synth will respond to a particular message. Whats needed, therefore, is a way to transcend the dichotomy of this feature is required of all synths versus you have no guarantee what result youll get if you send this message to an MPDL synth.In this paper I propose a solution that takes advantage of perceptual similarities of various synthesis control features. We organize all conceivable timbral controls into a tree-structured hierarchy such that perceptually similar controls are grouped together. For example, one high-level node would be loudness; this would encompass gain adjustment, high pass filtering, additive synthesis loudness models, simulated wind pressure for physical modeling, etc.Furthermore, note descriptors can specify branch nodes of this tree in addition to leaves. A message sent to the loudness node would mean make the tone louder by whatever technique is available on this synthesizer. (If a synthesizer has multiple techniques to control loudness, it would be free to choose one arbitrarily.) This allows a synth user to specify a parameter at a high level of abstraction, giving the synthesizer builder the freedom to choose a particular technique to implement that parameter. There will always be new synthesis techniques and their associated real-time control handles, so our tree must have room in each area for future growth.In this paper I also propose an encoding technique that allows the tree of synthesis parameters to be extremely large, yet allows for efficient encoding of the parameter IDs for real-time network transmission.I will show some initial ideas about how to organize the tree, but the main purpose of this presentation is to elicit feedback from the music perception community along these lines.