<blueData version='2.1.6'>
  <projectProperties>
    <title>Ansible Cathedral</title>
    <author>Dave Seidel</author>
    <notes></notes>
    <sampleRate>44100</sampleRate>
    <ksmps>1</ksmps>
    <channels>2</channels>
    <diskSampleRate>96000</diskSampleRate>
    <diskKsmps>10</diskKsmps>
    <diskChannels>2</diskChannels>
    <useAudioOut>true</useAudioOut>
    <useAudioIn>false</useAudioIn>
    <useMidiIn>false</useMidiIn>
    <useMidiOut>false</useMidiOut>
    <noteAmpsEnabled>true</noteAmpsEnabled>
    <outOfRangeEnabled>true</outOfRangeEnabled>
    <warningsEnabled>true</warningsEnabled>
    <benchmarkEnabled>true</benchmarkEnabled>
    <advancedSettings></advancedSettings>
    <completeOverride>false</completeOverride>
    <fileName>C:\Users\dave\Documents\work\blue\AnsibleCathedral.wav</fileName>
    <askOnRender>false</askOnRender>
    <diskNoteAmpsEnabled>true</diskNoteAmpsEnabled>
    <diskOutOfRangeEnabled>true</diskOutOfRangeEnabled>
    <diskWarningsEnabled>true</diskWarningsEnabled>
    <diskBenchmarkEnabled>true</diskBenchmarkEnabled>
    <diskAdvancedSettings></diskAdvancedSettings>
    <diskCompleteOverride>false</diskCompleteOverride>
    <diskAlwaysRenderEntireProject>false</diskAlwaysRenderEntireProject>
    <csladspaSettings>
      <name/>
      <maker/>
      <uniqueId>0</uniqueId>
      <copyright/>
      <portDefinitionList/>
      <enabled>false</enabled>
    </csladspaSettings>
  </projectProperties>
  <arrangement>
    <instrumentAssignment arrangementId='2' isEnabled='true'>
      <instrument type='blue.orchestra.GenericInstrument'>
        <name>binaural beater - gkdiff</name>
        <comment></comment>
        <globalOrc></globalOrc>
        <globalSco></globalSco>
        <instrumentText>idur	=	p3		; duration
iamp	=	ampdb(p4)/2	; amplitude
icent	=	p5		; center frequency (Hz)
idiff	=	p6		; difference (Hz)
itab	=       p7		; function table number (waveform)
irise 	=	p8		; envelope rise time
ifall	=	p9		; envelope fall time

; amplitude envelope
ke	linen	iamp, irise, idur, ifall

; determine pitches
kdiff	=	idiff * gkdiff
kp1	=	icent + (kdiff/2)
kp2	=	icent - (kdiff/2)

;	printks	&quot;center=%f beat=%f =&gt; freq1=%f freq2=%f\\n&quot;, 1000, icent, idiff, kp1, kp2

; generate tones
asig1	poscil3	ke, kp1, itab
asig2	poscil3	ke, kp2, itab

; output
blueMixerOut	asig1, asig2
</instrumentText>
        <opcodeList/>
      </instrument>
    </instrumentAssignment>
    <instrumentAssignment arrangementId='3' isEnabled='true'>
      <instrument type='blue.orchestra.GenericInstrument'>
        <name>chebyshev</name>
        <comment></comment>
        <globalOrc></globalOrc>
        <globalSco></globalSco>
        <instrumentText>idur	=	p3		; duration
iamp	=	ampdb(p4)	; amplitude
ipitch	=	p5		; center frequency (Hz)
ipan	=	p6
itab	=	p7

; jittered harmonics
	seed	0
kmin	init	1
kmax	init	4
k1	jitter	0.5, kmin, kmax
k1ofs	init	0.5
k2	jitter	0.25, kmin, kmax
k2ofs	init	-0.25
k3	jitter	0.333, kmin, kmax
k3ofs	init	-0.333
k4	jitter	0.25, kmin, kmax
k4ofs	init	0.5
k5	jitter	0.35, kmin, kmax
k5ofs	init	0.35
k6	jitter	0.5, kmin, kmax
k6ofs	init	-0.5

; generate wave
ke	linen	1, 5, idur, 10
ax	poscil3	ke, ipitch, itab

; waveshape it
ay	chebyshevpoly	ax, 0, k1+k1ofs, k2+k2ofs, k3+k3ofs, k4+k4ofs, k5+k5ofs, k6+k6ofs
aout	dcblock2	ay

al,ar	pan_equal_power	aout, ipan
blueMixerOut	al*iamp, ar*iamp
</instrumentText>
        <opcodeList/>
      </instrument>
    </instrumentAssignment>
  </arrangement>
  <mixer>
    <enabled>true</enabled>
    <extraRenderTime>1.0</extraRenderTime>
    <channelList list='channels'>
      <channel>
        <name>2</name>
        <outChannel>Master</outChannel>
        <level>-1.0</level>
        <muted>false</muted>
        <solo>false</solo>
        <effectsChain bin='pre'/>
        <effectsChain bin='post'>
          <effect>
            <name>ReverbSC</name>
            <enabled>true</enabled>
            <numIns>2</numIns>
            <numOuts>2</numOuts>
            <code>aout1, aout2  reverbsc ain1, ain2, &lt;feedback&gt;, &lt;cutoff&gt;, sr, 0.5

aout1 = (ain1 * &lt;wetdry&gt;) + (aout1 * (1 - &lt;wetdry&gt;))
aout2 = (ain2 * &lt;wetdry&gt;) + (aout2 * (1 - &lt;wetdry&gt;))

</code>
            <comments/>
            <opcodeList/>
            <graphicInterface editEnabled='false'>
              <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel'>
                <objectName></objectName>
                <x>7</x>
                <y>7</y>
                <label>&lt;html&gt;&lt;font size=&quot;+1&quot;&gt;ReverbSC&lt;/font&gt;&lt;/html&gt;</label>
              </bsbObject>
              <bsbObject type='blue.orchestra.blueSynthBuilder.BSBKnob' version='2'>
                <objectName>feedback</objectName>
                <x>8</x>
                <y>55</y>
                <automationAllowed>true</automationAllowed>
                <minimum>0.0</minimum>
                <maximum>1.0</maximum>
                <value>0.8126968</value>
                <knobWidth>60</knobWidth>
                <randomizable>true</randomizable>
              </bsbObject>
              <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel'>
                <objectName></objectName>
                <x>11</x>
                <y>36</y>
                <label>Feedback</label>
              </bsbObject>
              <bsbObject type='blue.orchestra.blueSynthBuilder.BSBKnob' version='2'>
                <objectName>cutoff</objectName>
                <x>72</x>
                <y>55</y>
                <automationAllowed>true</automationAllowed>
                <minimum>20.0</minimum>
                <maximum>20000.0</maximum>
                <value>8000.0</value>
                <knobWidth>60</knobWidth>
                <randomizable>true</randomizable>
              </bsbObject>
              <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel'>
                <objectName></objectName>
                <x>80</x>
                <y>36</y>
                <label>Cut-Off</label>
              </bsbObject>
              <bsbObject type='blue.orchestra.blueSynthBuilder.BSBKnob' version='2'>
                <objectName>wetdry</objectName>
                <x>136</x>
                <y>55</y>
                <automationAllowed>true</automationAllowed>
                <minimum>0.0</minimum>
                <maximum>1.0</maximum>
                <value>0.8572772</value>
                <knobWidth>60</knobWidth>
                <randomizable>true</randomizable>
              </bsbObject>
              <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel'>
                <objectName></objectName>
                <x>139</x>
                <y>36</y>
                <label>Wet/Dry</label>
              </bsbObject>
            </graphicInterface>
            <bsbParameterList>
              <parameter uniqueId='684594862' name='cutoff' label='' min='20.0' max='20000.0' resolution='-1.0' automationEnabled='false' value='8000.0'>
                <line name='' version='2' max='20000.0' min='20.0' resolution='-1.0' color='-8355712' rightBound='false' endPointsLinked='false'>
                  <linePoint x='0.0' y='8000.0'/>
                </line>
              </parameter>
              <parameter uniqueId='684594860' name='feedback' label='' min='0.0' max='1.0' resolution='-1.0' automationEnabled='false' value='0.8126968'>
                <line name='' version='2' max='1.0' min='0.0' resolution='-1.0' color='-8355712' rightBound='false' endPointsLinked='false'>
                  <linePoint x='0.0' y='0.8126968'/>
                </line>
              </parameter>
              <parameter uniqueId='684594864' name='wetdry' label='' min='0.0' max='1.0' resolution='-1.0' automationEnabled='false' value='0.8572772'>
                <line name='' version='2' max='1.0' min='0.0' resolution='-1.0' color='-8355712' rightBound='false' endPointsLinked='false'>
                  <linePoint x='0.0' y='0.8572772'/>
                </line>
              </parameter>
            </bsbParameterList>
          </effect>
        </effectsChain>
        <parameter uniqueId='518994411' name='Volume' label='dB' min='-96.0' max='12.0' resolution='-1.0' automationEnabled='false' value='-1.0'>
          <line name='' version='2' max='12.0' min='-96.0' resolution='-1.0' color='-8355712' rightBound='false' endPointsLinked='false'>
            <linePoint x='0.0' y='-1.0'/>
          </line>
        </parameter>
      </channel>
      <channel>
        <name>3</name>
        <outChannel>Master</outChannel>
        <level>-2.0</level>
        <muted>false</muted>
        <solo>false</solo>
        <effectsChain bin='pre'/>
        <effectsChain bin='post'>
          <effect>
            <name>ReverbSC</name>
            <enabled>true</enabled>
            <numIns>2</numIns>
            <numOuts>2</numOuts>
            <code>aout1, aout2  reverbsc ain1, ain2, &lt;feedback&gt;, &lt;cutoff&gt;, sr, 0.5

aout1 = (ain1 * &lt;wetdry&gt;) + (aout1 * (1 - &lt;wetdry&gt;))
aout2 = (ain2 * &lt;wetdry&gt;) + (aout2 * (1 - &lt;wetdry&gt;))

</code>
            <comments/>
            <opcodeList/>
            <graphicInterface editEnabled='false'>
              <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel'>
                <objectName></objectName>
                <x>7</x>
                <y>7</y>
                <label>&lt;html&gt;&lt;font size=&quot;+1&quot;&gt;ReverbSC&lt;/font&gt;&lt;/html&gt;</label>
              </bsbObject>
              <bsbObject type='blue.orchestra.blueSynthBuilder.BSBKnob' version='2'>
                <objectName>feedback</objectName>
                <x>8</x>
                <y>55</y>
                <automationAllowed>true</automationAllowed>
                <minimum>0.0</minimum>
                <maximum>1.0</maximum>
                <value>0.94762987</value>
                <knobWidth>60</knobWidth>
                <randomizable>true</randomizable>
              </bsbObject>
              <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel'>
                <objectName></objectName>
                <x>11</x>
                <y>36</y>
                <label>Feedback</label>
              </bsbObject>
              <bsbObject type='blue.orchestra.blueSynthBuilder.BSBKnob' version='2'>
                <objectName>cutoff</objectName>
                <x>72</x>
                <y>55</y>
                <automationAllowed>true</automationAllowed>
                <minimum>20.0</minimum>
                <maximum>20000.0</maximum>
                <value>8000.0</value>
                <knobWidth>60</knobWidth>
                <randomizable>true</randomizable>
              </bsbObject>
              <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel'>
                <objectName></objectName>
                <x>80</x>
                <y>36</y>
                <label>Cut-Off</label>
              </bsbObject>
              <bsbObject type='blue.orchestra.blueSynthBuilder.BSBKnob' version='2'>
                <objectName>wetdry</objectName>
                <x>136</x>
                <y>55</y>
                <automationAllowed>true</automationAllowed>
                <minimum>0.0</minimum>
                <maximum>1.0</maximum>
                <value>0.48686627</value>
                <knobWidth>60</knobWidth>
                <randomizable>true</randomizable>
              </bsbObject>
              <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel'>
                <objectName></objectName>
                <x>139</x>
                <y>36</y>
                <label>Wet/Dry</label>
              </bsbObject>
            </graphicInterface>
            <bsbParameterList>
              <parameter uniqueId='684594856' name='cutoff' label='' min='20.0' max='20000.0' resolution='-1.0' automationEnabled='false' value='8000.0'>
                <line name='' version='2' max='20000.0' min='20.0' resolution='-1.0' color='-8355712' rightBound='false' endPointsLinked='false'>
                  <linePoint x='0.0' y='8000.0'/>
                </line>
              </parameter>
              <parameter uniqueId='684594854' name='feedback' label='' min='0.0' max='1.0' resolution='-1.0' automationEnabled='false' value='0.94762987'>
                <line name='' version='2' max='1.0' min='0.0' resolution='-1.0' color='-8355712' rightBound='false' endPointsLinked='false'>
                  <linePoint x='0.0' y='0.94762987'/>
                </line>
              </parameter>
              <parameter uniqueId='684594858' name='wetdry' label='' min='0.0' max='1.0' resolution='-1.0' automationEnabled='false' value='0.48686627'>
                <line name='' version='2' max='1.0' min='0.0' resolution='-1.0' color='-8355712' rightBound='false' endPointsLinked='false'>
                  <linePoint x='0.0' y='0.48686627'/>
                </line>
              </parameter>
            </bsbParameterList>
          </effect>
        </effectsChain>
        <parameter uniqueId='684594852' name='Volume' label='dB' min='-96.0' max='12.0' resolution='-1.0' automationEnabled='false' value='-2.0'>
          <line name='' version='2' max='12.0' min='-96.0' resolution='-1.0' color='-8355712' rightBound='false' endPointsLinked='false'>
            <linePoint x='0.0' y='-2.0'/>
          </line>
        </parameter>
      </channel>
    </channelList>
    <channelList list='subChannels'/>
    <channel>
      <name>Master</name>
      <outChannel>Master</outChannel>
      <level>0.0</level>
      <muted>false</muted>
      <solo>false</solo>
      <effectsChain bin='pre'/>
      <effectsChain bin='post'/>
      <parameter uniqueId='334831818' name='Volume' label='dB' min='-96.0' max='12.0' resolution='-1.0' automationEnabled='false' value='0.0'>
        <line name='' version='2' max='12.0' min='-96.0' resolution='-1.0' color='-8355712' rightBound='false' endPointsLinked='false'>
          <linePoint x='0.0' y='0.0'/>
        </line>
      </parameter>
    </channel>
  </mixer>
  <tables></tables>
  <soundObjectLibrary/>
  <globalOrcSco>
    <globalOrc>0dbfs = 1

giTblSz	init	1048577

; sine wave
giFn1 	ftgen	1, 0, giTblSz, 10, 1

; initialize line object
gkdiff	init	1</globalOrc>
    <globalSco>t 0 7.5</globalSco>
  </globalOrcSco>
  <opcodeList>
    <udo>
      <opcodeName>pan_equal_power</opcodeName>
      <outTypes>aa</outTypes>
      <inTypes>ak</inTypes>
      <codeBody>ain, kpan	xin
kangl		= 	1.57079633 * (kpan + 0.5)
		xout	ain*sin(kangl), ain*cos(kangl)
</codeBody>
      <comments></comments>
    </udo>
  </opcodeList>
  <liveData>
    <commandLine>csound -Wdo devaudio -L stdin</commandLine>
    <commandLineEnabled>false</commandLineEnabled>
    <commandLineOverride>false</commandLineOverride>
  </liveData>
  <soundObject type='blue.soundObject.PolyObject'>
    <subjectiveDuration>2.0</subjectiveDuration>
    <startTime>0.0</startTime>
    <name>root</name>
    <backgroundColor>-10066279</backgroundColor>
    <timeBehavior>0</timeBehavior>
    <noteProcessorChain/>
    <isRoot>true</isRoot>
    <pixelSecond>20</pixelSecond>
    <defaultHeightIndex>0</defaultHeightIndex>
    <snapEnabled>true</snapEnabled>
    <snapValue>1.0</snapValue>
    <timeDisplay>1</timeDisplay>
    <timeUnit>5</timeUnit>
    <soundLayer name='' muted='false' solo='false' heightIndex='0'>
      <noteProcessorChain/>
      <soundObject type='blue.soundObject.PythonObject' onLoadProcessable='false'>
        <subjectiveDuration>5.0</subjectiveDuration>
        <startTime>0.0</startTime>
        <name>PythonObject</name>
        <backgroundColor>-12566464</backgroundColor>
        <timeBehavior>0</timeBehavior>
        <noteProcessorChain/>
        <pythonCode>instr = 2
base = 45
beat = 1
amp = -9

def bb(m, a=0):
 	return &quot;i%d 0 1 %f %f %f 1 5 10\n&quot; % (instr, amp+a, base*m, beat)

def bb_octaves(n, a=0):
	out = &quot;&quot;
	for i in range(0, n):
		out += &quot;i%d 0 1 %f %f %f 1 5 10\n&quot; % (instr, amp+a, base*(2**i), beat)
	return out
</pythonCode>
      </soundObject>
    </soundLayer>
    <soundLayer name='' muted='false' solo='false' heightIndex='0'>
      <noteProcessorChain/>
      <soundObject type='blue.soundObject.PythonObject' onLoadProcessable='false'>
        <subjectiveDuration>60.0</subjectiveDuration>
        <startTime>0.0</startTime>
        <name>PythonObject</name>
        <backgroundColor>-12566464</backgroundColor>
        <timeBehavior>0</timeBehavior>
        <noteProcessorChain/>
        <pythonCode>score = bb_octaves(5)</pythonCode>
      </soundObject>
    </soundLayer>
    <soundLayer name='' muted='false' solo='false' heightIndex='0'>
      <noteProcessorChain/>
      <soundObject type='blue.soundObject.LineObject'>
        <subjectiveDuration>60.0</subjectiveDuration>
        <startTime>0.0</startTime>
        <name>LineObject</name>
        <backgroundColor>-12566464</backgroundColor>
        <line name='diff' version='2' max='7.0' min='1.0' resolution='-1.0' color='-14623488' rightBound='true' endPointsLinked='false'>
          <linePoint x='0.0' y='3.0000002'/>
          <linePoint x='0.199' y='3.0000002'/>
          <linePoint x='0.2' y='5.0'/>
          <linePoint x='0.299' y='5.0'/>
          <linePoint x='0.3' y='2.0'/>
          <linePoint x='0.45' y='2.0'/>
          <linePoint x='0.50044686' y='7.0'/>
          <linePoint x='0.599' y='7.0'/>
          <linePoint x='0.7' y='4.0'/>
          <linePoint x='0.799' y='4.0'/>
          <linePoint x='0.79982126' y='1.0'/>
          <linePoint x='1.0' y='1.0'/>
        </line>
      </soundObject>
    </soundLayer>
    <soundLayer name='' muted='false' solo='false' heightIndex='0'>
      <noteProcessorChain/>
      <soundObject type='blue.soundObject.GenericScore'>
        <subjectiveDuration>60.0</subjectiveDuration>
        <startTime>0.0</startTime>
        <name>GenericScore</name>
        <backgroundColor>-12566464</backgroundColor>
        <timeBehavior>0</timeBehavior>
        <noteProcessorChain/>
        <score>i3 0 1 -26 180 -0.25 1
i3 0 1 .   180  0.25 .
i3 0 1 -30 360 -0.50 . 
i3 0 1 .   360  0.50 .
</score>
      </soundObject>
    </soundLayer>
  </soundObject>
  <scratchPadData>
    <isWordWrapEnabled>true</isWordWrapEnabled>
    <scratchText/>
  </scratchPadData>
  <noteProcessorChainMap/>
  <renderStartTime>0.0</renderStartTime>
  <renderEndTime>-1.0</renderEndTime>
  <markersList/>
  <loopRendering>false</loopRendering>
  <tempo>
    <enabled>false</enabled>
    <visible>false</visible>
    <line name='' version='2' max='240.0' min='30.0' resolution='-1.0' color='-8355712' rightBound='false' endPointsLinked='false'>
      <linePoint x='0.0' y='60.0'/>
    </line>
  </tempo>
  <midiInputProcessor>
    <keyMapping>PCH</keyMapping>
    <velMapping>MIDI</velMapping>
    <pitchConstant/>
    <ampConstant/>
    <scale>
      <scaleName>12TET</scaleName>
      <baseFrequency>261.62558</baseFrequency>
      <octave>2.0</octave>
      <ratios>
        <ratio>1.0</ratio>
        <ratio>1.0594631</ratio>
        <ratio>1.122462</ratio>
        <ratio>1.1892071</ratio>
        <ratio>1.2599211</ratio>
        <ratio>1.3348398</ratio>
        <ratio>1.4142135</ratio>
        <ratio>1.4983071</ratio>
        <ratio>1.587401</ratio>
        <ratio>1.6817929</ratio>
        <ratio>1.7817974</ratio>
        <ratio>1.8877486</ratio>
      </ratios>
    </scale>
  </midiInputProcessor>
</blueData>