summaryrefslogtreecommitdiff
path: root/scoregens
diff options
context:
space:
mode:
authorFelipe Sateler <fsateler@debian.org>2016-07-16 16:40:22 -0400
committerFelipe Sateler <fsateler@debian.org>2016-07-16 16:40:22 -0400
commit9ed440b868c38b05db0f1997170c231db103c850 (patch)
tree253db08579441893803bd57ac0054ff66b3b2465 /scoregens
parentbcf06a42deb371baf3deb9f4addb474b08273120 (diff)
Imported Upstream version 6.07.0~dfsg
Diffstat (limited to 'scoregens')
-rw-r--r--scoregens/gen03.xml4
-rw-r--r--scoregens/gen05.xml11
-rw-r--r--scoregens/gen12.xml4
-rw-r--r--scoregens/gen13.xml4
-rw-r--r--scoregens/gen14.xml4
-rw-r--r--scoregens/gen16.xml2
-rw-r--r--scoregens/gen23.xml11
-rw-r--r--scoregens/gen24.xml2
-rw-r--r--scoregens/gen25.xml4
-rw-r--r--scoregens/gen27.xml4
-rw-r--r--scoregens/gen28.xml2
-rw-r--r--scoregens/gen32.xml2
-rw-r--r--scoregens/gen33.xml2
-rw-r--r--scoregens/gen34.xml2
-rw-r--r--scoregens/gen40.xml4
-rw-r--r--scoregens/gen41.xml4
-rw-r--r--scoregens/gen42.xml4
-rw-r--r--scoregens/gen52.xml4
-rw-r--r--scoregens/genexp.xml2
-rw-r--r--scoregens/genpadsynth.xml128
-rw-r--r--scoregens/gensone.xml2
-rw-r--r--scoregens/gentanh.xml2
-rw-r--r--scoregens/top.xml10
-rw-r--r--scoregens/y.xml67
24 files changed, 250 insertions, 35 deletions
diff --git a/scoregens/gen03.xml b/scoregens/gen03.xml
index e17fc3a..5551e0f 100644
--- a/scoregens/gen03.xml
+++ b/scoregens/gen03.xml
@@ -71,9 +71,9 @@
<refsect1>
<title>Examples</title>
<para>
- Here is an example of the GEN03 opcode. It uses the file <ulink url="examples/gen03.csd"><citetitle>gen03.csd</citetitle></ulink>.
+ Here is an example of the GEN03 generator. It uses the file <ulink url="examples/gen03.csd"><citetitle>gen03.csd</citetitle></ulink>.
<example>
- <title>Example of the GEN03 opcode.</title>
+ <title>Example of the GEN03 generator.</title>
<para>See the sections <link linkend="UsingRealTime"><citetitle>Real-time Audio</citetitle></link> and <link linkend="CommandFlags"><citetitle>Command Line Flags</citetitle></link> for more information on using command line flags.</para>
<xi:include href="examples-xml/gen03.csd.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
</example>
diff --git a/scoregens/gen05.xml b/scoregens/gen05.xml
index 96fe511..ba53984 100644
--- a/scoregens/gen05.xml
+++ b/scoregens/gen05.xml
@@ -35,7 +35,16 @@
</para>
<para>
- <emphasis>n1, n2</emphasis>, etc. -- length of segment (no. of storage locations), in even-numbered pfields. Cannot be negative, but a zero is meaningful for specifying discontinuous waveforms. The sum <emphasis>n1</emphasis> + <emphasis>n2</emphasis> + .... will normally equal <emphasis>size</emphasis> for fully specified functions. If the sum is smaller, the function locations not included will be set to zero; if the sum is greater, only the first <emphasis>size</emphasis> locations will be stored.
+ <emphasis>n1, n2</emphasis>, etc. -- length of segment (no. of
+ storage locations), in even-numbered pfields. Cannot be
+ negative, but a zero is meaningful for specifying discontinuous
+ waveforms. The sum <emphasis>n1</emphasis> +
+ <emphasis>n2</emphasis> + .... will normally equal
+ <emphasis>size</emphasis> for fully specified functions. If the
+ sum is smaller, the function locations not included will be set
+ to zero; if the sum is greater, only the first
+ <emphasis>size</emphasis> locations will be stored. Note that
+ the values are rounded to integers before use.
</para>
<note>
diff --git a/scoregens/gen12.xml b/scoregens/gen12.xml
index 34327b1..8917da9 100644
--- a/scoregens/gen12.xml
+++ b/scoregens/gen12.xml
@@ -57,9 +57,9 @@
<refsect1>
<title>Examples</title>
<para>
- Here is an example of the GEN12 opcode. It uses the file <ulink url="examples/gen12.csd"><citetitle>gen12.csd</citetitle></ulink>.
+ Here is an example of the GEN12 generator. It uses the file <ulink url="examples/gen12.csd"><citetitle>gen12.csd</citetitle></ulink>.
<example>
- <title>Example of the GEN12 opcode.</title>
+ <title>Example of the GEN12 generator.</title>
<para>See the sections <link linkend="UsingRealTime"><citetitle>Real-time Audio</citetitle></link> and <link linkend="CommandFlags"><citetitle>Command Line Flags</citetitle></link> for more information on using command line flags.</para>
<xi:include href="examples-xml/gen12.csd.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
</example>
diff --git a/scoregens/gen13.xml b/scoregens/gen13.xml
index e4b98d6..1515aeb 100644
--- a/scoregens/gen13.xml
+++ b/scoregens/gen13.xml
@@ -56,9 +56,9 @@ xamp * int(size/2)/xint
<refsect1>
<title>Examples</title>
<para>
- Here is an example of the GEN13 opcode. It uses the file <ulink url="examples/gen13.csd"><citetitle>gen13.csd</citetitle></ulink>.
+ Here is an example of the GEN13 generator. It uses the file <ulink url="examples/gen13.csd"><citetitle>gen13.csd</citetitle></ulink>.
<example>
- <title>Example of the GEN13 opcode.</title>
+ <title>Example of the GEN13 generator.</title>
<para>See the sections <link linkend="UsingRealTime"><citetitle>Real-time Audio</citetitle></link> and <link linkend="CommandFlags"><citetitle>Command Line Flags</citetitle></link> for more information on using command line flags.</para>
<xi:include href="examples-xml/gen13.csd.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
</example>
diff --git a/scoregens/gen14.xml b/scoregens/gen14.xml
index 8b63026..14c2735 100644
--- a/scoregens/gen14.xml
+++ b/scoregens/gen14.xml
@@ -71,9 +71,9 @@ xamp * int(size/2)/xint
<refsect1>
<title>Examples</title>
<para>
- Here is an example of the GEN14 opcode. It uses the file <ulink url="examples/gen14.csd"><citetitle>gen14.csd</citetitle></ulink>.
+ Here is an example of the GEN14 generator. It uses the file <ulink url="examples/gen14.csd"><citetitle>gen14.csd</citetitle></ulink>.
<example>
- <title>Example of the GEN14 opcode.</title>
+ <title>Example of the GEN14 generator.</title>
<para>See the sections <link linkend="UsingRealTime"><citetitle>Real-time Audio</citetitle></link> and <link linkend="CommandFlags"><citetitle>Command Line Flags</citetitle></link> for more information on using command line flags.</para>
<xi:include href="examples-xml/gen14.csd.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
</example>
diff --git a/scoregens/gen16.xml b/scoregens/gen16.xml
index e094f03..1babac0 100644
--- a/scoregens/gen16.xml
+++ b/scoregens/gen16.xml
@@ -34,7 +34,7 @@
</para>
<note>
The end value is only reached when the table length is power-of-2 plus 1.
- (This length is crucial for use with the tab opcode.)
+ (This length is crucial for use with the tab generator.)
</note>
<para>
<emphasis>beg</emphasis> -- starting value
diff --git a/scoregens/gen23.xml b/scoregens/gen23.xml
index 6788879..f87c07e 100644
--- a/scoregens/gen23.xml
+++ b/scoregens/gen23.xml
@@ -1,4 +1,4 @@
-
+1
<refentry id="GEN23">
<indexterm id="IndexGEN23"><primary>GEN23</primary></indexterm>
<refmeta>
@@ -27,7 +27,7 @@
<refsect1>
<title>Initialization</title>
<para>
- <emphasis>&quot;filename.txt&quot;</emphasis> -- numeric values contained in &quot;filename.txt&quot; (which indicates the complete pathname of the character file to be read), can be separated by spaces, tabs, newline characters or commas. Also, words that contains non-numeric characters can be used as comments since they are ignored.
+ <emphasis>&quot;filename.txt&quot;</emphasis> -- numeric values contained in &quot;filename.txt&quot; (which indicates the complete pathname of the character file to be read), can be separated by spaces, tabs, newline characters or commas.
</para>
<para>
@@ -37,7 +37,8 @@
<note>
<title>Note</title>
<para>
- All characters following ';' or '#' (comment) are ignored until next line (numbers too).
+ All characters following ';', '#' (comment) or '&lt;' (XML
+ tag from version 6.04) are ignored until next line (numbers too).
</para>
</note>
</refsect1>
@@ -45,9 +46,9 @@
<refsect1>
<title>Examples</title>
<para>
- Here is an example of the GEN23 opcode. It uses the file <ulink url="examples/gen23.csd"><citetitle>gen23.csd</citetitle></ulink> and <ulink url="examples/spectrum.txt"> <citetitle>spectrum.txt</citetitle></ulink>.
+ Here is an example of the GEN23 generator. It uses the file <ulink url="examples/gen23.csd"><citetitle>gen23.csd</citetitle></ulink> and <ulink url="examples/spectrum.txt"> <citetitle>spectrum.txt</citetitle></ulink>.
<example>
- <title>Example of the GEN23 opcode.</title>
+ <title>Example of the GEN23 generator.</title>
<para>See the sections <link linkend="UsingRealTime"><citetitle>Real-time Audio</citetitle></link> and <link linkend="CommandFlags"><citetitle>Command Line Flags</citetitle></link> for more information on using command line flags.</para>
<xi:include href="examples-xml/gen23.csd.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
</example>
diff --git a/scoregens/gen24.xml b/scoregens/gen24.xml
index 973e89f..14f4ab9 100644
--- a/scoregens/gen24.xml
+++ b/scoregens/gen24.xml
@@ -52,7 +52,7 @@ real starting from zero.
<para>
Here is an example of the GEN24 opcode. It uses the file <ulink url="examples/gen24.csd"><citetitle>gen24.csd</citetitle></ulink>.
<example>
- <title>Example of the GEN24 opcode.</title>
+ <title>Example of the GEN24 generator.</title>
<para>See the sections <link linkend="UsingRealTime"><citetitle>Real-time Audio</citetitle></link> and <link linkend="CommandFlags"><citetitle>Command Line Flags</citetitle></link> for more information on using command line flags.</para>
<xi:include href="examples-xml/gen24.csd.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
</example>
diff --git a/scoregens/gen25.xml b/scoregens/gen25.xml
index e2c5aaa..880e436 100644
--- a/scoregens/gen25.xml
+++ b/scoregens/gen25.xml
@@ -49,9 +49,9 @@
<refsect1>
<title>Examples</title>
<para>
- Here is an example of the GEN25 opcode. It uses the file <ulink url="examples/gen25.csd"><citetitle>gen25.csd</citetitle></ulink>.
+ Here is an example of the GEN25 generator. It uses the file <ulink url="examples/gen25.csd"><citetitle>gen25.csd</citetitle></ulink>.
<example>
- <title>Example of the GEN25 opcode.</title>
+ <title>Example of the GEN25 generator.</title>
<para>See the sections <link linkend="UsingRealTime"><citetitle>Real-time Audio</citetitle></link> and <link linkend="CommandFlags"><citetitle>Command Line Flags</citetitle></link> for more information on using command line flags.</para>
<xi:include href="examples-xml/gen25.csd.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
</example>
diff --git a/scoregens/gen27.xml b/scoregens/gen27.xml
index 13e18c2..749e69c 100644
--- a/scoregens/gen27.xml
+++ b/scoregens/gen27.xml
@@ -49,9 +49,9 @@
<refsect1>
<title>Examples</title>
<para>
- Here is an example of the GEN27 opcode. It uses the file <ulink url="examples/gen27.csd"><citetitle>gen27.csd</citetitle></ulink>.
+ Here is an example of the GEN27 generator. It uses the file <ulink url="examples/gen27.csd"><citetitle>gen27.csd</citetitle></ulink>.
<example>
- <title>Example of the GEN27 opcode.</title>
+ <title>Example of the GEN27 generator.</title>
<para>See the sections <link linkend="UsingRealTime"><citetitle>Real-time Audio</citetitle></link> and <link linkend="CommandFlags"><citetitle>Command Line Flags</citetitle></link> for more information on using command line flags.</para>
<xi:include href="examples-xml/gen27.csd.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
</example>
diff --git a/scoregens/gen28.xml b/scoregens/gen28.xml
index 6d1f990..ac2c560 100644
--- a/scoregens/gen28.xml
+++ b/scoregens/gen28.xml
@@ -88,7 +88,7 @@ time3 X3 Y3
<para>
Here is an example of the GEN28 routine. It uses the file <ulink url="examples/gen28.csd"><citetitle>gen28.csd</citetitle></ulink>.
<example>
- <title>Example of the gen28 opcode.</title>
+ <title>Example of the gen28 generator.</title>
<para>See the sections <link linkend="UsingRealTime"><citetitle>Real-time Audio</citetitle></link> and <link linkend="CommandFlags"><citetitle>Command Line Flags</citetitle></link> for more information on using command line flags.</para>
<xi:include href="examples-xml/gen28.csd.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
</example>
diff --git a/scoregens/gen32.xml b/scoregens/gen32.xml
index 2f2afaf..13663db 100644
--- a/scoregens/gen32.xml
+++ b/scoregens/gen32.xml
@@ -48,7 +48,7 @@
<para>
Here is an example of the GEN32 routine. It uses the file <ulink url="examples/gen32.csd"><citetitle>gen32.csd</citetitle></ulink>.
<example>
- <title>Example of the gen32 opcode.</title>
+ <title>Example of the gen32 generator.</title>
<para>See the sections <link linkend="UsingRealTime"><citetitle>Real-time Audio</citetitle></link> and <link linkend="CommandFlags"><citetitle>Command Line Flags</citetitle></link> for more information on using command line flags.</para>
<xi:include href="examples-xml/gen32.csd.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
</example>
diff --git a/scoregens/gen33.xml b/scoregens/gen33.xml
index adfd6e8..50cdbc8 100644
--- a/scoregens/gen33.xml
+++ b/scoregens/gen33.xml
@@ -69,7 +69,7 @@ stra, pna, phsa, strb, pnb, phsb, ...
<para>
Here is an example of the GEN33 routine. It uses the file <ulink url="examples/gen33.csd"><citetitle>gen33.csd</citetitle></ulink>.
<example>
- <title>Example of the gen33 opcode.</title>
+ <title>Example of the gen33 generator.</title>
<para>See the sections <link linkend="UsingRealTime"><citetitle>Real-time Audio</citetitle></link> and <link linkend="CommandFlags"><citetitle>Command Line Flags</citetitle></link> for more information on using command line flags.</para>
<xi:include href="examples-xml/gen33.csd.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
</example>
diff --git a/scoregens/gen34.xml b/scoregens/gen34.xml
index 0a170b6..a37a157 100644
--- a/scoregens/gen34.xml
+++ b/scoregens/gen34.xml
@@ -70,7 +70,7 @@ stra, pna, phsa, strb, pnb, phsb, ...
<para>
Here is an example of the GEN34 routine. It uses the file <ulink url="examples/gen34.csd"><citetitle>gen34.csd</citetitle></ulink>.
<example>
- <title>Example of the gen34 opcode.</title>
+ <title>Example of the gen34 generator.</title>
<para>See the sections <link linkend="UsingRealTime"><citetitle>Real-time Audio</citetitle></link> and <link linkend="CommandFlags"><citetitle>Command Line Flags</citetitle></link> for more information on using command line flags.</para>
<xi:include href="examples-xml/gen34.csd.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
</example>
diff --git a/scoregens/gen40.xml b/scoregens/gen40.xml
index 5a380bf..7584c6e 100644
--- a/scoregens/gen40.xml
+++ b/scoregens/gen40.xml
@@ -42,9 +42,9 @@
<refsect1>
<title>Examples</title>
<para>
- Here is an example of the GEN40 opcode. It uses the file <ulink url="examples/gen40.csd"><citetitle>gen40.csd</citetitle></ulink>.
+ Here is an example of the GEN40 generator. It uses the file <ulink url="examples/gen40.csd"><citetitle>gen40.csd</citetitle></ulink>.
<example>
- <title>Example of the GEN40 opcode.</title>
+ <title>Example of the GEN40 generator.</title>
<para>See the sections <link linkend="UsingRealTime"><citetitle>Real-time Audio</citetitle></link> and <link linkend="CommandFlags"><citetitle>Command Line Flags</citetitle></link> for more information on using command line flags.</para>
<xi:include href="examples-xml/gen40.csd.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
</example>
diff --git a/scoregens/gen41.xml b/scoregens/gen41.xml
index c0f6b30..fd932b3 100644
--- a/scoregens/gen41.xml
+++ b/scoregens/gen41.xml
@@ -38,9 +38,9 @@
<refsect1>
<title>Examples</title>
<para>
- Here is an example of the GEN41 opcode. It uses the file <ulink url="examples/gen41.csd"><citetitle>gen41.csd</citetitle></ulink>.
+ Here is an example of the GEN41 generator. It uses the file <ulink url="examples/gen41.csd"><citetitle>gen41.csd</citetitle></ulink>.
<example>
- <title>Example of the GEN41 opcode.</title>
+ <title>Example of the GEN41 generator.</title>
<para>See the sections <link linkend="UsingRealTime"><citetitle>Real-time Audio</citetitle></link> and <link linkend="CommandFlags"><citetitle>Command Line Flags</citetitle></link> for more information on using command line flags.</para>
<xi:include href="examples-xml/gen41.csd.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
</example>
diff --git a/scoregens/gen42.xml b/scoregens/gen42.xml
index bd7f99a..2ff8b87 100644
--- a/scoregens/gen42.xml
+++ b/scoregens/gen42.xml
@@ -38,9 +38,9 @@
<refsect1>
<title>Examples</title>
<para>
- Here is an example of the GEN42 opcode. It uses the file <ulink url="examples/gen42.csd"><citetitle>gen42.csd</citetitle></ulink>.
+ Here is an example of the GEN42 generator. It uses the file <ulink url="examples/gen42.csd"><citetitle>gen42.csd</citetitle></ulink>.
<example>
- <title>Example of the GEN42 opcode.</title>
+ <title>Example of the GEN42 generator.</title>
<para>See the sections <link linkend="UsingRealTime"><citetitle>Real-time Audio</citetitle></link> and <link linkend="CommandFlags"><citetitle>Command Line Flags</citetitle></link> for more information on using command line flags.</para>
<xi:include href="examples-xml/gen42.csd.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
</example>
diff --git a/scoregens/gen52.xml b/scoregens/gen52.xml
index 584837a..bda7cd7 100644
--- a/scoregens/gen52.xml
+++ b/scoregens/gen52.xml
@@ -51,9 +51,9 @@
<emphasis role="comment">; extract second channel from table 3</emphasis>
<emphasis role="stamnt">f</emphasis> 5 0 16384 -52 1 3 1 2</programlisting>
<para>
- Here is a complete example of the GEN52 opcode. It uses the file <ulink url="examples/gen52.csd"><citetitle>gen52.csd</citetitle></ulink>.
+ Here is a complete example of the GEN52 generator. It uses the file <ulink url="examples/gen52.csd"><citetitle>gen52.csd</citetitle></ulink>.
<example>
- <title>Example of the GEN52 opcode.</title>
+ <title>Example of the GEN52 generator.</title>
<para>See the sections <link linkend="UsingRealTime"><citetitle>Real-time Audio</citetitle></link> and <link linkend="CommandFlags"><citetitle>Command Line Flags</citetitle></link> for more information on using command line flags.</para>
<xi:include href="examples-xml/gen52.csd.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
</example>
diff --git a/scoregens/genexp.xml b/scoregens/genexp.xml
index 23d2dea..4d07572 100644
--- a/scoregens/genexp.xml
+++ b/scoregens/genexp.xml
@@ -91,7 +91,7 @@ Creates an ftable with values of the exp function.
<link linkend="GENexp"><citetitle>GENexp</citetitle></link> and
<link linkend="GENsone"><citetitle>GENsone</citetitle></link>.
</para>
- <para> More information on this routine: <ulink url="http://www.csounds.com/journal/issue11/distortionSynthesis.html"><citetitle>http://www.csounds.com/journal/issue11/distortionSynthesis</citetitle></ulink>, written by Victor Lazzarini</para>
+ <para> More information on this routine: <ulink url="http://www.csoundjournal.com/issue11/distortionSynthesis.html"><citetitle>http://www.csoundjournal.com/issue11/distortionSynthesis.html</citetitle></ulink>, written by Victor Lazzarini</para>
</refsect1>
<refsect1>
diff --git a/scoregens/genpadsynth.xml b/scoregens/genpadsynth.xml
new file mode 100644
index 0000000..1824037
--- /dev/null
+++ b/scoregens/genpadsynth.xml
@@ -0,0 +1,128 @@
+
+<refentry id="GENpadsynth">
+ <indexterm id="IndexGENpadsynth"><primary>GENpadsynth</primary></indexterm>
+ <refmeta>
+ <refentrytitle>GENpadsynth</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>"padsynth"</refname>
+ <refpurpose>
+ Generate a sample table using the padsynth algorithm.
+ </refpurpose>
+ </refnamediv>
+
+ <refsect1>
+ <title>Description</title>
+ <para>
+Paul Octavian Nasca's "padsynth algorithm" adds bandwidth to each partial of a
+periodic weaveform. This bandwidth is heard as color, movement, and additional
+richness of sound.
+ </para>
+ <para>
+First, the waveform is defined by the user as a series of harmonic partials.
+Then, bandwidth is added by independently spreading each partial of the
+original waveform from a single frequency across neighboring frequencies,
+according to a "profile" function: a Gaussian curve, a square, or a rising
+and then falling expontential.
+ </para>
+ <para>
+The partials of the original waveform may be considered to be samples in a
+discrete Fourier transform of the waveform. Normally there is not an exact
+one-to-one correspondence between the frequencies of the samples (frequency
+bins) of the discrete Fourier transform with the frequencies of the partials
+of the original waveform, because any frequency in the inverse of the discrete
+Fourier transform might be synthesized by interference between any number of
+bins. However, the padsynth algorithm uses a simple trick to create this
+correspondence. The discrete Fourier transform is simply made so large that
+the frequency of any partial of the original waveform will be very close to
+the frequency of the corresponding bin in the Fourier transform. Once this
+correspondence has been created, the bandwidth profile can be applied by
+centering it over the frequency bin of the original partial, scaling the
+profile by the bandwidth, and simply multiplying the original partial by each
+sample of the profile and adding the product to the corresponding bin of the
+Fourier transform.
+ </para>
+ <para>
+As the frequencies of the partials increase, their bandwidth may optionally
+become wider or (less often) narrower.
+ </para>
+ <para>
+Once each partial has been spread out in this way, the discrete Fourier
+transform may be given random phases, and is then simply inverted to
+synthesize the desired waveform, which may be used as the wavetable for
+a digital oscillator.
+ </para>
+ <para>
+N.B.: The size of the function table does NOT necessarily reflect one periodic
+cycle of the waveform that it contains. The fundamental frequency must be used
+to generate the desired pitch from an oscillator using the function table, e.g.
+ </para>
+ <code>
+ oscillator_hz = desired_hz * (sr / padsynth_size / fundamental_hz)
+ </code>
+ </refsect1>
+ <refsect1>
+ <title>Syntax</title>
+ <synopsis><command>f</command> # score_time table_size "padsynth" fundamental_frequency
+ partial_bandwidth partial_scale harmonic_stretch profile_shape profile_shape_parameter
+ partial1_amplitude [partial2_amplitude ...]</synopsis>
+ </refsect1>
+
+ <refsect1>
+ <title>Initialization</title>
+ <para>
+ <emphasis>table_size</emphasis> -- Function table size. Should be large,
+ e.g. 2^18 == 262144. Must be a power of 2 or power-of-2 plus 1 (see <link
+ linkend="f"><citetitle>f statement</citetitle></link>).
+ </para>
+
+ <para>
+ <emphasis>fundamental_frequency</emphasis> -- Fundamental frequency for
+ the generated table.
+ </para>
+ <para>
+ <emphasis>partial_bandwidth</emphasis> -- Bandwidth of each partial in cents.
+ </para>
+ <para>
+ <emphasis>partial_scale</emphasis> -- Scaling factor for bandwidth of each partial (log of increase/decrease
+ with partial frequency, 0 is no stretch or shrink).
+ </para>
+ <para>
+ <emphasis>harmonic_stretch</emphasis> -- Harmonic stretch/shrink for all partials (1 is harmonic).
+ </para>
+ <para>
+ <emphasis>profile_shape</emphasis> -- Number specifying the shape of the bandwidth profile:
+ 1 = Gaussian, 2 = square, and 3 = exponential
+ </para>
+ <para>
+ <emphasis>profile_shape_parameter</emphasis> -- Parameter passed to the function generating the profile shape, e.g. exponent.
+ </para>
+ <para>
+ <emphasis>partial1_amplitude, partial2_amplitude, ...</emphasis> -- Amplitudes for each partial (may be zero).
+ </para>
+
+ </refsect1>
+
+ <refsect1>
+ <title>Examples</title>
+ <para>
+ Here is an example of the GENpadsynth routine. It uses the files <ulink url="examples/padsynth_gen.csd"><citetitle>padsynth_gen.csd</citetitle></ulink>.
+ <example>
+ <title>An example of the GENpadsynth routine.</title>
+ <xi:include href="examples-xml/padsynth_gen.csd.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
+ </example>
+ </para>
+ </refsect1>
+
+ <refsect1>
+ <title>See Also</title>
+ <para> More information on Padsynth: <ulink url="www.paulnasca.com/algorithms-created-by-me"><citetitle>www.paulnasca.com/algorithms-created-by-me</citetitle></ulink></para>
+ </refsect1>
+
+ <refsect1>
+ <title>Credits</title>
+ <para>Written by &namemichael;</para>
+ <para>New in version 6.05</para>
+ </refsect1>
+</refentry>
diff --git a/scoregens/gensone.xml b/scoregens/gensone.xml
index 6be66aa..296d395 100644
--- a/scoregens/gensone.xml
+++ b/scoregens/gensone.xml
@@ -85,6 +85,6 @@
<refsect1>
<title>Credits</title>
- <para>Written by &namevictor;</para>
+ <para>Written by &namejohn;</para>
</refsect1>
</refentry>
diff --git a/scoregens/gentanh.xml b/scoregens/gentanh.xml
index b91f407..f925932 100644
--- a/scoregens/gentanh.xml
+++ b/scoregens/gentanh.xml
@@ -103,7 +103,7 @@
<para>
<link linkend="GENexp"><citetitle>GENexp</citetitle></link> and
<link linkend="GENsone"><citetitle>GENsone</citetitle></link>.
- <para> More information on this routine: <ulink url="http://www.csounds.com/journal/issue11/distortionSynthesis.html"><citetitle>http://www.csounds.com/journal/issue11/distortionSynthesis</citetitle></ulink>, written by Victor Lazzarini</para>
+ <para> More information on this routine: <ulink url="http://www.csoundjournal.com/issue11/distortionSynthesis.html"><citetitle>http://www.csoundjournal.com/issue11/distortionSynthesis.html</citetitle></ulink>, written by Victor Lazzarini</para>
</para>
</refsect1>
diff --git a/scoregens/top.xml b/scoregens/top.xml
index 313dd3b..aa1de5b 100644
--- a/scoregens/top.xml
+++ b/scoregens/top.xml
@@ -47,6 +47,10 @@
<link linkend="x"><citetitle>x</citetitle></link> - Skip the rest of the current section
</para></listitem>
<listitem><para>
+ <link linkend="y"><citetitle>y</citetitle></link> - Set seed
+ for random numbers, either from p1 or, if omitted, the clock
+ </para></listitem>
+ <listitem><para>
<link linkend="leftbrace"><citetitle>{</citetitle></link> - Begins a non-sectional, nestable loop
</para></listitem>
<listitem><para>
@@ -69,6 +73,7 @@
&scoregenst;
&scoregensv;
&scoregensx;
+ &scoregensy;
&scoregensleftbrace;
&scoregensrightbrace;
@@ -273,6 +278,10 @@
<simpara><link linkend="GENwave"><citetitle>"wave"</citetitle></link>
- fills a table from a wavelet transform.</simpara>
</listitem>
+ <listitem>
+ <simpara><link linkend="GENpadsynth"><citetitle>"padsynth"</citetitle></link>
+ - fills a table using the padsynth algorithm.</simpara>
+ </listitem>
</itemizedlist>
</section>
&scoregensgen01;
@@ -318,4 +327,5 @@
&scoregenssone;
&scoregensfarey;
&scoregenswave;
+ &scoregenspadsynth;
</chapter>
diff --git a/scoregens/y.xml b/scoregens/y.xml
new file mode 100644
index 0000000..d62e2de
--- /dev/null
+++ b/scoregens/y.xml
@@ -0,0 +1,67 @@
+
+<refentry id="y">
+ <indexterm id="IndexYStatement"><primary>y statement</primary></indexterm>
+ <indexterm id="IndexSeedStatement"><primary>seed statement</primary></indexterm>
+ <refmeta>
+ <refentrytitle>y Statement (or Seed Statement)</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>a</refname>
+ <refpurpose>
+ Set seed for random numbers.
+ </refpurpose>
+ </refnamediv>
+
+ <refsect1>
+ <title>Description</title>
+ <para>
+ Set seed for random numbers, either from p1 or, if omitted, the clock.
+ </para>
+ </refsect1>
+
+ <refsect1>
+ <title>Syntax</title>
+ <synopsis><command>y</command> [p1]</synopsis>
+ </refsect1>
+
+ <refsect1>
+ <title>Initialization</title>
+ <para>
+ <emphasis>p1</emphasis> -- An integer value between 0 and 2<superscript>32</superscript>
+ used as a new seed for random numbers. If omitted, the system clock value will be used instead.
+ </para>
+ </refsect1>
+
+ <refsect1>
+ <title>Performance</title>
+ <para>
+ The tilde symbol ˜ can be used in an expression wherever a number is permissible
+ to use. Each ˜ will evaluate to a random value between zero (0) and one (1).
+ If there is no y statement in the score, the pseudo-random generator will yield
+ the same numbers in each performance. If a fixed seed is given, a different
+ predictable series of pseudo-random numbers will be generated from this seed.
+ If a y statement is used without p1, the system clock will be used as a seed,
+ yielding a different series of pseudo-random numbers for each performance.
+ </para>
+ </refsect1>
+
+ <refsect1>
+ <title>Examples</title>
+ <para>
+ Here is an example of the y statement. It uses the file <ulink url="examples/y_statement.csd"><citetitle>y_statement.csd</citetitle></ulink>.
+ <example>
+ <title>Example of the y statement.</title>
+ <xi:include href="examples-xml/y_statement.csd.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
+ </example>
+ Each time this example is run, different values between 1 and 10 will be displayed.
+ The seed used will be displayed as well.
+ </para>
+ </refsect1>
+
+ <refsect1>
+ <title>Credits</title>
+ <para>Author: &namejohn;, 2014</para>
+ <para>New in version 6.03</para>
+ </refsect1>
+</refentry>