Hi Holger and All!
I have updates on Controller Learning, sfz controllers, and Fluidsynth controllers:
First, an update on Controller Learning:
It appears there might be a one to one limitation on controller learning. If I Iearn filter cutoff to chain MIDI 1 CC74, then If I later learn filter cutoff to chain MIDI8 CC74, the snapshot sometimes forgets the learn on chain MIDI 1.
I see this happening in LInuxsampler and Fluidsynth. I have to check sfizz. I am still working on it.
Second, regarding sfz controllers :
@jofemodo kindly added support to sfizz, LS and FS for four controllers: 74, 71, 73 and 72. I did not implement them in my above tutorials. Many of the factory sfz instruments do not implement them either. I only learned other controllers to volume, and I chose not to edit the fatory sfz files.
The four controllers will not do do anything unless you edit your sfz file to use them. So if you want CC74 to control filter cutoff and CC73 to adjust volume, you have to edit the sfz file under a global, master or group header:
bracket global or master bracket
volume=-48
pitchlfo_freq=8.176
pitchlfo_depth=0
pitchlfo_depth_oncc1=200
fil_type=lpf_4p
cutoff=2400
cutoff_cc74=9600
bracket group brackets
group_label=Group 1
volume_oncc73=48
The sfz will now respond to CC1, CC74 and CC73 without having to learn cc.
Thirdly, regarding Fluidsynth controllers:
You have to make 3 edits in the sf2 and create a yml file. You can download to the Modsynth_v1.sf2 and Modsynth_v1.yml to see how this is done.
Using Polyphone,
Edit the instrument filter (filter cutoff 60hz)
Edit the Preset offset (Filter Cutoff x 2)
Add a preset modulator (Controller 74 , x 6000, filter cutoff)
and Create a yml file that includes
sf2_file: “filename.sf2”
midi_controllers:
filter_resonance:
midi_cc: 71
value: 0
filter_cutoff:
midi_cc: 74
value: 64
mod_attack:
midi_cc: 73
value: 16
mod_release:
midi_cc: 72
value: 16
The soundfont will now respond to the modulated controllers.
I will update my engine comparisons (sfizz, LS and FS) in a separate thread. Each engine has advantages.
Hope this helps!
Sam in NJ USA
(Still hurting from the Eagles Super Bowl loss…)