SFZ format documentation

Sampler and Sampling discussion (techniques, tips and tricks, etc.)
DSmolken
KVRAF
1713 posts since 20 Sep, 2013 from Poland

Post Fri Apr 03, 2020 11:10 pm

A lot of the information came from the Cakewalk book - we bought a secondhand copy - so in an abstract way, this is what happened to that book.

TAL Sampler Linux support is now added, and unison tutorial is published. The Discord's also pretty active. Things are coming along.

User avatar
audiojunkie
KVRAF
2955 posts since 19 Apr, 2002 from Utah

Re: SFZ format documentation

Post Tue Apr 07, 2020 12:00 pm

Cool! Thanks! :tu:
C/R, dongles & other intrusive copy protection equals less-control & more-hassle for consumers. Company gone-can’t authorize. Limit to # of auths. Instability-ie PACE. Forced internet auths. THE HONEST ARE HASSLED, NOT THE PIRATES.

kinwie
KVRist
370 posts since 22 Aug, 2013

Re: SFZ format documentation

Post Tue Apr 07, 2020 12:07 pm

Thank you!

DSmolken
KVRAF
1713 posts since 20 Sep, 2013 from Poland

Re: SFZ format documentation

Post Wed Apr 08, 2020 3:46 am

Added a bit about round robin neighbor borrowing to the unison tutorial at https://sfzformat.com/tutorials/unison# ... -borrowing

It's not really unison, but soon after I published it, someone wrote that it's very helpful and his goal was to add fake RRs to something that didn't have them, so I figured I might as well add an explicit explanation of how that works.

enroe
KVRian
1232 posts since 19 Mar, 2008 from germany

Re: SFZ format documentation

Post Wed Apr 08, 2020 4:40 am

DSmolken wrote:
Wed Apr 08, 2020 3:46 am
... add fake RRs to something that didn't have them ...
Yeah, that would be awesome -
very appreciated! :clap:
free mp3s + info: andy-enroe.de songs + weird stuff: enroe.de

kinwie
KVRist
370 posts since 22 Aug, 2013

Re: SFZ format documentation

Post Fri Apr 10, 2020 9:09 pm

Anyone successfully using the opcode:
on_locc133= / on_hicc133= or
start_locc133= / start_hicc133=
?

DSmolken
KVRAF
1713 posts since 20 Sep, 2013 from Poland

Re: SFZ format documentation

Post Fri Apr 10, 2020 9:35 pm

Not specifically, no, but I do know the extended CCs aren't completely full-featured. Can't use curvecc with them IIRC. So, wouldn't be surprised if they don't work with these somewhat obscure mechanisms.

With 133 being key number, are you just looking to do a simpler way of trigger=attack and key=(number)? I think I've successfully used 133 for filter keytracking adjustments.

kinwie
KVRist
370 posts since 22 Aug, 2013

Re: SFZ format documentation

Post Fri Apr 10, 2020 9:53 pm

Yeah, cc133 usually works in sforzando, for ampeg_hold, decay, etc and filter like you've mentioned

It just don't work for the on_lo/hicc I guess, which I think and test like this, eg:
on_locc133=24
Where the keynumber 24 will trigger the target region on another key

This can be use for triggering choke samples of a crash cymbal, where the choke samples is defined with trigger=release and put at the same key as the crash, but triggered by another key

For example, salamander drumkit has the cymbals choke samples and can be programmed this way

kinwie
KVRist
370 posts since 22 Aug, 2013

Re: SFZ format documentation

Post Fri Apr 10, 2020 9:57 pm

A close approach for that, can be using the sw_previous opcode. But when, for example, a snare come after the cymbal, the choke release sample won't play

kinwie
KVRist
370 posts since 22 Aug, 2013

Re: SFZ format documentation

Post Fri Apr 10, 2020 10:15 pm

But i know, of course using standard midi cc or aftertouch/poly will work with on_lo/hicc

DSmolken
KVRAF
1713 posts since 20 Sep, 2013 from Poland

Re: SFZ format documentation

Post Fri Apr 10, 2020 10:45 pm

Ah, got ya. Cymbal chokes are a pain, yeah, I haven't figured out a good way to do them yet. Trigger=release won't work for e-kits at all, and is kind of a pain with keyboards, too. Aftertouch might not be a bad way to do it, actually. Practically no keyboard has that anymore, but it's still supported by ARIA/Sforzando, so you can use it.

I just stick chokes on another note which is in a group which mutes the cymbal, but then you have to hit that note with the right velocity to match how far the sound has decayed. Also not a real solution that's easy to use in real life.

User avatar
pljones
KVRAF
6661 posts since 8 Feb, 2003 from London, UK

Re: SFZ format documentation

Post Fri Apr 10, 2020 11:45 pm

It doesn't have to be another note - it can be a region that only triggers under certain circumstances. For example, if Note 64 triggered your crash, you could make it so it MUST NOT have channel aftertouch present to trigger, with a separate region on the same note that MUST have channel aftertouch, triggering the choke (i.e. mute grouped to the playing note).

kinwie
KVRist
370 posts since 22 Aug, 2013

Re: SFZ format documentation

Post Fri Apr 10, 2020 11:55 pm

pljones wrote:
Fri Apr 10, 2020 11:45 pm
It doesn't have to be another note - it can be a region that only triggers under certain circumstances. For example, if Note 64 triggered your crash, you could make it so it MUST NOT have channel aftertouch present to trigger, with a separate region on the same note that MUST have channel aftertouch, triggering the choke (i.e. mute grouped to the playing note).
Yes, that is correct when using aftertouch or standard midi cc

User avatar
pljones
KVRAF
6661 posts since 8 Feb, 2003 from London, UK

Re: SFZ format documentation

Post Sat Apr 11, 2020 12:02 am

Ok, so if you set up a region that triggers using whatever mechanism you like, you can use that to trigger muting by having it in a mute group. If you can't set it up as a region, you can't use it. That's the point I was trying to make (very badly ;) ). I'm not clear on what you were trying to do... Or are you saying the on_ccXXX values don't work to distinguish between regions?

DSmolken
KVRAF
1713 posts since 20 Sep, 2013 from Poland

Re: SFZ format documentation

Post Sat Apr 11, 2020 12:06 am

Ah, I think I'm starting to understand. You might be looking for this kludge:

https://sfzformat.com/opcodes/lokey

"In the SFZ 1 specification, the allowed range is 0 to 127. However, SFZ 2 additionally includes the possibility to set lokey and hikey to -1, to prevent a region from being triggered by any keys. This is a way (though, admittedly, not a very elegant one) to use the on_loccN/onhiccN opcodes to trigger, for example, pedal noises which are triggered whether any keys are pressed or not."

Return to “Samplers, Sampling & Sample Libraries”