Re: MIDI "Controller" Support (was: Rationale for ignoring common MIDI control changes)
Re: MIDI "Controller" Support (was: Rationale for ignoring common MIDI control changes)
- Subject: Re: MIDI "Controller" Support (was: Rationale for ignoring common MIDI control changes)
- From: Bill Stewart <email@hidden>
- Date: Sat, 12 Jul 2003 11:30:37 -0700
Phil
Sure
I think the shortened list though is worth considering for every
synth...
Volume
Pan
Mod Wheel
Foot Controller
Sustain
AllSoundOff
ResetAllControllers
AllNotesOff
Pitch Bend (and its nice to have the RPN support for setting the
range for that as well)
After Touch
I'm not sure if this list could be considered "complete" for a minimal
controller list, or if there are some good additions to make to this
list?
Bill
On Saturday, July 12, 2003, at 07:24 AM, phil c wrote:
Quite a few of the controllers in your list are rarely supported.
Sustenudo, Soft, Legato, Hold2, etc.. Data Entry, Filter resonance,
the vibrato controllers are also very rare. It's been a fairly long
time since I have seen these implemented or been asked to implement
them on hardware designs.
phil
On Friday, July 11, 2003, at 04:55 PM, Bill Stewart wrote:
There is a list of controls that all "GM compatible" synths are
generally required to support. I think a similar regime should be
imposed on software synths for a degree of consistency that has
served the users of hardware synths rather well. Some controls may
not make sense of course, but many/most do...
For those interested here's the list:
- MIDI Controllers
// These have an LSB as well (in brackets)
BankSelect = 0, (32)
ModWheel = 1, (33)
Breath = 2, (34)
Foot = 4, (36)
PortamentoTime = 5, (37)
DataEntry = 6, (38)
Volume = 7, (39)
Balance = 8, (40)
Pan = 10, (42)
Expression = 11, (43)
// these controls have a (0-63) == off, (64-127) == on (no LSB)
Sustain = 64, //hold1
Portamento = 65,
Sostenuto = 66,
Soft = 67,
LegatoPedal = 68,
Hold2Pedal = 69,
FilterResonance = 71,
ReleaseTime = 72,
AttackTime = 73,
Brightness = 74,
DecayTime = 75,
VibratoRate = 76,
VibratoDepth = 77,
VibratoDelay = 78,
// these controls have a 0 < 128 range (no LSB)
ReverbLevel = 91,
ChorusLevel = 93,
AllSoundOff = 120,
ResetAllControllers = 121,
AllNotesOff = 123,
// these control ID's have a range of 0 < 128
RPN_PitchBendSenstivity
RPN_ChannelFineTune
RPN_ChannelCourseTune
RPN_ModDepthRange
- Pitch Bend
- Channel Aftertouch
- Program Change
As we've already discussed, the support for Program and Bank Select
messages are not required if the synth is a preset based synth -
essentially a mono-timbral synth in most cases, thus the host
services will generally provide a way to map a Patch/Bank to a preset
selection... I've left off Polyphonic Aftertouch, as no-one has
seemed that interested in supporting this...
I put this list together from a GM spec that is available for perusal
at the MMA (MIDI Manufacturer's Association) web site
(http://www.midi.org/)
Obviously, many of these are not particularly interesting for alot of
synths - if I were asked to say which ones I think are important:
Volume
Pan
Mod Wheel
Foot Controller
Sustain
AllSoundOff
ResetAllControllers
AllNotesOff
Pitch Bend (and its nice to have the RPN support for setting the
range for that as well)
After Touch
Doug/Chris may have some additional comments as well..
Bill
On Friday, July 11, 2003, at 12:42 PM, Robert Grant wrote:
I'm working on a bigger and better Rax-like host and I'm trying to
provide a MIDI mixer to handle the Pan/Balance issue as well as
allow level setting for both internal and external synths from a
single point. But it seems that many AU synths are ignoring Channel
Volume and some are ignoring Pan.
Is there any reason to ignore Channel Volume when most external
synths will honor it? And what about Pan/Balance?
Thanks for the enlightenment...
Robert.
_______________________________________________
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
______________________________________________________________________
____
"Much human ingenuity has gone into finding the ultimate Before.
The current state of knowledge can be summarized thus:
In the beginning, there was nothing, which exploded" - Terry Pratchett
______________________________________________________________________
____
_______________________________________________
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.
_______________________________________________
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
________________________________________________________________________
__
"Much human ingenuity has gone into finding the ultimate Before.
The current state of knowledge can be summarized thus:
In the beginning, there was nothing, which exploded" - Terry Pratchett
________________________________________________________________________
__
_______________________________________________
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.