summaryrefslogtreecommitdiff
path: root/opcodes/lorisplay.xml
blob: 70c98cdaf337346d243a6574cc62c053871579aa (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
<refentry id="lorisplay">
  <indexterm id="IndexLorisPlay"><primary>lorisplay</primary></indexterm>
  <refentryinfo><title>Spectral Processing:Loris</title></refentryinfo>
  <refmeta>
    <refentrytitle>lorisplay</refentrytitle>
  </refmeta>
  
  
  <refnamediv>
    <refname>lorisplay</refname>
    <refpurpose>renders a stored set of bandwidth-enhanced partials using the method of Bandwidth-Enhanced Additive Synthesis implemented in the Loris software, applying control-rate frequency, amplitude, and bandwidth scaling envelopes.</refpurpose>
  </refnamediv>

  <refsect1>
    <title>Syntax</title>
    <synopsis>ar <command>lorisplay</command> ireadidx, kfreqenv, kampenv, kbwenv</synopsis>
    </refsect1>

    <refsect1>
    <title>Description</title> 

    <para><emphasis>lorisplay</emphasis> renders a stored set of
    bandwidth-enhanced partials using the method of Bandwidth-Enhanced
    Additive Synthesis implemented in the Loris software, applying
    control-rate frequency, amplitude, and bandwidth scaling
    envelopes.</para>

  </refsect1>

  <refsect1>
    <title>Initialization</title>
    <para><emphasis>istoreidx, ireadidx, isrcidx, itgtidx</emphasis> are
    labels that identify a stored set of bandwidth-enhanced
    partials. <emphasis>lorisread</emphasis> imports partials from a SDIF file and stores them
    with the integer label istoreidx. <emphasis>lorismorph</emphasis> morphs sets of partials
    labeled <emphasis>isrcidx</emphasis> and <emphasis>itgtidx</emphasis>, and stores the resulting partials with
    the integer label <emphasis>istoreidx</emphasis>. <emphasis>lorisplay</emphasis> renders the partials stored
    with the label <emphasis>ireadidx</emphasis>. The labels are used only at initialization
    time, and may be reused without any cost or benefit in efficiency, and
    without introducing any interaction between instruments or
    instances.</para>

  </refsect1>

  <refsect1>
    <title>Performance</title>
    <para><emphasis>lorisplay</emphasis> implements signal reconstruction using
    Bandwidth-Enhanced Additive Synthesis. The control data is obtained
    from a stored set of bandwidth-enhanced partials imported from an SDIF
    file using <emphasis>lorisread</emphasis> or constructed by another unit generator such as
    <emphasis>lorismorph</emphasis>. <emphasis>kfreqenv</emphasis> is a control-rate transposition factor: a value
    of 1 incurs no transposition, 1.5 transposes up a perfect fifth, and
    .5 down an octave. <emphasis>kampenv</emphasis> is a control-rate scale factor that is
    applied to all partial amplitude envelopes. kbwenv is a control-rate
    scale factor that is applied to all partial bandwidth or noisiness
    envelopes. The bandwidth-enhanced partial data is stored in memory
    with a specified label for future access by another generator.</para>
  </refsect1>

  <refsect1>
    <title>Credits</title>
    <para>This implementation of the Loris unit generators was written by Kelly
    Fitz (<ulink
    url="mailto:loris@cerlsoundgroup.org">loris@cerlsoundgroup.org</ulink>). It is patterned after a prototype implementation of the
    <emphasis>lorisplay</emphasis> unit generator written by Corbin Champion, and based on the
    method of Bandwidth-Enhanced Additive Synthesis and on the sound
    morphing algorithms implemented in the Loris library for sound
    modeling and manipulation. The opcodes were further adapted as a
    plugin for Csound 5 by Michael Gogins.</para>
  </refsect1>

</refentry>