<effect>
  <name>Floxy</name>
  <enabled>true</enabled>
  <numIns>2</numIns>
  <numOuts>2</numOuts>
  <code>if (&lt;FloxyON&gt; == 1) then

;=========================equalize==============================================
    ain =   (ain1 + ain2)*.5                                                    ; create mono signal

    aoutL1 eqfil ain, 300, 100, 1 + &lt;depth&gt; * .3
    aoutR1 eqfil ain, 300, 100, 1 - &lt;depth&gt; * .3
    aoutL2 eqfil aoutL1, 500, 50, 1 - &lt;depth&gt;
    aoutR2 eqfil aoutR1, 500, 50, 1 + &lt;depth&gt;
    aoutL3 eqfil aoutL2, 750, 50, 1 + &lt;depth&gt;
    aoutR3 eqfil aoutR2, 750, 50, 1 - &lt;depth&gt;
    aoutL4 eqfil aoutL3, 1000, 50, 1 - &lt;depth&gt;
    aoutR4 eqfil aoutR3, 1000, 50, 1 + &lt;depth&gt;
    aoutL5 eqfil aoutL4, 1500, 50, 1 + &lt;depth&gt;
    aoutR5 eqfil aoutR4, 1500, 50, 1 - &lt;depth&gt;
    aoutL6 eqfil aoutL5, 2000, 100, 1 - &lt;depth&gt;
    aoutR6 eqfil aoutR5, 2000, 100, 1 + &lt;depth&gt;
    aoutL7 eqfil aoutL6, 2500, 120, 1 + &lt;depth&gt;
    aoutR7 eqfil aoutR6, 2500, 120, 1 - &lt;depth&gt;
    aoutL8 eqfil aoutL7, 3000, 150, 1 - &lt;depth&gt;
    aoutR8 eqfil aoutR7, 3000, 150, 1 + &lt;depth&gt;
    aoutT1 eqfil aoutL8, 4000, 300, 1 + &lt;depth&gt;
    aoutT2 eqfil aoutR8, 4000, 300, 1 - &lt;depth&gt;

;==================================================================


if (&lt;flip channels&gt; == 0) then                                                  ; mix and flip channnels
    aout1   ntrpol  aoutT1, ain, &lt;mix&gt;                                             
    aout2   ntrpol  aoutT2, ain, &lt;mix&gt;
else
    aout2   ntrpol  aoutT1, ain, &lt;mix&gt;                                             
    aout1   ntrpol  aoutT2, ain, &lt;mix&gt;
endif
;
;aout1, aout2    pan2    aoutPAN1, &lt;pan X&gt;                                       ; width
;aout1, aout2    pan2    aoutPAN2, &lt;pan Y&gt;

else
    aout1   =   ain1
    aout2   =   ain2
endif
</code>
  <comments>
DESCRIPTION:

This effect transforms a mono or stereo signal to a mono one- and then tries to stereoize it.

The goal of this effect is to give a mono sound some width and ambiance.
Use: 1 or more Mixerstrips, each producing a mono output, must get copies of the same Floxy effect. The panning can be done in each separate effect.
Result: several mono signals appear to be playing together in the same room, instead of staying alone in their respective corners.


CONTROLLERS:

ON/OFF          -       bypass
depth           -       depth of peak/notch gain of all filters combined
mix             -       mix direct signal with effect
pan X           -       pan one channel 
pan Y           -       pan the other channel
flip channels   -       flip output channels

---

version 1.02, July 2020
- added BSB information comments

version 1.01, May 2020
- added comments on controllers

version 1, February 2020
- initial version by Menno Knevel





</comments>
  <opcodeList>
    <udo>
      <opcodeName>k_MultiTap</opcodeName>
      <outTypes>aa</outTypes>
      <inTypes>aikkk</inTypes>
      <codeBody>asignal, itime, ktap, kgain, kpan    xin

kdeltap init 0
kdeltap    = ktap * itime
aout   deltapi   kdeltap
aout   *=  kgain
aoutL, aoutR    pan2    aout, kpan, 1
xout aoutL, aoutR</codeBody>
      <comments></comments>
    </udo>
  </opcodeList>
  <graphicInterface editEnabled='false'>
    <gridSettings>
      <width>2</width>
      <height>5</height>
      <gridStyle>LINE</gridStyle>
      <snapGridEnabled>true</snapGridEnabled>
    </gridSettings>
    <bsbObject type='blue.orchestra.blueSynthBuilder.BSBGroup'>
      <objectName></objectName>
      <x>0</x>
      <y>0</y>
      <groupName>Group</groupName>
      <backgroundColor>0x00000033</backgroundColor>
      <borderColor>0x000000ff</borderColor>
      <labelTextColor>0xffffffff</labelTextColor>
      <titleEnabled>true</titleEnabled>
      <width>20</width>
      <height>20</height>
      <bsbObject type='blue.orchestra.blueSynthBuilder.BSBCheckBox'>
        <objectName>FloxyON</objectName>
        <x>0</x>
        <y>0</y>
        <comment>bypass</comment>
        <automationAllowed>true</automationAllowed>
        <label/>
        <selected>true</selected>
        <randomizable>true</randomizable>
      </bsbObject>
      <bsbObject type='blue.orchestra.blueSynthBuilder.BSBGroup'>
        <objectName></objectName>
        <x>10</x>
        <y>10</y>
        <groupName>Group</groupName>
        <backgroundColor>0x4d8080ff</backgroundColor>
        <borderColor>0x000000ff</borderColor>
        <labelTextColor>0xffffffff</labelTextColor>
        <titleEnabled>false</titleEnabled>
        <width>20</width>
        <height>20</height>
        <bsbObject type='blue.orchestra.blueSynthBuilder.BSBKnob' version='2'>
          <objectName>pan X</objectName>
          <x>16</x>
          <y>65</y>
          <comment>pan one channel </comment>
          <automationAllowed>true</automationAllowed>
          <minimum>0.0</minimum>
          <maximum>1.0</maximum>
          <value>0.33</value>
          <knobWidth>47</knobWidth>
          <randomizable>true</randomizable>
          <valueDisplayEnabled>false</valueDisplayEnabled>
          <label>pan X</label>
          <labelEnabled>true</labelEnabled>
          <font>
            <name>System Regular</name>
            <size>12.0</size>
          </font>
        </bsbObject>
        <bsbObject type='blue.orchestra.blueSynthBuilder.BSBHSlider' version='2'>
          <objectName>mix</objectName>
          <x>14</x>
          <y>40</y>
          <comment>mix direct signal with effect</comment>
          <automationAllowed>true</automationAllowed>
          <minimum>0.0</minimum>
          <maximum>1.0</maximum>
          <bdresolution>0.1</bdresolution>
          <value>0.0</value>
          <sliderWidth>100</sliderWidth>
          <randomizable>true</randomizable>
          <valueDisplayEnabled>false</valueDisplayEnabled>
        </bsbObject>
        <bsbObject type='blue.orchestra.blueSynthBuilder.BSBCheckBox'>
          <objectName>flip channels</objectName>
          <x>14</x>
          <y>130</y>
          <comment>flip output channels</comment>
          <automationAllowed>true</automationAllowed>
          <label>flip channels</label>
          <selected>false</selected>
          <randomizable>true</randomizable>
        </bsbObject>
        <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel' version='2'>
          <objectName></objectName>
          <x>18</x>
          <y>10</y>
          <label>depth</label>
          <font>
            <name>System Regular</name>
            <size>12.0</size>
          </font>
        </bsbObject>
        <bsbObject type='blue.orchestra.blueSynthBuilder.BSBHSlider' version='2'>
          <objectName>depth</objectName>
          <x>14</x>
          <y>15</y>
          <comment>depth of peak/notch gain of all filters combined</comment>
          <automationAllowed>true</automationAllowed>
          <minimum>0.0</minimum>
          <maximum>2.0</maximum>
          <bdresolution>0.1</bdresolution>
          <value>0.6</value>
          <sliderWidth>100</sliderWidth>
          <randomizable>true</randomizable>
          <valueDisplayEnabled>false</valueDisplayEnabled>
        </bsbObject>
        <bsbObject type='blue.orchestra.blueSynthBuilder.BSBLabel' version='2'>
          <objectName></objectName>
          <x>18</x>
          <y>35</y>
          <label>mix</label>
          <font>
            <name>System Regular</name>
            <size>12.0</size>
          </font>
        </bsbObject>
        <bsbObject type='blue.orchestra.blueSynthBuilder.BSBKnob' version='2'>
          <objectName>pan Y</objectName>
          <x>66</x>
          <y>65</y>
          <comment>pan the other channel</comment>
          <automationAllowed>true</automationAllowed>
          <minimum>0.0</minimum>
          <maximum>1.0</maximum>
          <value>0.65</value>
          <knobWidth>46</knobWidth>
          <randomizable>true</randomizable>
          <valueDisplayEnabled>false</valueDisplayEnabled>
          <label>pan Y</label>
          <labelEnabled>true</labelEnabled>
          <font>
            <name>System Regular</name>
            <size>12.0</size>
          </font>
        </bsbObject>
      </bsbObject>
    </bsbObject>
  </graphicInterface>
  <parameterList>
    <parameter uniqueId='1998711811' name='FloxyON' label='' min='0.0' max='1.0' bdresolution='1' automationEnabled='false' value='1.0'>
      <line name='' version='2' max='1.0' min='0.0' bdresolution='1' color='-8355712' rightBound='false' endPointsLinked='false'>
        <linePoint x='0.0' y='1.0'/>
      </line>
    </parameter>
    <parameter uniqueId='1998711813' name='pan Y' label='' min='0.0' max='1.0' bdresolution='-1' automationEnabled='false' value='0.65'>
      <line name='' version='2' max='1.0' min='0.0' bdresolution='-1' color='-8355712' rightBound='false' endPointsLinked='false'>
        <linePoint x='0.0' y='0.65'/>
      </line>
    </parameter>
    <parameter uniqueId='1998711815' name='pan X' label='' min='0.0' max='1.0' bdresolution='-1' automationEnabled='false' value='0.33'>
      <line name='' version='2' max='1.0' min='0.0' bdresolution='-1' color='-8355712' rightBound='false' endPointsLinked='false'>
        <linePoint x='0.0' y='0.33'/>
      </line>
    </parameter>
    <parameter uniqueId='1998711817' name='mix' label='' min='0.0' max='1.0' bdresolution='0.1' automationEnabled='false' value='0.0'>
      <line name='' version='2' max='1.0' min='0.0' bdresolution='0.1' color='-8355712' rightBound='false' endPointsLinked='false'>
        <linePoint x='0.0' y='0.0'/>
      </line>
    </parameter>
    <parameter uniqueId='1998711819' name='flip channels' label='' min='0.0' max='1.0' bdresolution='1' automationEnabled='false' value='0.0'>
      <line name='' version='2' max='1.0' min='0.0' bdresolution='1' color='-8355712' rightBound='false' endPointsLinked='false'>
        <linePoint x='0.0' y='0.0'/>
      </line>
    </parameter>
    <parameter uniqueId='1998711821' name='depth' label='' min='0.0' max='2.0' bdresolution='0.1' automationEnabled='false' value='0.6'>
      <line name='' version='2' max='2.0' min='0.0' bdresolution='0.1' color='-8355712' rightBound='false' endPointsLinked='false'>
        <linePoint x='0.0' y='0.6'/>
      </line>
    </parameter>
  </parameterList>
</effect>