Re: Questions on data in MIDIPackets
Re: Questions on data in MIDIPackets
- Subject: Re: Questions on data in MIDIPackets
- From: Bill Stewart <email@hidden>
- Date: Mon, 25 Feb 2002 17:58:06 -0800
on 25/2/02 2:31 PM, Kurt Bigler wrote:
>
on 2/25/02 9:58 AM, Bill Stewart <email@hidden> wrote:
>
>
> The MIDI Services on X are just that - getting MIDI data in and out of the
>
> system to MIDI Devices (and some IA facilities). How could we possibly
>
> design and implement an API for a protocol that doesn't exist yet and has no
>
> real hardware support?
>
>
>
> We also know that MIDI is not the be all and end all of these kinds of
>
> protocols (particularly for Software based rendering) so we specifically
>
> provided APIs for the MusicDevice component (AudioUnit/MusicDevice.h) that
>
> allows for:
>
> Floating Pt note numbers
>
> Floating Pt parameter lists to new notes of arbitrary lengths
>
> Arbitrary numbers of groups (ie. Think MIDI Channels) - where also groups
>
> are NOT defined to be notes on a particular instrument, but are user defined
>
> Floating Pt parameter values
>
> Sample offsets for all of these.
>
> (As well as MIDI APIs)
>
>
A point that I neglected in my last message...
>
>
I had not (prior to Bill Stewart's message) looked at AudioUnits yet, not
>
expecting to find there what I have been calling "MIDI-replacement"
>
functionality.
>
>
Though I still haven't looked at AudioUnit/MusicDevice.h functionality in
>
detail, it may well be that Apple HAS address my concerns there, provided I
>
am willing to push what I thought of as application functionality down into
>
an audio unit. However, there are many potential reasons NOT to do that,
>
which keeps open the question about making the same abstractions available
>
to an application as a midi-stream substitute, through a set of services
>
parallel to the OS X MIDI Services.
No...
The MIDI Services are just that - services for MIDI data coming to and from
a device - this won't be changed in the foreseeable future. This question
should be considered closed - its the wrong place for the abstractions you
are looking for.
My point about looking at the MusicDevice is NOT to push functionality down
from the app to a "component" but to use that control protocol as a basis
for how your app presents data to a musician. That is, you use the
flexibility of control that this protocol gives you and you can still
maintain a compatibility with existing MIDI devices in the process.
For instance... You can have more than 16 channels (groups for the
DLSSynth). You can have synths that take more than note-num and velocity to
turn a note on (for eg. Lets say you have a physical modelling synth that
you can configure on a note-by-note basis with parameters that effect how
the synth renders that note). You can arbitrarily group individual notes on
different instruments to be controlled by the same groupID (so one "volume
control" alters different notes on different instruments). You can have a
much finer degree of parameter control (32bit floats rather than 7 or 14bit
integers)
All of the sequencers on the market so far are MIDI centric, but software
synths are more and more popular and can be far more flexible. Why do
applications present these solely within the limitations of the MIDI
protocol?
By looking closely at this protocol it presents very interesting challenges
for presenting control of musical material to a composer that maybe far more
powerful than apps based solely on MIDI. But its a lot of conceptual work as
only research protocols (like Csound) have explored this area to any depth -
and they appeal to a very small community of users. It can also be done in a
way that also allows existing MIDI hardware to be used as well - which must
be a requirement for many years to come I'd suggest.
Bill
>
-Kurt Bigler
>
_______________________________________________
>
coreaudio-api mailing list | email@hidden
>
Help/Unsubscribe/Archives:
>
http://www.lists.apple.com/mailman/listinfo/coreaudio-api
>
Do not post admin requests to the list. They will be ignored.
mailto:email@hidden
tel: +1 408 974 4056
__________________________________________________________________________
"Thousands of years ago, cats were worshipped as gods. We have never
forgotten this."
__________________________________________________________________________
_______________________________________________
coreaudio-api mailing list | email@hidden
Help/Unsubscribe/Archives:
http://www.lists.apple.com/mailman/listinfo/coreaudio-api
Do not post admin requests to the list. They will be ignored.