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
|
<refentry id="linenr">
<indexterm id="IndexLinenr"><primary>linenr</primary></indexterm>
<refentryinfo><title>Signal Generators:Envelope Generators</title></refentryinfo>
<refmeta>
<refentrytitle>linenr</refentrytitle>
</refmeta>
<refnamediv>
<refname>linenr</refname>
<refpurpose>
The <emphasis>linen</emphasis> opcode extended with a final release segment.
</refpurpose>
</refnamediv>
<refsect1>
<title>Description</title>
<para>
<emphasis>linenr</emphasis> -- same as <link linkend="linen"><citetitle>linen</citetitle></link> except that the final segment is entered only on sensing a MIDI note release. The note is then extended by the decay time.
</para>
</refsect1>
<refsect1>
<title>Syntax</title>
<synopsis>ares <command>linenr</command> xamp, irise, idec, iatdec</synopsis>
<synopsis>kres <command>linenr</command> kamp, irise, idec, iatdec</synopsis>
</refsect1>
<refsect1>
<title>Initialization</title>
<para>
<emphasis>irise</emphasis> -- rise time in seconds. A zero or negative value signifies no rise modification.
</para>
<para>
<emphasis>idec</emphasis> -- decay time in seconds. Zero means no decay. An <emphasis>idec</emphasis> > <emphasis>idur</emphasis> will cause a truncated decay.
</para>
<para>
<emphasis>iatdec</emphasis> -- attenuation factor by which the closing steady state value is reduced exponentially over the decay period. This value must be positive and is normally of the order of .01. A large or excessively small value is apt to produce a cutoff which is audible. A zero or negative value is illegal.
</para>
</refsect1>
<refsect1>
<title>Performance</title>
<para>
<emphasis>kamp, xamp</emphasis> -- input amplitude signal.
</para>
<para>
<emphasis>linenr</emphasis> is unique within Csound in containing a <emphasis>note-off sensor</emphasis> and <emphasis>release time extender</emphasis>. When it senses either a score event termination or a MIDI noteoff, it will immediately extend the performance time of the current instrument by <emphasis>idec</emphasis> seconds, then execute an exponential decay towards the factor <emphasis>iatdec</emphasis>. For two or more units in an instrument, extension is by the greatest <emphasis>idec</emphasis>.
</para>
<para>
You can use other pre-made envelopes which start a release segment upon recieving a note off message, like <link linkend="linsegr"><citetitle>linsegr</citetitle></link> and <link linkend="expsegr"><citetitle>expsegr</citetitle></link>, or you can construct more complex envelopes using <link linkend="xtratim"><citetitle>xtratim</citetitle></link> and <link linkend="release"><citetitle>release</citetitle></link>. Note that you don't need to use <link linkend="xtratim"><citetitle>xtratim</citetitle></link> if you are using <emphasis>linenr</emphasis>, since the time is extended automatically.
</para>
<para>
These <quote>r</quote> units can also be modified by MIDI noteoff velocities (see veloffs).
</para>
</refsect1>
<refsect1>
<title>See Also</title>
<para>
<link linkend="linsegr"><citetitle>linsegr</citetitle></link>,
<link linkend="expsegr"><citetitle>expsegr</citetitle></link>,
<link linkend="envlpxr"><citetitle>envlpxr</citetitle></link>,
<link linkend="mxadsr"><citetitle>mxadsr</citetitle></link>,
<link linkend="madsr"><citetitle>madsr</citetitle></link>,
<link linkend="envlpx"><citetitle>envlpx</citetitle></link>,
<link linkend="linen"><citetitle>linen</citetitle></link>,
<link linkend="xtratim"><citetitle>xtratim</citetitle></link>
</para>
</refsect1>
</refentry>
|