Hi Element, OK, I've just tried the aseqdump idea. There are no unexpected note events. But there are control change events sent when I change channel on the keyboard, which of course I am doing during my test. When I change midi channel from 1 to 2, I see :
Control change 0, controller 1, value 0 Control change 1, controller 1, value 127 And vice versa, for 2 to 1 : Control change 1, controller 1, value 0 Control change 0, controller 1, value 127 I think controller 1 is modulation MSB. I don't know what effect setting it to 127 is actually intended to have, but then I don't understand why any such message should be generated :(. And just to confirm, I also see these when I dump the channel using 'amidi -p hw:1,0,0 -d'. Arrrgh !!!! I've just tried pressing the 'vibrato' button on the keyboard I'm using, which is ancient and only used for hacking/testing purposes. There's a small rubber button that turns vibrato on, and a LED that should light up when vibrato is on, but it seems that it doesn't. Very sorry to waste all your time - but without your help, I might still be screwed, so thanks a lot :). Cheers, Mark On Thu, 21 Jul 2016 15:52:47 -0600, you wrote: >Hello Mark, > >I wouldn't trust the Anjuta project file, it may be outdated. The cmake >build is the recommended method of building FluidSynth currently. > >In regards to MIDI events being possibly the source of the problem, what >about running something like aseqdump and connecting your keyboard up to it >and see if it is sending anything weird. > >Best regards, > >Element > >On Thu, Jul 21, 2016 at 3:48 PM, Mark de Roussier <m...@markspace.org.uk> >wrote: > >> >> Hello Jean-Jacques, >> >> OK, I agree completely that this behaviour is strange :). I expected that >> the noteon command would be enough show the problem. I was very surprised >> when it didn't and I needed to hit a key on the midi keyboard. >> >> But if my midi keyboard was sending on two channels or alsa was causing >> duplication, and the fluidsynth router is not doing anything, I would also >> expect to hear the problem when trying to play the Hammond on channel 2, >> which would be mixed up with the Acoustic Keyboard on channel 1. This does >> not happen. >> >> And it does not explain ( for me ! ) why cc 0,121,0 ( which deals only with >> the state of modulators for the voice associated with the channel, I think >> ) makes the problem go away on channel 1 until another 'Hammond' key is hit >> via another channel. >> >> Here is what 'amidi -p hw:1,0,0 -d' says when I hit a midi keyboard key ( >> middle C on channel 1 ) with the channel set to 1 : >> >> 90 3C 5A >> 90 3C 00 >> >> And with the channel set to 2 : >> >> 91 3C 5A >> 91 3C 00 >> >> So, just the note on and note off for one channel. >> >> I noticed there was an Anjuta project file. I've been looking at the >> sources in Anjuta on my workstation, and I can build it there, so I'll see >> if I can reproduce the problem there too, will be easier to work with than >> on the RPi. >> >> Thanks, >> Mark >> >> On Thu, 21 Jul 2016 09:51:59 +0200, you wrote: >> >> >Hi, Mark >> > >> >Hope thiss should help to localize the issue: >> >A)Inside Fluidsynth, >> >1)The 'noteOn command' plays a note using the function API >> >fluid_synth_noteon(channel,key,velocity). >> >2) When receiving a MIDI noteOn message, the MIDI driver puts this >> >message to the input Router and than the Router use the same API >> >fluid_synth_noteon(channel,key,velocity). >> >The same description is true for 'noteoff command'/ MIDI noteOff message >> >(both make use of API fluid_synth_noteoff(channel,key)). >> >If we assume that the router is neutral (which is the default behavior), >> >there is no reason that the results using 'commands noteon/noteoff,' or >> >using MIDI are differents. >> > >> >So, may be your MIDI keyboard sends events on more than one MIDI >> >channels at the same time ?. >> >Or, may be Alsa Driver do this kind of duplicates MIDI messages ? >> > >> >B) >> > > Current Raspian distro, fluidsynth 1.1.6 >> > >> >Just want to report that the current fluidsynth 1.1.6 coming from Rasbian >> repository is out of date! >> >I don't think that the issue is related to current Rasbian fluidsynth. >> >however, if your RPi is connected to internet you may update: >> >1)Download the current git fluidsynth source version (1.1.6) on >> sourceforge. >> >2)Build Fluidsynth. >> > >> >Regards >> > >> > >> >Le 20/07/2016 20:14, Mark de Roussier a écrit : >> >> Hello Jean-Jacques, >> >> >> >> perhaps it will help if I describe how I can create the problem. >> >> >> >> Environment : >> >> ============= >> >> Current Raspian distro, fluidsynth 1.1.6 >> >> >> >> I'm using an RPi 2 with an external Behringer USB DAC and a Roland >> UM-ONE >> >> USB Midi adaptor - I don't believe the specific hardware is relevant. >> >> >> >> Steps to reproduce : >> >> ==================== >> >> >> >> Run fluidsynth as follows : >> >> >> >> schedtool -R -p 49 -e fluidsynth -a alsa -o >> audio.alsa.device=front:CODEC,0 >> >> -m alsa_raw -o midi.alsa.device=hw:1,0,0 -g 0.5 -C no -R no -l >> >> >> >> Load the standard GM font : >> >> >> >> load /usr/share/sounds/sf2/FluidR3_GM.sf2 >> >> >> >> Sound a note from this font : >> >> >> >> noteon 0 60 80 >> >> noteoff 0 60 >> >> >> >> This makes the correct noise - GM Acoustic Grand. >> >> >> >> Load a Hammond Organ font : >> >> >> >> load /home/pi/Music/Hammondsf2/05.sf2 >> >> >> >> This has blown away our channel mapping, so remap : >> >> >> >> select 0 1 0 0 >> >> select 1 2 0 0 >> >> >> >> Sound the same GM note as before : >> >> >> >> noteon 0 60 80 >> >> noteoff 0 60 >> >> >> >> This makes the correct noise - GM Acoustic Grand. >> >> >> >> Sound a note from the Hammond font : >> >> >> >> noteon 1 60 80 >> >> noteoff 1 60 >> >> >> >> This makes the correct noise - Hammond. >> >> >> >> Sound a note from the GM font again : >> >> >> >> noteon 0 60 80 >> >> noteoff 0 60 >> >> >> >> This makes the correct noise - GM Acoustic Grand >> >> >> >> Now play a note on channel 2 on a midi keyboard - this makes the correct >> >> noise ( Hammond ). >> >> >> >> Now play a note on channel 1 on a midi keyboard. This makes the WRONG >> >> noise, its a horribly distorted Acoustic Piano. >> >> >> >> It might just be a mix of Hammond and Acoustic Piano, but to me it >> sounds >> >> more like the Acoustic Piano with the vibrato from the Hammond. >> >> >> >> Issue the command >> >> >> >> cc 0 121 0 >> >> >> >> Play the keyboard again ( channel 1 ) - now this makes the correct >> noise ( >> >> Acoustic Grand ). >> >> >> >> Unfortunately the Hammond soundfont is commercial, so I can't just >> share it >> >> :(. I used a tool ( Swami ) to look at this font. When I look at notes >> in >> >> the instrument section, and select the 'Misc. Controls' tab, I see a non >> >> zero value ( 8.176 ) for the frequency setting of the Modulation LFO. >> >> >> >> So my initial hypothesis is that when a note is played ( via MIDI ), >> then >> >> this modulation is applied to all MIDI channels, even if they are >> mapped to >> >> an entirely different font. >> >> >> >> Cheers, >> >> Mark >> >> >> >> On Wed, 20 Jul 2016 09:56:14 +0200, you wrote: >> >> >> >>> Hi, Mark >> >>> >> >>>> the modulation characteristics of a Hammond font mapped to one midi >> >>>> channel end up being applied to everything... >> >>> Can you explain what you mean by "..the modulation caracteristics of a >> Hammond font.." ? >> >>> If you feel that there is something wrong, please don't hesitate to >> explain what you have found. >> >>> >> >>>> I've looked at sourceforge, but it wasn't clear how I should raise a >> >>> ticket. >> >>> >> >>> 1) You must create an account on Sourceforge. >> >>> 2) Once logged from your account, the Ticket tab enables menus to >> create and edit your ticket. >> >>> >> >>>> Is this an appropriate place to discuss the problem ? If so I'll >> >>>> supply more details. >> >>> I you read through the tickets you will find that usually tickets are >> used to: >> >>> 1) raise "Bugs" or offer "patches". >> >>> 2) but they are used also for "technical suggestions"about fluidsynth >> actual behavior >> >>> and possible enhancements to remain compliant with SoundFonts and MIDI. >> >>> >> >>> Regards >> >>> >> >>> >> >>> Le 20/07/2016 02:30, Mark de Roussier a écrit : >> >>>> Hi everyone, >> >>>> >> >>>> I'm attempting to use fluidsynth as the basis for a headless soundfont >> >>>> synth based on an RPi. The particular requirement is that it should >> have >> >>>> some good Hammond organ sounds, and also support standard GM. So I'm >> trying >> >>>> to configure fluidsynth with some commercial Hammond fonts plus the >> >>>> standard fluidsynth GM font. >> >>>> >> >>>> I think I've found a problem in the course of trying to make this >> work. The >> >>>> gist of the matter is that there appear to be some circumstances in >> which >> >>>> the modulation characteristics of a Hammond font mapped to one midi >> channel >> >>>> end up being applied to everything, regardless of font or channel. >> >>>> >> >>>> I've looked at sourceforge, but it wasn't clear how I should raise a >> >>>> ticket. Is this an appropriate place to discuss the problem ? If so >> I'll >> >>>> supply more details. >> >>>> >> >>>> Thanks, >> >>>> Mark >> >>>> >> >>>> _______________________________________________ >> >>>> fluid-dev mailing list >> >>>> fluid-dev@nongnu.org >> >>>> https://lists.nongnu.org/mailman/listinfo/fluid-dev >> >> _______________________________________________ >> fluid-dev mailing list >> fluid-dev@nongnu.org >> https://lists.nongnu.org/mailman/listinfo/fluid-dev >> _______________________________________________ fluid-dev mailing list fluid-dev@nongnu.org https://lists.nongnu.org/mailman/listinfo/fluid-dev