|
From: M. N. <ne...@us...> - 2003-01-21 17:20:15
|
Moi, > I think that sound fonts can map out a > portion of the keyboard, from looking at Swami, so would it be possible to > have a bass below middle C and a piano above middle C? Yes, that's possible. Take two instruments and assign the zones on preset level. > The technical issue with these libraries is that sometimes > a velocity of > 63 and 64 do not compare well with each other, so there are > adjustments made > in each sample set to get it all to work. You are going to find these > adjustments in a .gig file I'm sure. That's no problem. The SF2 standard allows completely independent parameters for each individual velocity / key zone. One could even use a modulator to make the transition gradual throughout the vel / key range of a sample (for example velocity to filter cutoff and amplitude). > The other one we need is 'key switching', where a range of > keys on the > keyboard are reserved as switches, not notes. When one of > these keys is > pressed, the complete sample set for all MIDI velocities > changes. I think > this one is easier to implement though. (Famous last > words...) You'll find > this in some of the .gig libraries, but possibly not on Worra's site. Famous last words indeed... That would mean adding new features to the SF2 format, to synth and editor. And then, why switch samples only? If I change to another sample, I'll probably also want to change filter, envelopes and so on. In case somebody is interested in the solution I'm using to get a similar result (with a control program 'wrapped' around iiwusynth): In iiwusynth there is a quite new feature, the so-called MIDI router. It can change (for example) the MIDI channel of received data, as in 'all data received on channels 4..7 goes to the synth on channel 0'. When I want to switch on-the-fly between different sounds, I assign them to different synth channels. To change sounds, I just upload a new router configuration (the router is smart enough to get pending 'noteoff' events right). For example: In state 1, all data goes to channel 0, in state 2 all data to channel 1. I use program change messages to switch between 'states' (instead of reserved keys). Together with the Ladspa Fx unit this also allows to change the effects setup. For example: Rhodes EP on synth channel 0 and 1, and a phaser inserted at the audio output of channel 0 only. This effectively switches the phaser on and off (what's best: held notes are unaffected, so you can hold a chord, switch the router setup, and continue playing with a different sound). If there is interest in the control program I'm using, let me know. But it's meant for live playing, not for sequencing, and far from ready-for-the-masses. Cheers Markus |