niedz., 24 lut 2019 o 18:38 Christian Schoenebeck <
schoeneb...@linuxsampler.org> napisaƂ(a):
> Mja, the thing is that src/engines/sfz/EngineChannel.cpp is usually not
the
> right place for doing such core engine event handling that you attempt
with
> your patch. The source files dediciated for the individual formats
(gig/sf2/
> sfz) only cover the most minimalistic stuff required specifically only
for the
> individual format itself, all the rest is shared, common code available
to all
> engines, so when a new feature is added for one engine that it could still
> easily be adopted by all other engines as well (like it usually always
happens
> after some time).

I agree. I've decided to try inside EngineChannel, because it contained
required data (list of all playing voices) ordered by midi key.

> But first things first. If I understand it correctly, you are already
aware that
> there is already a feature for all our engines/formats which is called
> "exclusive groups" or "key groups", right? This feature allows to assign
> individual keys on a keyboard to individual "key groups", and within one
key
> group there is always only 1 note intended to be active at a time, so if
you
> trigger a key being member of a key group and there is already another
note
> active of that same key group, then the previous note of that group will
> automatically be released. So that's a feature typically required for drum
> kits.

I'm using this feature to mute cymbals, but in sfz with off_by opcode user
can specify only one key, and it's implemented correctly in linuxsampler.
It can accurately emulate drum kit pieces, except for mutable cymbals. If
you specify a separate key to mute a cymbal it doesn't mute its consecutive
hits leading to unnatural sound buildup.

> Having said, your intention is to extend this existing feature for
optionally
> raising the amount of active notes in a key group to another higher value
than
> just 1, is that correct?

Yes, it's correct. With sfz 2 format opcodes
http://www.sfzformat.com/index.php?title=Polyphony
http://www.sfzformat.com/index.php?title=Note_polyphony
I can specify a mute key for a group with off_by opcode and decrease
unnatural sound buildup with polyphony.

My configuration is based on
http://www.sfzformat.com/index.php?title=Cymbal_muting but even more
sophisticated with many velocity layers and round robin hits.

Regards
Jacek Roszkowski
_______________________________________________
Linuxsampler-devel mailing list
Linuxsampler-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxsampler-devel

Reply via email to