summaryrefslogtreecommitdiff
path: root/opcodes/gendy.xml
diff options
context:
space:
mode:
Diffstat (limited to 'opcodes/gendy.xml')
-rw-r--r--opcodes/gendy.xml171
1 files changed, 171 insertions, 0 deletions
diff --git a/opcodes/gendy.xml b/opcodes/gendy.xml
new file mode 100644
index 0000000..613842f
--- /dev/null
+++ b/opcodes/gendy.xml
@@ -0,0 +1,171 @@
+<refentry id="gendy">
+ <indexterm id="IndexGendy"><primary>gendy</primary></indexterm>
+ <refentryinfo><title>Signal Generators:Models and Emulations</title></refentryinfo>
+ <refmeta>
+ <refentrytitle>gendy</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>gendy</refname>
+ <refpurpose>
+ Dynamic stochastic approach to waveform synthesis conceived by Iannis Xenakis.
+ </refpurpose>
+ </refnamediv>
+
+ <refsect1>
+ <title>Description</title>
+ <para>
+ Implementation of the <emphasis>Génération Dynamique Stochastique</emphasis>
+ (GENDYN), a dynamic stochastic approach to waveform synthesis conceived
+ by Iannis Xenakis.
+ </para>
+ </refsect1>
+
+ <refsect1>
+ <title>Syntax</title>
+ <synopsis>ares <command>gendy</command> kamp, kampdist, kdurdist, kadpar, kddpar, kminfreq, kmaxfreq, \
+ kampscl, kdurscl [, initcps] [, knum]</synopsis>
+ <synopsis>kres <command>gendy</command> kamp, kampdist, kdurdist, kadpar, kddpar, kminfreq, kmaxfreq, \
+ kampscl, kdurscl [, initcps] [, knum]</synopsis>
+ </refsect1>
+
+ <refsect1>
+ <title>Initialization</title>
+ <para>
+ <emphasis>initcps</emphasis> (optional, default=12) -- max number of
+ control points.
+ </para>
+ </refsect1>
+
+ <refsect1>
+ <title>Performance</title>
+ <para>
+ <emphasis>kamp</emphasis> -- amplitude.
+ </para>
+ <para>
+ <emphasis>kampdist</emphasis> -- choice of probability
+ distribution for the next perturbation of the amplitude of a
+ control point. The valid distributions are:
+ <itemizedlist>
+ <listitem><para>0 - LINEAR</para></listitem>
+ <listitem><para>1 - CAUCHY</para></listitem>
+ <listitem><para>2 - LOGIST</para></listitem>
+ <listitem><para>3 - HYPERBCOS</para></listitem>
+ <listitem><para>4 - ARCSINE</para></listitem>
+ <listitem><para>5 - EXPON</para></listitem>
+ <listitem><para>6 - SINUS (external k-rate signal)</para></listitem>
+ </itemizedlist>
+ If <emphasis>kampdist</emphasis>=6, the user can use an external
+ k-rate signal through <emphasis>kadpar</emphasis>.
+ </para>
+ <para>
+ <emphasis>kdurdist</emphasis> -- choice of distribution for the
+ perturbation of the current inter control point
+ duration. See <emphasis>kampdist</emphasis> for the valid distributions.
+ If <emphasis>kdurdist</emphasis>=6, the user can use an external
+ k-rate signal through <emphasis>kddpar</emphasis>.
+ </para>
+ <para>
+ <emphasis>kadpar</emphasis> -- parameter for the <emphasis>kampdist</emphasis>
+ distribution. Should be in the range of 0.0001 to 1.
+ </para>
+ <para>
+ <emphasis>kddpar</emphasis> -- parameter for the <emphasis>kdurdist</emphasis>
+ distribution. Should be in the range of 0.0001 to 1.
+ </para>
+ <para>
+ <emphasis>kminfreq</emphasis> -- minimum allowed frequency of oscillation.
+ </para>
+ <para>
+ <emphasis>kmaxfreq</emphasis> -- maximum allowed frequency of oscillation.
+ </para>
+ <para>
+ <emphasis>kampscl</emphasis> -- multiplier for the
+ distribution's delta value for amplitude (1.0 is full range).
+ </para>
+ <para>
+ <emphasis>kdurscl</emphasis> -- multiplier for the distribution's delta value for duration.
+ </para>
+ <para>
+ <emphasis>knum</emphasis> (optional,
+ default=<emphasis>initcps</emphasis>) -- current number of utilized control points.
+ </para>
+
+ <para>
+ The waveform is generated by <emphasis>knum</emphasis> - 1
+ segments and is repeated in the time. The vertexes (control points)
+ are moved according to a stochastic action and they are limited
+ within the boundaries of a mirror formed by an amplitude barrier
+ and a time barrier.
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/gendy.png" format="PNG"/>
+ </imageobject>
+
+ <textobject>
+ <phrase>[A repetition of the generated waveform with <emphasis>knum</emphasis>=12.]</phrase>
+ </textobject>
+
+ <caption>
+ <para>A repetition of the generated waveform with <emphasis>knum</emphasis>=12.</para>
+ </caption>
+ </mediaobject>
+ </para>
+ </refsect1>
+
+ <refsect1>
+ <title>Examples</title>
+ <para>
+ Here is an example of the gendy opcode. It uses the file
+ <ulink url="examples/gendy.csd"><citetitle>gendy.csd</citetitle></ulink>.
+ <example>
+ <title>Example of the gendy opcode.</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/gendy.csd.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
+ </example>
+ </para>
+ <para>
+ Here is an example of the gendy opcode with some modulations. It uses the file
+ <ulink url="examples/gendy-2.csd"><citetitle>gendy-2.csd</citetitle></ulink>.
+ <example>
+ <title>Example of the gendy opcode with some modulations.</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/gendy-2.csd.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
+ </example>
+ </para>
+ </refsect1>
+
+ <refsect1>
+ <title>References</title>
+ <para>
+ <orderedlist>
+ <listitem>
+ <para>
+ Formalized Music (1992, Stuyvesant, NY: Pendragon Press),
+ pp. 246 - 254, 289 - 322.
+ </para>
+ </listitem>
+ </orderedlist>
+ </para>
+ </refsect1>
+
+ <refsect1>
+ <title>See Also</title>
+ <para>
+ <link linkend="gendyc"><citetitle>gendyc</citetitle></link>
+ <link linkend="gendyx"><citetitle>gendyx</citetitle></link>
+ </para>
+ </refsect1>
+
+ <refsect1>
+ <title>Credits</title>
+ <para>
+ <simplelist>
+ <member>Based on Nick Collins's Gendy1 ugen (SuperCollider)</member>
+ <member>Author: &nametito;</member>
+ <member>January 2012</member>
+ </simplelist>
+ </para>
+ <para>New in Csound version 5.16</para>
+ </refsect1>
+</refentry>