[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: MIDI Bank Select proposal (was Re: [fluid-dev] Re: Son of ticket #65
From: |
jimmy |
Subject: |
Re: MIDI Bank Select proposal (was Re: [fluid-dev] Re: Son of ticket #65) |
Date: |
Fri, 6 Aug 2010 16:10:24 -0700 (PDT) |
> Date: Fri, 6 Aug 2010 07:52:14 +0200
> From: Pedro Lopez-Cabanillas <address@hidden>
>
> On Friday, August 6, 2010, Elimar Green wrote:
> > > I want to remark the above quotation from the SF2
> specification. SF2 bank
> > > numbers for melodic channels are numbers in the
> range 0 to 127, 7 bits.
> >
> > That is only for General MIDI (GM) compatibility
> though.
>
> No. General MIDI (GM) doesn't use banks, CC#0 and CC#32 are
> ignored in GM mode
> by all standards compliant devices.
>
GM1 was ambiguous, but GM2 does use CC#0 and CC#32.
Maybe we can try to dig into GS and XG specs to setup the specific mode for
them. Many GS/XG midi files should already have some GS-reset or XG-reset
sys-ex messages at the start of the MIDI sequence. From what I remember (web
searches), Timidy already list the detection of GM/GS/XG mode as one of the
features. Otherwise, GM1 was ambiguous so if we want, we may find a way to
allow customized configuration for specific device(s) with regards to MSB, LSB,
ProgChange handling.
Perhaps we can also have a GM2 mode for this, which is straight forward. From
http://en.wikipedia.org/wiki/General_MIDI_Level_2
It has some good info on specific GM2 bank selects (CC#0 and CC#32) before a
ProgramChange to select instrument voice, separately similar info for selecting
GM2 drumkit.
>>>
Program and bank change events
General MIDI 2 compatible synthesizers access all of the 256 instruments by
setting cc#0 (Bank Select MSB) to 121 and using cc#32 (Bank Select LSB) to
select the variation bank before a Program Change. Variation bank 0 contains
full GM sound set.
<<<
My take of GM level-1 is that it specified a minimum requirements, not
forbidding, but allowing for additional expansion for vendor enhanced features.
I think GM level-2 is similar, again quoting form wikipedia page above:
>>>
General requirements
* Number of Notes: 32 simultaneous notes
* MIDI Channels: 16
* Simultaneous Melodic Instruments - up to 16 (all Channels)
* Simultaneous Percussion Kits - up to 2 (Channel 10/11)
<<<
Systems with 64/128/256 notes polyphony will meet the "Number of Notes"
requirements, and not disqualified because they have more than 32-notes
polyphony.
My take with bank changes for GM level-1 is similar, the specs for GM level-1
does leave room for enhancements, that's all. Of course, different vendors
have their own implementation(s), sometimes deliberately, so that they won't
get sued by their competitor(s). That's why we see mumbo jumbo in MSB, LSB
when crossing brand-names.
Within the same brand, things are fairly consistent (except when company
merged). They may change because they have to, with newer/better
design/implementation goals moving forward (from Organ, FM-synth,
MIDI-keyboard, Analog Synth, Digital Synth, Sampler, Workstation, Arranger...)
Of course, if a MIDI files/sequences recorded on one device (or using one
soundfont) being played by a different device (using a different soundfont), it
may not have the appropriate instrument voice(s), and/or drumkit. In such
situation, we should print out a warning, and fallback to some sane/safe
(similar, if possible) instrument voice or drumkit. Our only common
denominator is GM1 sound set as a required set of features.
Jimmy
- Re: MIDI Bank Select proposal (was Re: [fluid-dev] Re: Son of ticket #65),
jimmy <=
- Re: MIDI Bank Select proposal (was Re: [fluid-dev] Re: Son of ticket #65), jimmy, 2010/08/06
- Re: MIDI Bank Select proposal (was Re: [fluid-dev] Re: Son of ticket #65), Elimar Green, 2010/08/08
- Re: MIDI Bank Select proposal (was Re: [fluid-dev] Re: Son of ticket #65), jimmy, 2010/08/08
- Re: MIDI Bank Select proposal (was Re: [fluid-dev] Re: Son of ticket #65), Pedro Lopez-Cabanillas, 2010/08/08
- [fluid-dev] MIDI Bank Select Test result, Bernd Casper, 2010/08/16
- Re: [fluid-dev] MIDI Bank Select Test result, Pedro Lopez-Cabanillas, 2010/08/16
- Re: Re: [fluid-dev] MIDI Bank Select Test result, Bernd Casper, 2010/08/16
- Re: [fluid-dev] MIDI Bank Select Test result, Pedro Lopez-Cabanillas, 2010/08/16
- Re: [fluid-dev] MIDI Bank Select Test result, David Henningsson, 2010/08/16
- Re: [fluid-dev] MIDI Bank Select Test result, Pedro Lopez-Cabanillas, 2010/08/16