fluid-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [fluid-dev] Re: Son of ticket #65


From: Pedro Lopez-Cabanillas
Subject: Re: [fluid-dev] Re: Son of ticket #65
Date: Wed, 4 Aug 2010 15:31:36 +0200
User-agent: KMail/1.9.6 (enterprise 20070904.708012)

On Monday, August 2, 2010, Elimar Green wrote:
> Its been a while since the topic of MIDI bank selection was discussed,
> so I'm frustratingly in the dark again about it.  From what I read a
> bank/program change is sent as such:
> Bank MSB (CC #0)
> Bank LSB (CC #32)
> Program change
>
> So in that case if 1 was sent for MSB and 0 was sent for LSB it would
> mean bank #128.  If only a MSB is sent though, as in the cited example
> case, I'm suspecting that should be interpreted instead as an LSB
> value?  Not sure exactly what standard defines such behavior though.
> Does this sound like what the issue is related to?

Yes. I've tried to explain this in the longer message I've posted yersterday. 
To summarize: the only standard required here is the SF2 specification:
http://connect.creativelabs.com/developer/SoundFont/Forms/AllItems.aspx
Which says about the SoundFont bank and preset numbers that "if the value 
[...] is not a valid MIDI value of zero through 127, or 128 for wBank, the 
preset cannot be played but should be maintained." 

If you calculate MSB*128+LSB for any MSB>0, the resulting number is not a 
value from zero through 127, so it will not match any SF2 bank number for a 
melodic channel. In my opinion, if only the LSB control change is sent, it 
should also be interpreted as the SF2 bank number.

Regards,
Pedro



reply via email to

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