1 |
schoenebeck |
2936 |
<html> |
2 |
|
|
<head> |
3 |
|
|
<meta name="author" content="Christian Schoenebeck"> |
4 |
|
|
<title>change_reso() function</title> |
5 |
|
|
<meta name="description" content="Modifies the filter resonance of voices of a particular note."> |
6 |
|
|
</head> |
7 |
|
|
<body> |
8 |
|
|
<h1>change_reso()</h1> |
9 |
|
|
<p> |
10 |
|
|
This function can be used to modify the filter resonance of active |
11 |
|
|
voices during their entire life time. You need to pass the |
12 |
|
|
note ID of the voices you want to alter. This function will change the |
13 |
|
|
resonance of all active voices associated with the requested note. So if you |
14 |
|
|
are using a layered instrument patch, then it will change the filter resonance of |
15 |
|
|
all layers. |
16 |
|
|
</p> |
17 |
|
|
<p> |
18 |
|
|
The resonance changes set by calling this function are always applied relatively to |
19 |
|
|
the resonance calculated by the synthesis model and sampler format. That means |
20 |
|
|
the various sources of resonance factors like Filter Envelopes, |
21 |
|
|
Filter LFOs and other resonance factors that may be defined by the |
22 |
|
|
instrument patch, are always processed and calculated for the voices first, |
23 |
|
|
and the final resonance applied is always a relative combination of all those |
24 |
|
|
factors and the one set with this function call. |
25 |
|
|
Or in other words: you cannot replace the resonance set by other synthesis |
26 |
|
|
sources with this function. |
27 |
|
|
</p> |
28 |
|
|
|
29 |
|
|
<note class="important"> |
30 |
|
|
There will only be audible changes with this function if a filter is |
31 |
|
|
actually already turned on (i.e. by enabling it in the instrument patch) |
32 |
|
|
and only if the filter is not closed by other sources (i.e. cutoff frequency |
33 |
|
|
should be set open in the instrument patch). |
34 |
|
|
</note> |
35 |
|
|
|
36 |
|
|
<note> |
37 |
|
|
Release Trigger Samples: In case the affected voices cause release trigger |
38 |
|
|
samples to be spawned later on, the resonance of those release trigger voices |
39 |
|
|
will not be affected by this function at all. So if you need to control the |
40 |
|
|
resonance of release trigger samples by script, then you might rather also trigger |
41 |
|
|
those release trigger samples by script with <code lang="nksp">play_note()</code> |
42 |
|
|
instead of using the sampler format's internal support for release trigger samples. |
43 |
|
|
</note> |
44 |
|
|
|
45 |
|
|
<h3>Function Prototype</h3> |
46 |
|
|
<p/> |
47 |
|
|
<code lang="nksp"> |
48 |
|
|
change_reso(??note??, ??resonance??) |
49 |
|
|
</code> |
50 |
|
|
|
51 |
|
|
<h3>Arguments</h3> |
52 |
|
|
<table> |
53 |
|
|
<tr> |
54 |
|
|
<th>Argument Name</th> <th>Data Type</th> <th>Description</th> |
55 |
|
|
</tr> |
56 |
|
|
<tr> |
57 |
|
|
<td><code>??note??</code></td> |
58 |
schoenebeck |
2944 |
<td>Note ID Number or Note ID Array</td> |
59 |
schoenebeck |
2936 |
<td>All voices of this note will be modified.<br> |
60 |
|
|
[required]</td> |
61 |
|
|
</tr> |
62 |
|
|
<tr> |
63 |
|
|
<td><code>??resonance??</code></td> |
64 |
|
|
<td>Integer Number</td> |
65 |
schoenebeck |
3233 |
<td>New Resonance Value (abstract absolute value between <code>0</code> and <code>1000000</code>).<br> |
66 |
schoenebeck |
2936 |
[required]</td> |
67 |
|
|
</tr> |
68 |
|
|
</table> |
69 |
|
|
|
70 |
|
|
<h3>Return Value</h3> |
71 |
|
|
<p>None.</p> |
72 |
|
|
|
73 |
|
|
<h3>Examples</h3> |
74 |
|
|
<p>None yet.<p> |
75 |
|
|
|
76 |
schoenebeck |
3196 |
<h3>Availability</h3> |
77 |
schoenebeck |
2936 |
<p>Since LinuxSampler 2.0.0.svn12.<p> |
78 |
|
|
|
79 |
|
|
<note> |
80 |
|
|
This function exists only with NKSP, it is not available with KSP, because |
81 |
|
|
KSP does not allow to change filter parameters on note level. |
82 |
|
|
</note> |
83 |
|
|
|
84 |
|
|
</body> |
85 |
|
|
</html> |