summaryrefslogtreecommitdiff
path: root/opcodes/scans.xml
blob: 495d961832d6ce0c22083a4a3f746bc6b4945df1 (plain)
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
<refentry id="scans">
<indexterm id="IndexScans"><primary>scans</primary></indexterm>
  <refentryinfo><title>Signal Generators:Scanned Synthesis</title></refentryinfo>
  <refmeta>
    <refentrytitle>scans</refentrytitle>
  </refmeta>


 
  <refnamediv>
    <refname>scans</refname>
    <refpurpose>
      Generate audio output using scanned synthesis.
          </refpurpose>
  </refnamediv>
 
  <refsect1>
    <title>Description</title>
    <para>
      Generate audio output using scanned synthesis.
    </para>
  </refsect1>
 
  <refsect1>
    <title>Syntax</title>
    <synopsis>ares <command>scans</command> kamp, kfreq, ifn, id [, iorder]</synopsis>
  </refsect1>
 
  <refsect1>
    <title>Initialization</title>
    <para>
      <emphasis>ifn</emphasis> -- ftable containing the scanning trajectory.  This is a series of numbers that contains addresses of masses.  The order of these addresses is used as the scan path.  It should not contain values greater than the number of masses, or negative numbers. See the <link linkend="SiggenScanTop"><citetitle>introduction to the scanned synthesis section</citetitle></link>.
    </para>

    <para>
      <emphasis>id</emphasis> -- ID number of the <link linkend="scanu"><citetitle>scanu</citetitle></link> opcode's waveform to use
    </para>

    <para>
      <emphasis>iorder</emphasis> (optional, default=0) -- order of interpolation used internally.  It can take any value in the range 1 to 4, and defaults to 4, which is quartic interpolation.  The setting of 2 is quadratic and 1 is linear.  The higher numbers are slower, but not necessarily better.
    </para>
  </refsect1>
 
  <refsect1>
    <title>Performance</title>
    <para>
      <emphasis>kamp</emphasis> -- output amplitude.  Note that the resulting amplitude is also dependent on instantaneous value in the wavetable.  This number is effectively the scaling factor of the wavetable.
    </para>

    <para>
      <emphasis>kfreq</emphasis> -- frequency of the scan rate
    </para>
  </refsect1>
 
  <refsect1 id="scanexamp">
    <title>Examples</title> 
    <para>
      Here is an example of the scanned synthesis. It uses the file <ulink url="examples/scans.csd"><citetitle>scans.csd</citetitle></ulink>, and <ulink url="examples/string-128.matrix"><citetitle>string-128.matrix</citetitle></ulink>.

      <example>
        <title>Example of the scans 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/scans.csd.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
      </example>
    </para>

    <para>
      The matrix file <quote>string-128.matrix</quote>, as well as several other matrices, is also available in a <ulink url="http://www.csounds.com/scanned/zip/scanmatrices.zip"><citetitle>zipped file</citetitle></ulink> from the <ulink url="http://www.csounds.com/scanned/"><citetitle>Scanned Synthesis page</citetitle></ulink> at cSounds.com.
    </para>
  </refsect1>
 
  <refsect1>
    <title>Credits</title>
    <para>
      <simplelist>
        <member>Author: &nameparis;</member>
        <member>MIT Media Lab</member>
        <member>Boston, Massachussetts USA</member>
      </simplelist>
    </para>

    <para>New in Csound version 4.05</para>
  </refsect1>
</refentry>