[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: Pedro Lopez-Cabanillas
Subject: Re: MIDI Bank Select proposal (was Re: [fluid-dev] Re: Son of ticket #65)
Date: Tue, 10 Aug 2010 18:23:53 +0200
User-agent: KMail/1.9.6 (enterprise 20070904.708012)

On Tuesday, August 10, 2010, Jim Henry wrote:
> On 8/9/2010 10:34 PM, Elimar Green wrote:
> > ... if only the
> > MSB is received prior to a Program Change, then it should be
> > interpreted as LSB.  If both MSB and LSB are received, they should
> > combine to select the bank (once the Program Change is received) as
> > MSB * 128 + LSB.
> I don't do the kind of stuff where this issue arise and I haven't spent
> as much time thinking about this as others have, so this is just a
> question from someone who is just looking at this superficially.
> Would there be an issue of someone switching modes so that FluidSynth
> sees a sequence like this:
> [mode 1] LSB PC [mode 2] MSB PC
> where the MSB is supposed to be interpreted in the same way as the LSB.
> Do Bank Select MSB and LSB need to be cleared when a PC is received to
> deal with mode changes? Can they be cleared? Would this be a valid
> sequence: [mode 3] MSB LSB PC LSB PC
> where the second PC is intended to continue using MSB unchanged?

First of all: dynamic MIDI mode switching is not going to be included in this 
release. There is only a new setting ("synth.midi-bank-select") that is used 
when the synthesizer is created, and can't be changed without restarting the 

In a future release, the dynamic mode switch may be implemented listening to 
some SYSEX messages, like "GM on"[1], "GS reset" and "XG reset". All of them 
are reset messages that cancel any sound and current state on the device, 
before switching to the new MIDI mode. So it is unlikely that this message 
could be sent in the middle of a performance, and if it is sent the effect is 
similar to a power cycle on a hardware MIDI synth. It would be probably a 
good idea to emulate the same reset behavior in FluidSynth. 

It is common, though, to send the message at the very beginning of a song, to 
initialize the synthesizer with the proper mode for the song. To summarize: 
no, I don't think there is any issue.


[1] http://home.roadrunner.com/~jgglatt/tech/midispec/sysen.htm

reply via email to

[Prev in Thread] Current Thread [Next in Thread]