fluid-dev
[Top][All Lists]
Advanced

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

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


From: Pedro Lopez-Cabanillas
Subject: Re: [fluid-dev] Son of ticket #65
Date: Wed, 28 Jul 2010 22:21:10 +0200
User-agent: KMail/1.9.6 (enterprise 20070904.708012)

On Wednesday, July 28, 2010, David Henningsson wrote:
> 2010-07-27 18:34, Pedro Lopez-Cabanillas skrev:
> > Hi,
> >
> > Something similar but not exactly the same to ticket #65.
> >
> > Sending a bank/program change CC MSB=1, PC=48 corresponding to a GM2/GS
> > Strings instrument, FluidSynth changes to percussion bank 128, Orchestral
> > set.
> >
> > Test case: load the GeneralUser GS soundfont [1] and play the demo song
> > "March #1 in D major".
>
> Banknumber is MSB*128 + LSB, in this case 128, there seems to be program
> changes for channel 11 to 15 to bank 128 prog 48 in the midi file, and
> there is a bank 128 prog 48 preset in GeneralUser_GS, and its name is
> "Orchestral".
>
> What is FluidSynth doing wrong?

The formula ("Banknumber = MSB*128 + LSB") is not correct for GS instruments. 
The bank number is the MSB value alone in this case. So, a MIDI message CC#0 
val=1 means bank#1. 

Changing this behavior breaks a lot of GM2/GS songs that now sound bad when 
played by FluidSynth. The same test case using FluidSynth 1.0.9 sounds great, 
and prints this:

$ ./fluidsynth -a alsa GeneralUser_GS_FluidSynth.sf2 March_#1_in_D_major.mid
FluidSynth version 1.0.9
Copyright (C) 2000-2006 Peter Hanappe and others.
Distributed under the LGPL license.
SoundFont(R) is a registered trademark of E-mu Systems, Inc.

Type 'help' for information on commands and 'help help' for help topics.

> channels
chan 0, Piccolo
chan 1, Flute
chan 2, Oboe
chan 3, Clarinet
chan 4, Bassoon
chan 5, French Horns
chan 6, Brass Section 2
chan 7, Trombone
chan 8, Tuba
chan 9, Orchestral
chan 10, Timpani
chan 11, Mono Strings Fast
chan 12, Mono Strings Fast
chan 13, Mono Strings Fast
chan 14, Mono Strings Fast
chan 15, Mono Strings Fast
                                                          
Regards,
Pedro



reply via email to

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