-
Notifications
You must be signed in to change notification settings - Fork 7
/
Copy pathSplendid Grand Piano.sfz
124 lines (107 loc) · 2.27 KB
/
Splendid Grand Piano.sfz
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
// --------------------------------------
// SFZ format v2 with ARIA extensions
// --------------------------------------
// Splendid Grand Piano
// Public Domain by AKAI
// --------------------------------------
// converted by kinwie
// string resonance by P.Eastman
// half-pedalling added by P.Eastman
// --------------------------------------
//midi cc
#define $RES 70
#define $RELEASE 72
#define $VELTRACK 99
//file-folder
#define $EXT flac
#define $DIR Data
//////////////////////////////////////////////////////////
<control>
default_path=Samples/
label_cc7=Vol
label_cc10=Pan
label_cc64=Sus.Pedal
label_cc$RES=Resonance
label_cc$RELEASE=Release
label_cc$VELTRACK=Veltrack
set_cc7=100
set_hdcc10=0.5
set_hdcc$RES=0.5
set_hdcc$RELEASE=0.35
set_hdcc$VELTRACK=1
//*******************************************************
<global>
amplitude_oncc7=100
amplitude_curvecc7=4
pan_oncc10=100
pan_curvecc10=1
ampeg_attack=0.0005
ampeg_hold=8
ampeg_hold_oncc133=-6
ampeg_decay=80
ampeg_decay_oncc133=-60
ampeg_sustain=0
ampeg_release_oncc$RELEASE=2
amp_veltrack_oncc$VELTRACK=-100
amp_veltrack_curvecc$VELTRACK=2
note_polyphony=1
off_time=0.5
// The following are to implement half pedaling.
// Adapted from https://vi-control.net/community/threads/sfz-half-pedaling.116007/#post-4943326
sustain_cc=90 //re-route default sustain pedal to CC90
ampeg_dynamic=1 //allow envelope to update on CC64 change
ampeg_release_shape=-6 //set the sustain curve dropoff curvature
ampeg_releasecc64=15 //make maximum release time 15 seconds
ampeg_release_curvecc64=11 //use the curve_index 11
// Curve for half pedal
<curve>curve_index=11
v000=0
v032=0
v042=.1
v064=.3
v072=.4
v073=1
v127=1
//===================================
<group>
group=1
locc64=65
locc$RES=1
amplitude_oncc$RES=200
#include "$DIR/Res.txt"
<group>
lovel=1
hivel=40
cutoff=1000
group_volume=0
#define $DYN PP
group_label=P$DYN
#include "$DIR/$DYN.txt"
<group>
lovel=41
hivel=67
group_volume=0
#define $DYN PP
group_label=$DYN
#include "$DIR/$DYN.txt"
<group>
lovel=68
hivel=84
group_volume=0
#define $DYN MP
group_label=$DYN
#include "$DIR/$DYN.txt"
<group>
lovel=85
hivel=100
group_volume=0
#define $DYN MF
group_label=$DYN
#include "$DIR/$DYN.txt"
<group>
lovel=101
hivel=127
group_volume=0
#define $DYN FF
group_label=$DYN
#include "$DIR/$DYN.txt"