Re: Effects/SASL/Dynamic instr MIDI easedropping ...

From: John Lazzaro (lazzaro@cs.berkeley.edu)
Date: Sun Apr 30 2000 - 12:27:18 EDT


> There are actually two options here. One is to implement the feature in
> linmidi only (I assume that's your MIDI driver program).

Yes, basically there's an open API for "control drivers" that plug
into sfront -- at the moment, control drivers don't have the ability
to access params[], but that was just an omission that will be
rectified soon. This way, each driver can use params[] for what it
needs it for.

I guess that given that RPNs and NRPNs are a actual part of MIDI,
though, and that given their event nature there's no reliable way
for a SAOL program to parse them by looking at MIDIctrl[], the
"right" solution would be MIDIrpn[16384] and MIDInrpn[16384], with
the implicit assumption that most implementations would use some
sort of sparse array technique to implement these arrays, rather
than literally map the whole array (although on Linux this really
wouldn't be a waste, since the arrays would just never get physically
mapped to memory).

But this would require an addition to the standard itself ...

Finally, there may be a possible errata in the Structured Audio
spec concerning params[] -- if I read the MPEG 4 Systems spec
correctly, params[] is meant for bi-directional communication
between SAOL program and the decoder. But the relevent sections
of the Structured Audio spec (5.8.6.6.2, for example, defining
assignment statements) note that MIDIctrl[] may be an lval, but
says nothing about params[]. Eric, which document is correct here?

                                                                --jl



This archive was generated by hypermail 2b29 : Mon Jan 28 2002 - 11:46:39 EST