<effect>
  <name>spectralarp</name>
  <enabled>true</enabled>
  <numIns>2</numIns>
  <numOuts>2</numOuts>
  <code>
itable3	ftgen 0, 0, 16384, -19, 1, 1, 260, 1
itabledraw	ftgen 0, 0, 16384, -7, &lt;table_shape&gt;

kjit	jitter	&lt;randamp&gt;, &lt;randmin&gt;, &lt;randmax&gt; 

kmod1 oscili &lt;moddepth&gt;, &lt;modfreq&gt;*kjit, &lt;tablenum&gt;, &lt;phase1&gt;
kmod2 oscili &lt;moddepth&gt;, &lt;modfreq&gt;*kjit, &lt;tablenum&gt;, &lt;phase2&gt;


ftps1  pvsanal   ain1, &lt;size&gt;, &lt;overlap&gt;, &lt;size&gt;, 1 ; analyse it
ftps2  pvsanal   ain2, &lt;size&gt;, &lt;overlap&gt;, &lt;size&gt;, 1


ftar1  pvsarp   ftps1, (&lt;bin1&gt;+0.01)+kmod1, &lt;depth&gt;, &lt;vol&gt;     ; arpeggiate it (range 220.5 - 2425.5)
ftar2  pvsarp   ftps2, (&lt;bin2&gt;+0.01)+kmod2, &lt;depth&gt;, &lt;vol&gt; 


aout1  pvsynth  ftar1                      ; synthesise it
aout2  pvsynth  ftar2</code>
  <comments>spectral arpagiator using Victor Lazzarini&apos;s pvsarp.</comments>
  <opcodeList/>
  <graphicInterface editEnabled='true'>
    <uniqueNameManager nameIndex='2' defaultPrefix='bsbObj'/>
    <bsbObject type='blue.orchestra.blueSynthBuilder.BSBHSlider'>
      <objectName>depth</objectName>
      <x>166</x>
      <y>62</y>
      <automationAllowed>true</automationAllowed>
      <minimum>0.0</minimum>
      <maximum>1.0</maximum>
      <resolution>0.01</resolution>
      <value>0.14</value>
      <sliderWidth>150</sliderWidth>
      <randomizable>true</randomizable>
    </bsbObject>
    <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel'>
      <objectName></objectName>
      <x>368</x>
      <y>70</y>
      <label>depth</label>
    </bsbObject>
    <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel'>
      <objectName></objectName>
      <x>23</x>
      <y>81</y>
      <label>arp_left</label>
    </bsbObject>
    <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel'>
      <objectName></objectName>
      <x>369</x>
      <y>30</y>
      <label>gain</label>
    </bsbObject>
    <bsbObject type='blue.orchestra.blueSynthBuilder.BSBHSlider'>
      <objectName>vol</objectName>
      <x>166</x>
      <y>22</y>
      <automationAllowed>true</automationAllowed>
      <minimum>0.0</minimum>
      <maximum>6.0</maximum>
      <resolution>0.1</resolution>
      <value>6.0</value>
      <sliderWidth>150</sliderWidth>
      <randomizable>true</randomizable>
    </bsbObject>
    <bsbObject type='blue.orchestra.blueSynthBuilder.BSBDropdown'>
      <objectName>size</objectName>
      <x>16</x>
      <y>604</y>
      <bsbDropdownItemList>
        <bsbDropdownItem>
          <name>256</name>
          <value>256</value>
        </bsbDropdownItem>
        <bsbDropdownItem>
          <name>512</name>
          <value>512</value>
        </bsbDropdownItem>
        <bsbDropdownItem>
          <name>1024</name>
          <value>1024</value>
        </bsbDropdownItem>
        <bsbDropdownItem>
          <name>2048</name>
          <value>2048</value>
        </bsbDropdownItem>
      </bsbDropdownItemList>
      <selectedIndex>3</selectedIndex>
      <randomizable>true</randomizable>
    </bsbObject>
    <bsbObject type='blue.orchestra.blueSynthBuilder.BSBDropdown'>
      <objectName>overlap</objectName>
      <x>110</x>
      <y>603</y>
      <bsbDropdownItemList>
        <bsbDropdownItem>
          <name>256</name>
          <value>256</value>
        </bsbDropdownItem>
        <bsbDropdownItem>
          <name>512</name>
          <value>512</value>
        </bsbDropdownItem>
        <bsbDropdownItem>
          <name>1024</name>
          <value>1024</value>
        </bsbDropdownItem>
      </bsbDropdownItemList>
      <selectedIndex>1</selectedIndex>
      <randomizable>true</randomizable>
    </bsbObject>
    <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel'>
      <objectName></objectName>
      <x>74</x>
      <y>606</y>
      <label>size</label>
    </bsbObject>
    <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel'>
      <objectName></objectName>
      <x>168</x>
      <y>605</y>
      <label>overlap</label>
    </bsbObject>
    <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel'>
      <objectName></objectName>
      <x>99</x>
      <y>80</y>
      <label>arp_right</label>
    </bsbObject>
    <bsbObject type='blue.orchestra.blueSynthBuilder.BSBKnob' version='2'>
      <objectName>bin1</objectName>
      <x>15</x>
      <y>5</y>
      <automationAllowed>true</automationAllowed>
      <minimum>0.0</minimum>
      <maximum>1.0</maximum>
      <value>0.015215681</value>
      <knobWidth>60</knobWidth>
      <randomizable>true</randomizable>
    </bsbObject>
    <bsbObject type='blue.orchestra.blueSynthBuilder.BSBKnob' version='2'>
      <objectName>bin2</objectName>
      <x>94</x>
      <y>4</y>
      <automationAllowed>true</automationAllowed>
      <minimum>0.0</minimum>
      <maximum>1.0</maximum>
      <value>0.015215681</value>
      <knobWidth>60</knobWidth>
      <randomizable>true</randomizable>
    </bsbObject>
    <bsbObject type='blue.orchestra.blueSynthBuilder.BSBKnob' version='2'>
      <objectName>modfreq</objectName>
      <x>49</x>
      <y>140</y>
      <automationAllowed>true</automationAllowed>
      <minimum>0.0</minimum>
      <maximum>400.0</maximum>
      <value>0.2</value>
      <knobWidth>60</knobWidth>
      <randomizable>true</randomizable>
    </bsbObject>
    <bsbObject type='blue.orchestra.blueSynthBuilder.BSBKnob' version='2'>
      <objectName>moddepth</objectName>
      <x>129</x>
      <y>139</y>
      <automationAllowed>true</automationAllowed>
      <minimum>0.0</minimum>
      <maximum>1.0</maximum>
      <value>0.024565712</value>
      <knobWidth>60</knobWidth>
      <randomizable>true</randomizable>
    </bsbObject>
    <bsbObject type='blue.orchestra.blueSynthBuilder.BSBKnob' version='2'>
      <objectName>phase1</objectName>
      <x>215</x>
      <y>139</y>
      <automationAllowed>true</automationAllowed>
      <minimum>0.0</minimum>
      <maximum>1.0</maximum>
      <value>0.0</value>
      <knobWidth>60</knobWidth>
      <randomizable>true</randomizable>
    </bsbObject>
    <bsbObject type='blue.orchestra.blueSynthBuilder.BSBKnob' version='2'>
      <objectName>phase2</objectName>
      <x>294</x>
      <y>138</y>
      <automationAllowed>true</automationAllowed>
      <minimum>0.0</minimum>
      <maximum>1.0</maximum>
      <value>0.27679738</value>
      <knobWidth>60</knobWidth>
      <randomizable>true</randomizable>
    </bsbObject>
    <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel'>
      <objectName></objectName>
      <x>64</x>
      <y>216</y>
      <label>freq</label>
    </bsbObject>
    <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel'>
      <objectName></objectName>
      <x>125</x>
      <y>216</y>
      <label>depth (amp)</label>
    </bsbObject>
    <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel'>
      <objectName></objectName>
      <x>106</x>
      <y>121</y>
      <label>M    O    D    U    L    A    T    E</label>
    </bsbObject>
    <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel'>
      <objectName></objectName>
      <x>216</x>
      <y>216</y>
      <label>phase_left</label>
    </bsbObject>
    <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel'>
      <objectName></objectName>
      <x>295</x>
      <y>214</y>
      <label>phase_right</label>
    </bsbObject>
    <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLineObject'>
      <objectName>table</objectName>
      <x>16</x>
      <y>377</y>
      <canvasWidth>400</canvasWidth>
      <canvasHeight>200</canvasHeight>
      <xMax>16384.0</xMax>
      <relativeXValues>true</relativeXValues>
      <separatorType>Comma</separatorType>
      <leadingZero>false</leadingZero>
      <locked>false</locked>
      <lines>
        <line name='shape' version='2' max='1.0' min='0.0' resolution='-1.0' color='-14623488' rightBound='true'>
          <linePoint x='0.0' y='0.5'/>
          <linePoint x='0.0927835' y='0.03191489'/>
          <linePoint x='0.23453608' y='0.84042555'/>
          <linePoint x='0.5412371' y='0.2606383'/>
          <linePoint x='0.7474227' y='0.9148936'/>
          <linePoint x='0.8402062' y='0.2712766'/>
          <linePoint x='1.0' y='0.5'/>
        </line>
      </lines>
    </bsbObject>
    <bsbObject type='blue.orchestra.blueSynthBuilder.BSBDropdown'>
      <objectName>tablenum</objectName>
      <x>16</x>
      <y>347</y>
      <bsbDropdownItemList>
        <bsbDropdownItem>
          <name>bell</name>
          <value>itable3</value>
        </bsbDropdownItem>
        <bsbDropdownItem>
          <name>draw</name>
          <value>itabledraw</value>
        </bsbDropdownItem>
      </bsbDropdownItemList>
      <selectedIndex>0</selectedIndex>
      <randomizable>true</randomizable>
    </bsbObject>
    <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel'>
      <objectName></objectName>
      <x>73</x>
      <y>350</y>
      <label>MODE</label>
    </bsbObject>
    <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel'>
      <objectName></objectName>
      <x>327</x>
      <y>359</y>
      <label>For Draw Mode</label>
    </bsbObject>
    <bsbObject type='blue.orchestra.blueSynthBuilder.BSBKnob' version='2'>
      <objectName>randmin</objectName>
      <x>214</x>
      <y>256</y>
      <automationAllowed>true</automationAllowed>
      <minimum>0.0</minimum>
      <maximum>20.0</maximum>
      <value>5.8180075</value>
      <knobWidth>60</knobWidth>
      <randomizable>true</randomizable>
    </bsbObject>
    <bsbObject type='blue.orchestra.blueSynthBuilder.BSBKnob' version='2'>
      <objectName>randmax</objectName>
      <x>295</x>
      <y>256</y>
      <automationAllowed>true</automationAllowed>
      <minimum>0.0</minimum>
      <maximum>20.0</maximum>
      <value>19.110401</value>
      <knobWidth>60</knobWidth>
      <randomizable>true</randomizable>
    </bsbObject>
    <bsbObject type='blue.orchestra.blueSynthBuilder.BSBKnob' version='2'>
      <objectName>randamp</objectName>
      <x>132</x>
      <y>257</y>
      <automationAllowed>true</automationAllowed>
      <minimum>0.0</minimum>
      <maximum>10.0</maximum>
      <value>0.85853696</value>
      <knobWidth>60</knobWidth>
      <randomizable>true</randomizable>
    </bsbObject>
    <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel'>
      <objectName></objectName>
      <x>293</x>
      <y>333</y>
      <label>max speed</label>
    </bsbObject>
    <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel'>
      <objectName></objectName>
      <x>215</x>
      <y>332</y>
      <label>min speed</label>
    </bsbObject>
    <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel'>
      <objectName></objectName>
      <x>128</x>
      <y>333</y>
      <label>rand depth</label>
    </bsbObject>
    <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel'>
      <objectName></objectName>
      <x>31</x>
      <y>282</y>
      <label>RANDOM JITTER</label>
    </bsbObject>
  </graphicInterface>
  <bsbParameterList>
    <parameter uniqueId='-1481488307' name='bin1' label='' min='0.0' max='1.0' resolution='-1.0' automationEnabled='false'>
      <line name='' version='2' max='1.0' min='0.0' resolution='-1.0' color='-8355712' rightBound='false'>
        <linePoint x='0.0' y='0.015215681'/>
      </line>
    </parameter>
    <parameter uniqueId='-1481488305' name='bin2' label='' min='0.0' max='1.0' resolution='-1.0' automationEnabled='false'>
      <line name='' version='2' max='1.0' min='0.0' resolution='-1.0' color='-8355712' rightBound='false'>
        <linePoint x='0.0' y='0.015215681'/>
      </line>
    </parameter>
    <parameter uniqueId='-1481488311' name='depth' label='' min='0.0' max='1.0' resolution='0.01' automationEnabled='false'>
      <line name='' version='2' max='1.0' min='0.0' resolution='0.01' color='-8355712' rightBound='false'>
        <linePoint x='0.0' y='0.14'/>
      </line>
    </parameter>
    <parameter uniqueId='-1481488301' name='moddepth' label='' min='0.0' max='1.0' resolution='-1.0' automationEnabled='false'>
      <line name='' version='2' max='1.0' min='0.0' resolution='-1.0' color='-8355712' rightBound='false'>
        <linePoint x='0.0' y='0.024565712'/>
      </line>
    </parameter>
    <parameter uniqueId='-1481488303' name='modfreq' label='' min='0.0' max='400.0' resolution='-1.0' automationEnabled='false'>
      <line name='' version='2' max='400.0' min='0.0' resolution='-1.0' color='-8355712' rightBound='false'>
        <linePoint x='0.0' y='0.2'/>
      </line>
    </parameter>
    <parameter uniqueId='-1481488299' name='phase1' label='' min='0.0' max='1.0' resolution='-1.0' automationEnabled='false'>
      <line name='' version='2' max='1.0' min='0.0' resolution='-1.0' color='-8355712' rightBound='false'>
        <linePoint x='0.0' y='0.0'/>
      </line>
    </parameter>
    <parameter uniqueId='-1481488297' name='phase2' label='' min='0.0' max='1.0' resolution='-1.0' automationEnabled='false'>
      <line name='' version='2' max='1.0' min='0.0' resolution='-1.0' color='-8355712' rightBound='false'>
        <linePoint x='0.0' y='0.27679738'/>
      </line>
    </parameter>
    <parameter uniqueId='-1481488291' name='randamp' label='' min='0.0' max='10.0' resolution='-1.0' automationEnabled='false'>
      <line name='' version='2' max='10.0' min='0.0' resolution='-1.0' color='-8355712' rightBound='false'>
        <linePoint x='0.0' y='0.85853696'/>
      </line>
    </parameter>
    <parameter uniqueId='-1481488293' name='randmax' label='' min='0.0' max='20.0' resolution='-1.0' automationEnabled='false'>
      <line name='' version='2' max='20.0' min='0.0' resolution='-1.0' color='-8355712' rightBound='false'>
        <linePoint x='0.0' y='19.110401'/>
      </line>
    </parameter>
    <parameter uniqueId='-1481488295' name='randmin' label='' min='0.0' max='20.0' resolution='-1.0' automationEnabled='false'>
      <line name='' version='2' max='20.0' min='0.0' resolution='-1.0' color='-8355712' rightBound='false'>
        <linePoint x='0.0' y='5.8180075'/>
      </line>
    </parameter>
    <parameter uniqueId='-1481488309' name='vol' label='' min='0.0' max='6.0' resolution='0.1' automationEnabled='false'>
      <line name='' version='2' max='6.0' min='0.0' resolution='0.1' color='-8355712' rightBound='false'>
        <linePoint x='0.0' y='6.0'/>
      </line>
    </parameter>
  </bsbParameterList>
</effect>