From: Scott B. <sba...@mu...> - 2005-12-27 11:44:08
|
On Tue, 2005-12-27 at 00:43 -0500, Phil Frost wrote: > What would be even greater is to have the timbre of the open sound > change by the position of the pedal, which most kits send as CC 7 (I > think 7 is right) either by having different samples or varying filter. > Maybe this is outside the scope of hydrogen, but I sure would like it. This is a feature that I need as well. I recently received the ns_kit7 sample set, and would like to use it with Hydrogen. Currently hydrogen is not able to use such an extensive sample set to the fullest. The ns_kit7 hi-hats are sampled with 16 degrees of openness each with between 8-60 velocity layers. This requires two things in Hydrogen, one - more layers per instrument, two - 2 dimensional layering. More layers is easy. As a matter of fact I just upped the MAX_LAYERS to 100 and rebuilt. It seems to work fine (the instrument editor gui would need to be changed). 2D layers would be easy to implement as well (velocity and modulation?), but I am concerned about performance. The current sampler implementation searches through the list of layers looking for the one that matches the velocity of the note to be played - currently worst case is 16 layers to search through. It does this search several times while rendering each note. With the minimum values needed for the ns_kit7, this would be worst case 1024 layers to search through. I need to to some benchmarking to see if this would be of concern. I am also thinking of some ways to optimize the note velocity->layer lookup. The most recent idea I have is to link the layer directly to the Note. Why search for this layer every time the sampler needs to render the next frame of the Sample of the Note? The sampler could just query the Layer directly from the Note. I just thought of this 2 minutes ago, so maybe I am missing something. I will investigate further. -Scott |