I have Yamaha Clavinova Grand (198-Clavinova.sf2, sfArk) soundfont. It has hammer noise samples used as key release sounds. You can check it running Viena SoundFont Editor, in Windows or Linux via Wine, by choosing
000:000 = Yamaha Clp-920 preset and clicking built-in keyboard.
While the soundfont works fine in Windows (I get the proper hammer noise) using BASSMIDI Driver, it doesn't on Linux. I don't hear hammers (Timidity, LinuxSampler) or they're played wrongly (FluidSynth, actually as long as key is not released the hammer noise is played in loop).
Can it be that there is no complete enough SF2 support in any synthesizer engine on Linux? Or I am doing something wrong?
Which SF2 engine is considered the most complete nowadays in Linux world?
My setup procedure:
jackd -d alsa -r 48000 -p 1024 -n 2 -s -X seq -D -C hw:0 -P hw:0 # seq for jack-only MIDI clients, like jack-keyboard fluidsynth -a jack -m alsa_seq -r 48000 -g 0.2 -L 2 -o midi.alsa_seq.id=FluidSynth -j ~/soundfont/198-Clavinova.sf2 timidity -iA -B2,8 -Oj linuxsampler QSampler # create Audio and MIDI devices, add 2 channels with 198-Clavinova.sf2 qjackctl # connect Audio: LinuxSampler 0, 1 to playback_1, playback_2, # change FluidSynth l_01, r_01 to playback_1, playback_2
I'm not on Linux right now (I had to recheck that it works ok on BASSMIDI Driver), so cannot provide LSCP file for LS, but it's the result of above mentioned actions in QSampler.
BTW I'm not sure right now, but I think that Timidity doesn't have fully correct panning of the sounds. OTOH in FluidSynth panning information is apparently ignored IIRC. Don't remember how LS performed, but it was possibly the closest to what I hear from BASSMIDI Driver on Windows (except for hammer noise, of course).