SFZ Release Trigger

You name it!
Post Reply
AnthonyD
Newbie
Posts: 6
Joined: Fri Nov 08, 2013 9:33 am

SFZ Release Trigger

Post by AnthonyD » Fri Jun 04, 2021 6:35 am

Is trigger=release currently implemented in Linuxsampler's SFZ engine? I can't seem to get it working at all. I'll post a sample below, so if anyone can offer any help (perhaps I did something wrong), please let me know. Thanks in advance.

<group>
trigger=attack
sw_lokey=60
sw_hikey=68
sw_last=62
volume=6

<region> sample=Samples\Green's Rolls\Greens_Rolls_D1_p.wav
lokey=36
hikey=38
pitch_keycenter=38
lovel=0
hivel=31
ampeg_release=0.22

<region> sample=Samples\Green's Rolls\Greens_Rolls_D1_mp.wav
lokey=36
hikey=38
pitch_keycenter=38
lovel=32
hivel=63
ampeg_release=0.22

<region> sample=Samples\Green's Rolls\Greens_Rolls_D1_mf.wav
lokey=36
hikey=38
pitch_keycenter=38
lovel=64
hivel=95
ampeg_release=0.22

<region> sample=Samples\Green's Rolls\Greens_Rolls_D1_ff.wav
lokey=36
hikey=38
pitch_keycenter=38
lovel=96
hivel=127
ampeg_release=0.22

<region> sample=Samples\Green's Rolls\Greens_Rolls_D#1_p.wav
key=39
lovel=0
hivel=31
ampeg_attack=0.11
ampeg_release=0.22

<region> sample=Samples\Green's Rolls\Greens_Rolls_D#1_mp.wav
key=39
lovel=32
hivel=63
ampeg_release=0.22

<region> sample=Samples\Green's Rolls\Greens_Rolls_D#1_mf.wav
key=39
lovel=64
hivel=95
ampeg_release=0.22

<region> sample=Samples\Green's Rolls\Greens_Rolls_D#1_ff.wav
key=39
lovel=96
hivel=127
ampeg_release=0.22

<region> sample=Samples\Green's Rolls\Greens_Rolls_E1_p.wav
key=40
lovel=0
hivel=31
ampeg_release=0.22

<region> sample=Samples\Green's Rolls\Greens_Rolls_E1_mp.wav
key=40
lovel=32
hivel=63
ampeg_release=0.22

<region> sample=Samples\Green's Rolls\Greens_Rolls_E1_mf.wav
key=40
lovel=64
hivel=95
ampeg_release=0.22

<region> sample=Samples\Green's Rolls\Greens_Rolls_E1_ff.wav
key=40
lovel=96
hivel=127
ampeg_release=0.22

<region> sample=Samples\Green's Rolls\Greens_Rolls_F1_p.wav
key=41
lovel=0
hivel=31
ampeg_release=0.22

<region> sample=Samples\Green's Rolls\Greens_Rolls_F1_mp.wav
key=41
lovel=32
hivel=63
ampeg_release=0.22

<region> sample=Samples\Green's Rolls\Greens_Rolls_F1_mf.wav
key=41
lovel=64
hivel=95
ampeg_release=0.22

<region> sample=Samples\Green's Rolls\Greens_Rolls_F1_ff.wav
key=41
lovel=96
hivel=127
ampeg_release=0.22

<region> sample=Samples\Green's Rolls\Greens_Rolls_F#1_p.wav
key=42
lovel=0
hivel=31
ampeg_attack=0.08
ampeg_release=0.22

<region> sample=Samples\Green's Rolls\Greens_Rolls_F#1_mp.wav
key=42
lovel=32
hivel=63
ampeg_release=0.22

<region> sample=Samples\Green's Rolls\Greens_Rolls_F#1_mf.wav
key=42
lovel=64
hivel=95
ampeg_release=0.22

<region> sample=Samples\Green's Rolls\Greens_Rolls_F#1_ff.wav
key=42
lovel=96
hivel=127
ampeg_release=0.22

<region> sample=Samples\Green's Rolls\Greens_Rolls_G1_p.wav
key=43
lovel=0
hivel=31
ampeg_attack=0.11
ampeg_release=0.22

<region> sample=Samples\Green's Rolls\Greens_Rolls_G1_mp.wav
key=43
lovel=32
hivel=63
ampeg_release=0.22

<region> sample=Samples\Green's Rolls\Greens_Rolls_G1_mf.wav
key=43
lovel=64
hivel=95
ampeg_release=0.22

<region> sample=Samples\Green's Rolls\Greens_Rolls_G1_ff.wav
key=43
lovel=96
hivel=127
ampeg_release=0.2

<region> sample=Samples\Green's Rolls\Greens_Rolls_G#1_p.wav
key=44
lovel=0
hivel=31
ampeg_attack=0.11
ampeg_release=0.22

<region> sample=Samples\Green's Rolls\Greens_Rolls_G#1_mp.wav
key=44
lovel=32
hivel=63
ampeg_release=0.22

<region> sample=Samples\Green's Rolls\Greens_Rolls_G#1_mf.wav
key=44
lovel=64
hivel=95
ampeg_release=0.22

<region> sample=Samples\Green's Rolls\Greens_Rolls_G#1_ff.wav
key=44
lovel=96
hivel=127
ampeg_release=0.22

<region> sample=Samples\Green's Rolls\Greens_Rolls_A1_p.wav
key=45
lovel=0
hivel=31
ampeg_release=0.22

<region> sample=Samples\Green's Rolls\Greens_Rolls_A1_mp.wav
key=45
lovel=32
hivel=63
ampeg_release=0.22

<region> sample=Samples\Green's Rolls\Greens_Rolls_A1_mf.wav
key=45
lovel=64
hivel=95
ampeg_release=0.22

<region> sample=Samples\Green's Rolls\Greens_Rolls_A1_ff.wav
key=45
lovel=96
hivel=127
ampeg_release=0.22

<region> sample=Samples\Green's Rolls\Greens_Rolls_A#1_p.wav
key=46
lovel=0
hivel=31
ampeg_attack=0.08
ampeg_release=0.22

<region> sample=Samples\Green's Rolls\Greens_Rolls_A#1_mp.wav
key=46
lovel=32
hivel=63
ampeg_release=0.22

<region> sample=Samples\Green's Rolls\Greens_Rolls_A#1_mf.wav
key=46
lovel=64
hivel=95
ampeg_release=0.22

<region> sample=Samples\Green's Rolls\Greens_Rolls_A#1_ff.wav
key=46
lovel=96
hivel=127
ampeg_release=0.18

<region> sample=Samples\Green's Rolls\Greens_Rolls_B1_p.wav
key=47
lovel=0
hivel=31
ampeg_attack=0.08
ampeg_release=0.22

<region> sample=Samples\Green's Rolls\Greens_Rolls_B1_mp.wav
key=47
lovel=32
hivel=63
ampeg_release=0.22

<region> sample=Samples\Green's Rolls\Greens_Rolls_B1_mf.wav
key=47
lovel=64
hivel=95
ampeg_release=0.22

<region> sample=Samples\Green's Rolls\Greens_Rolls_B1_ff.wav
key=47
lovel=96
hivel=127
ampeg_release=0.18

<region> sample=Samples\Green's Rolls\Greens_Rolls_C2_p.wav
key=48
lovel=0
hivel=31
ampeg_release=0.22

<region> sample=Samples\Green's Rolls\Greens_Rolls_C2_mp.wav
key=48
lovel=32
hivel=63
ampeg_release=0.22

<region> sample=Samples\Green's Rolls\Greens_Rolls_C2_mf.wav
key=48
lovel=64
hivel=95
ampeg_release=0.22

<region> sample=Samples\Green's Rolls\Greens_Rolls_C2_ff.wav
key=48
lovel=96
hivel=127
ampeg_release=0.22

<region> sample=Samples\Green's Rolls\Greens_Rolls_C#2_p.wav
key=49
lovel=0
hivel=31
ampeg_release=0.22

<region> sample=Samples\Green's Rolls\Greens_Rolls_C#2_mp.wav
key=49
lovel=32
hivel=63
ampeg_release=0.22

<region> sample=Samples\Green's Rolls\Greens_Rolls_C#2_mf.wav
key=49
lovel=64
hivel=95
ampeg_release=0.22

<region> sample=Samples\Green's Rolls\Greens_Rolls_C#2_ff.wav
key=49
lovel=96
hivel=127
ampeg_release=0.22

<region> sample=Samples\Green's Rolls\Greens_Rolls_D2_p.wav
key=50
lovel=0
hivel=31
ampeg_release=0.16

<region> sample=Samples\Green's Rolls\Greens_Rolls_D2_mp.wav
key=50
lovel=32
hivel=63
ampeg_release=0.22

<region> sample=Samples\Green's Rolls\Greens_Rolls_D2_mf.wav
key=50
lovel=64
hivel=95
ampeg_release=0.22

<region> sample=Samples\Green's Rolls\Greens_Rolls_D2_ff.wav
key=50
lovel=96
hivel=127
ampeg_release=0.22

<region> sample=Samples\Green's Rolls\Greens_Rolls_D#2_p.wav
key=51
lovel=0
hivel=31
ampeg_release=0.22

<region> sample=Samples\Green's Rolls\Greens_Rolls_D#2_mp.wav
key=51
lovel=32
hivel=63
ampeg_release=0.22

<region> sample=Samples\Green's Rolls\Greens_Rolls_D#2_mf.wav
key=51
lovel=64
hivel=95
ampeg_release=0.22

<region> sample=Samples\Green's Rolls\Greens_Rolls_D#2_ff.wav
key=51
lovel=96
hivel=127
ampeg_release=0.22

<region> sample=Samples\Green's Rolls\Greens_Rolls_E2_p.wav
key=52
lovel=0
hivel=31
ampeg_release=0.16

<region> sample=Samples\Green's Rolls\Greens_Rolls_E2_mp.wav
key=52
lovel=32
hivel=63
ampeg_release=0.22

<region> sample=Samples\Green's Rolls\Greens_Rolls_E2_mf.wav
key=52
lovel=64
hivel=95
ampeg_release=0.22

<region> sample=Samples\Green's Rolls\Greens_Rolls_E2_ff.wav
key=52
lovel=96
hivel=127
ampeg_release=0.22

<region> sample=Samples\Green's Rolls\Greens_Rolls_F2_p.wav
lokey=53
hikey=57
pitch_keycenter=53
lovel=0
hivel=31
ampeg_attack=0.04
ampeg_release=0.16

<region> sample=Samples\Green's Rolls\Greens_Rolls_F2_mp.wav
lokey=53
hikey=57
pitch_keycenter=53
lovel=32
hivel=63
ampeg_release=0.22

<region> sample=Samples\Green's Rolls\Greens_Rolls_F2_mf.wav
lokey=53
hikey=57
pitch_keycenter=53
lovel=64
hivel=95
ampeg_release=0.22

<region> sample=Samples\Green's Rolls\Greens_Rolls_F2_ff.wav
lokey=53
hikey=57
pitch_keycenter=53
lovel=96
hivel=127
ampeg_release=0.18



///Release---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

<group>
trigger=release
sw_lokey=60
sw_hikey=68
sw_last=62
volume=6

<region> sample=Samples\Green's Rolls\D1.wav
lokey=36
hikey=38
pitch_keycenter=38
lovel=0
hivel=31
ampeg_attack=0.04


<region> sample=Samples\Green's Rolls\D1.wav
lokey=36
hikey=38
pitch_keycenter=38
lovel=32
hivel=63
ampeg_attack=0.11


<region> sample=Samples\Green's Rolls\d1a.wav
lokey=36
hikey=38
pitch_keycenter=38
lovel=64
hivel=95
ampeg_attack=0.15


<region> sample=Samples\Green's Rolls\d1a.wav
lokey=36
hikey=38
pitch_keycenter=38
lovel=96
hivel=127
ampeg_attack=0.11


<region> sample=Samples\Green's Rolls\D#1.wav
key=39
lovel=0
hivel=31
ampeg_attack=0.08


<region> sample=Samples\Green's Rolls\D#1.wav
key=39
lovel=32
hivel=63
ampeg_attack=0.11


<region> sample=Samples\Green's Rolls\d#1a.wav
key=39
lovel=64
hivel=95



<region> sample=Samples\Green's Rolls\d#1a.wav
key=39
lovel=96
hivel=127


<region> sample=Samples\Green's Rolls\E1.wav
key=40
lovel=0
hivel=31


<region> sample=Samples\Green's Rolls\E1.wav
key=40
lovel=32
hivel=63
ampeg_attack=0.08


<region> sample=Samples\Green's Rolls\e1a.wav
key=40
lovel=64
hivel=95


<region> sample=Samples\Green's Rolls\e1a.wav
key=40
lovel=96
hivel=127


<region> sample=Samples\Green's Rolls\F1.wav
key=41
lovel=0
hivel=31


<region> sample=Samples\Green's Rolls\F1.wav
key=41
lovel=32
hivel=63
ampeg_attack=0.11


<region> sample=Samples\Green's Rolls\f1a.wav
key=41
lovel=64
hivel=95


<region> sample=Samples\Green's Rolls\f1a.wav
key=41
lovel=96
hivel=127
ampeg_attack=0.11


<region> sample=Samples\Green's Rolls\F#1.wav
key=42
lovel=0
hivel=31
ampeg_attack=0.08


<region> sample=Samples\Green's Rolls\F#1.wav
key=42
lovel=32
hivel=63


<region> sample=Samples\Green's Rolls\f#1a.wav
key=42
lovel=64
hivel=95
ampeg_attack=0.08


<region> sample=Samples\Green's Rolls\f#1a.wav
key=42
lovel=96
hivel=127
ampeg_attack=0.11


<region> sample=Samples\Green's Rolls\G1.wav
key=43
lovel=0
hivel=31
ampeg_attack=0.08


<region> sample=Samples\Green's Rolls\G1.wav
key=43
lovel=32
hivel=63


<region> sample=Samples\Green's Rolls\g1a.wav
key=43
lovel=64
hivel=95
ampeg_attack=0.08


<region> sample=Samples\Green's Rolls\g1a.wav
key=43
lovel=96
hivel=127
ampeg_attack=0.11


<region> sample=Samples\Green's Rolls\G#1.wav
key=44
lovel=0
hivel=31


<region> sample=Samples\Green's Rolls\G#1.wav
key=44
lovel=32
hivel=63


<region> sample=Samples\Green's Rolls\g#1a.wav
key=44
lovel=64
hivel=95
ampeg_attack=0.11


<region> sample=Samples\Green's Rolls\g#1a.wav
key=44
lovel=96
hivel=127


<region> sample=Samples\Green's Rolls\A1.wav
key=45
lovel=0
hivel=31


<region> sample=Samples\Green's Rolls\A1.wav
key=45
lovel=32
hivel=63


<region> sample=Samples\Green's Rolls\a1a.wav
key=45
lovel=64
hivel=95


<region> sample=Samples\Green's Rolls\a1a.wav
key=45
lovel=96
hivel=127


<region> sample=Samples\Green's Rolls\A#1.wav
key=46
lovel=0
hivel=31


<region> sample=Samples\Green's Rolls\A#1.wav
key=46
lovel=32
hivel=63


<region> sample=Samples\Green's Rolls\a#1a.wav
key=46
lovel=64
hivel=95
ampeg_attack=0.08


<region> sample=Samples\Green's Rolls\a#1a.wav
key=46
lovel=96
hivel=127
ampeg_attack=0.08


<region> sample=Samples\Green's Rolls\B1.wav
key=47
lovel=0
hivel=31


<region> sample=Samples\Green's Rolls\B1.wav
key=47
lovel=32
hivel=63


<region> sample=Samples\Green's Rolls\b1a.wav
key=47
lovel=64
hivel=95
ampeg_attack=0.11


<region> sample=Samples\Green's Rolls\b1a.wav
key=47
lovel=96
hivel=127
ampeg_attack=0.08


<region> sample=Samples\Green's Rolls\C2.wav
key=48
lovel=0
hivel=31


<region> sample=Samples\Green's Rolls\C2.wav
key=48
lovel=32
hivel=63
ampeg_attack=0.11


<region> sample=Samples\Green's Rolls\c2a.wav
key=48
lovel=64
hivel=95
ampeg_attack=0.15


<region> sample=Samples\Green's Rolls\c2a.wav
key=48
lovel=96
hivel=127
ampeg_attack=0.04


<region> sample=Samples\Green's Rolls\C#2.wav
key=49
lovel=0
hivel=31


<region> sample=Samples\Green's Rolls\C#2.wav
key=49
lovel=32
hivel=63
ampeg_attack=0.11


<region> sample=Samples\Green's Rolls\c#2a.wav
key=49
lovel=64
hivel=95
ampeg_attack=0.11


<region> sample=Samples\Green's Rolls\c#2a.wav
key=49
lovel=96
hivel=127


<region> sample=Samples\Green's Rolls\D2.wav
key=50
lovel=0
hivel=31


<region> sample=Samples\Green's Rolls\D2.wav
key=50
lovel=32
hivel=63


<region> sample=Samples\Green's Rolls\d2a.wav
key=50
lovel=64
hivel=95


<region> sample=Samples\Green's Rolls\d2a.wav
key=50
lovel=96
hivel=127


<region> sample=Samples\Green's Rolls\D#2.wav
key=51
lovel=0
hivel=31


<region> sample=Samples\Green's Rolls\D#2.wav
key=51
lovel=32
hivel=63


<region> sample=Samples\Green's Rolls\d#2a.wav
key=51
lovel=64
hivel=95


<region> sample=Samples\Green's Rolls\d#2a.wav
key=51
lovel=96
hivel=127


<region> sample=Samples\Green's Rolls\E2.wav
key=52
lovel=0
hivel=31


<region> sample=Samples\Green's Rolls\E2.wav
key=52
lovel=32
hivel=63
ampeg_attack=0.11


<region> sample=Samples\Green's Rolls\e2a.wav
key=52
lovel=64
hivel=95
ampeg_attack=0.15


<region> sample=Samples\Green's Rolls\e2a.wav
key=52
lovel=96
hivel=127


<region> sample=Samples\Green's Rolls\F2.wav
lokey=53
hikey=57
pitch_keycenter=53
lovel=0
hivel=31


<region> sample=Samples\Green's Rolls\F2.wav
lokey=53
hikey=57
pitch_keycenter=53
lovel=32
hivel=63
ampeg_attack=0.08


<region> sample=Samples\Green's Rolls\f2a.wav
lokey=53
hikey=57
pitch_keycenter=53
lovel=64
hivel=95
ampeg_attack=0.08


<region> sample=Samples\Green's Rolls\f2a.wav
lokey=53
hikey=57
pitch_keycenter=53
lovel=96
hivel=127
ampeg_attack=0.11

User avatar
cuse
Developer
Posts: 366
Joined: Wed Jan 23, 2008 10:07 pm
Location: Germany

Re: SFZ Release Trigger

Post by cuse » Fri Jun 04, 2021 11:53 am

AnthonyD wrote:
Fri Jun 04, 2021 6:35 am
Is trigger=release currently implemented in Linuxsampler's SFZ engine?
Yes, trigger=atttack|release|first|legato are supported:
https://svn.linuxsampler.org/cgi-bin/vi ... rkup#l1582

List of current SFZ support state:
http://linuxsampler.org/sfz/

AnthonyD
Newbie
Posts: 6
Joined: Fri Nov 08, 2013 9:33 am

Re: SFZ Release Trigger

Post by AnthonyD » Sat Jun 05, 2021 8:20 am

Well, do you have any idea why it wouldn't be working? I'm using 2.1.1 in the KXStudio repo on Debian stable, so I'm getting a bit frustrated on this not working. Legatos I have working fine, but the releases just aren't happening. Any help would be appreciated.

AnthonyD
Newbie
Posts: 6
Joined: Fri Nov 08, 2013 9:33 am

Re: SFZ Release Trigger

Post by AnthonyD » Sat Jun 05, 2021 9:16 am

Also, I was going to send in a donation, but even if I select English most of the info remains in Latvian, so may I just send it to donate@linuxsampler.org via PayPal? Is that correct?

User avatar
cuse
Developer
Posts: 366
Joined: Wed Jan 23, 2008 10:07 pm
Location: Germany

Re: SFZ Release Trigger

Post by cuse » Sat Jun 05, 2021 1:14 pm

AnthonyD wrote:
Sat Jun 05, 2021 8:20 am
Well, do you have any idea why it wouldn't be working? I'm using 2.1.1 in the KXStudio repo on Debian stable, so I'm getting a bit frustrated on this not working. Legatos I have working fine, but the releases just aren't happening. Any help would be appreciated.
Well, you know the drill; updating to latest LS version would make sense first. LS 2.1.1 is two years old. Compiling the .deb packages is fairly easy. All you need to do is downloading the latest sources (e.g. latest development version of 1. libgig and 2. linuxsampler from the Subversion server or at least latest release tarballs of those two) and then run

Code: Select all

dpkg-buildpackage -b
from the toplevel source directory and then install the generated .deb files. Start with libgig first, install its debs and then go on with compling linuxsampler.

Second, strip down the demo sfz file to the bare minimum (e.g. few sfz lines) that's really just demonstrating the issue you encountered.

User avatar
cuse
Developer
Posts: 366
Joined: Wed Jan 23, 2008 10:07 pm
Location: Germany

Re: SFZ Release Trigger

Post by cuse » Sat Jun 05, 2021 1:17 pm

AnthonyD wrote:
Sat Jun 05, 2021 9:16 am
Also, I was going to send in a donation, but even if I select English most of the info remains in Latvian, so may I just send it to donate@linuxsampler.org via PayPal? Is that correct?
It is possible that Benno did set the primary language to Latvian there. And yes, you can just send directly to that email address there, but please note that sending a donation is appreciated, but it is in no way necessary nor influencial on somebody looking at reported issues.

AnthonyD
Newbie
Posts: 6
Joined: Fri Nov 08, 2013 9:33 am

Re: SFZ Release Trigger

Post by AnthonyD » Fri Jun 11, 2021 11:32 pm

Okay, I've compiled the latest version and the problem persists; however, the weird thing is that the releases work fine if I use the keyboard built into JSampler, but If I use midi in through Jack it doesn't work right. I went back to version 2.0 and the releases work properly there, so I've reverted back to that one, but I thought I would let you know what I had found so that it may help you eradicate the problem in newer versions. Best wishes!

User avatar
cuse
Developer
Posts: 366
Joined: Wed Jan 23, 2008 10:07 pm
Location: Germany

Re: SFZ Release Trigger

Post by cuse » Sat Jun 12, 2021 12:44 pm

Please note that it is not likely that someone will look into this and fix it unless somebody (e.g. you) proactively provides more details. One way would be providing a stripped down SFZ (few lines) demonstrating the issue, another way would be finding out the SVN revision that broke that feature for you.

User avatar
cuse
Developer
Posts: 366
Joined: Wed Jan 23, 2008 10:07 pm
Location: Germany

Re: SFZ Release Trigger

Post by cuse » Sat Jun 12, 2021 1:06 pm

To efficiently find the exact SVN revision that broke that feature for you, I recommend to use svn-bisect. On .deb based distros you find that tool inside the subversion-tools package. As this tool uses a bisection algorithm you only need to try out max. 10 SVN revisions to find the exact SVN revision which broke the feature. So it does not take hours or so.

Here you can find the exact SVN revisions of the individual LS releases:
http://svn.linuxsampler.org/cgi-bin/vie ... /branches/

As you said LS 2.0 works for you, whereas LS 2.1.1 does not, you would pass the two numbers 2789 3538 to svn-bisect.

[ The math behind the amount of trials required: max_trials = log2(bad_revision - good_revision) = log2(3538 - 2789) = 9.5 => max. 10 revisions to test ]

Post Reply