legatos giving me unwanted glissandos in Yosemite

edited January 2016 in Windcontrollers
Hi,



I have mostly the default Viola settings, had not changed any related to portamento, etc., and for now I need just legatos (no glissandos anywhere).



Happily, that's the behavior I got in OSX 10.7.5-Lion (SWAM 32 bits), and a WX5 constroller, regardless of how softly I played the 2nd note (so the low note-on velocity of the 2nd note did not trigger glissandos).



However, now I installed my 2nd copy of the Viola on OSX 10.10.4-Yosemite (SWAM 64 bits), and loaded the settings I had been using in Lion, but I get glissandos all over... Following the manual, I tried increasing the port/legato threshhold to 4.0 (max), but I still get glissandos unless I play the 2nd note abruptly. So,



(1) why does it behave differently in Lion and Yosemite



(2) how should I change my settings to get all legatos? (I put my viola.swam below)



(3) why is the algorithm choosing glissando based on a soft attack in the 2nd note? Seems like an arbitrary musical choice, which will not always work (e.g., within the same piece, one may need - but not everywhere - the opposite, with "loud glissandos", or "gentle legatos").



Thanks!

Daniel



---

viola.swam:

I tried to attach the .swam, but the BB doesn't like .swam, .txt, or .xml, so I pasted it next:


</s>&lt;?xml version="1.0" encoding="UTF-8"?&gt; &lt;swam type="Strings" version="1"&gt; &lt;datetime value="Sat Dec 26 21:11:24 2015&#10;"/&gt; &lt;program value="viola-dch"&gt; &lt;param name="bowForceParam" index="24" value="0.5"/&gt; &lt;param name="symphResParam" index="29" value="0.5"/&gt; &lt;param name="stickinessParam" index="30" value="0.5"/&gt; &lt;param name="bowNoiseParam" index="31" value="0.5"/&gt; &lt;param name="bowPositionParam" index="25" value="0.49999997"/&gt; &lt;param name="PizzTone" index="26" value="0.5"/&gt; &lt;param name="bowRandomPosParam" index="32" value="0.5"/&gt; &lt;param name="playModeParam" index="33" value="0"/&gt; &lt;param name="gestureModeParam" index="34" value="0"/&gt; &lt;param name="polyphonyParam" index="35" value="1"/&gt; &lt;param name="dblHoldStrSelection" index="36" value="0"/&gt; &lt;param name="sordinoParam" index="37" value="0"/&gt; &lt;param name="altFingParam" index="38" value="0"/&gt; &lt;param name="bowLiftParam" index="39" value="0"/&gt; &lt;param name="bowStartParam" index="40" value="0"/&gt; &lt;param name="tremoloParam" index="42" value="0"/&gt; &lt;param name="tremoloSpeed" index="44" value="0.5"/&gt; &lt;param name="tremoloMode" index="43" value="0.5"/&gt; &lt;param name="harmonicsParam" index="41" value="0"/&gt; &lt;param name="interactiveBowing" index="45" value="0.699999988"/&gt; &lt;param name="ensembleElements" index="46" value="1"/&gt; &lt;param name="portamSplitRatioParam" index="15" value="0.5"/&gt; &lt;param name="autoDetectionTime" index="50" value="0.100000001"/&gt; &lt;param name="KSmidiCH" index="133" value="0"/&gt; &lt;param name="mainVolume" index="0" value="0.768999994"/&gt; &lt;param name="panPot" index="1" value="0.5"/&gt; &lt;param name="panpotType" index="20" value="0"/&gt; &lt;param name="ksOctTrasp" index="21" value="0.5"/&gt; &lt;param name="ksMode" index="47" value="1"/&gt; &lt;param name="ksVelRemap" index="48" value="0.5"/&gt; &lt;param name="BCmode" index="22" value="0"/&gt; &lt;param name="BC_AtkSens" index="23" value="0.333333343"/&gt; &lt;param name="masterTune" index="2" value="0.476190478"/&gt; &lt;param name="transposeParam" index="5" value="0.5"/&gt; &lt;param name="pitchBendDown" index="7" value="0.166666672"/&gt; &lt;param name="pitchBendUp" index="6" value="0.166666672"/&gt; &lt;param name="reverbTime" index="4" value="0.5"/&gt; &lt;param name="reverbMix" index="3" value="0.5"/&gt; &lt;param name="vibratoRate" index="17" value="0.2890625"/&gt; &lt;param name="vibratoRateRand" index="18" value="0.300000012"/&gt; &lt;param name="ManualTremoloMode" index="134" value="0.166666672"/&gt; &lt;param name="randomFinger" index="9" value="0.5"/&gt; &lt;param name="dynamicTransitions" index="10" value="0.5"/&gt; &lt;param name="attackType" index="11" value="1"/&gt; &lt;param name="stringRes" index="28" value="0.5"/&gt; &lt;param name="atkRampTime" index="12" value="0.5"/&gt; &lt;param name="sustainRamp" index="13" value="0"/&gt; &lt;param name="sustainLatch" index="49" value="0"/&gt; &lt;param name="maxPortime" index="16" value="0.5"/&gt; &lt;param name="pizzModl" index="27" value="0.75"/&gt; &lt;param name="expressionDynType" index="19" value="0.400000006"/&gt; &lt;param name="portamentoController" index="14" value="0"/&gt; &lt;param name="MIDIvalMax13" index="132" value="1"/&gt; &lt;param name="expressionCC" index="81" value="0.0078125"/&gt; &lt;param name="vibratoDepthCC" index="82" value="0.0078125"/&gt; &lt;param name="vibratoRateCC" index="83" value="0.0078125"/&gt; &lt;param name="portamentoTimeCC" index="84" value="0.03125"/&gt; &lt;param name="portamentoSplitCC" index="85" value="1"/&gt; &lt;param name="bowPressureCC" index="87" value="1"/&gt; &lt;param name="bowPositionCC" index="88" value="1"/&gt; &lt;param name="atkRampTimeCC" index="103" value="1"/&gt; &lt;param name="realMonoCC" index="102" value="1"/&gt; &lt;param name="dynamicTransitionsCC" index="86" value="1"/&gt; &lt;param name="tremoloSpeedCC" index="101" value="1"/&gt; &lt;param name="mainVolumeCC" index="76" value="1"/&gt; &lt;param name="panPotCC" index="77" value="1"/&gt; &lt;param name="reverbMixCC" index="78" value="1"/&gt; &lt;param name="microTuningCC" index="79" value="1"/&gt; &lt;param name="sustainCC" index="80" value="0.4921875"/&gt; &lt;param name="sordinoCC" index="93" value="1"/&gt; &lt;param name="playModeCC" index="89" value="1"/&gt; &lt;param name="gestureModeCC" index="90" value="1"/&gt; &lt;param name="polyCC" index="91" value="1"/&gt; &lt;param name="dblHoldStrSelectionCC" index="92" value="1"/&gt; &lt;param name="altFingCC" index="94" value="1"/&gt; &lt;param name="bowLiftCC" index="95" value="1"/&gt; &lt;param name="bowStartCC" index="96" value="1"/&gt; &lt;param name="harmonicsCC" index="97" value="1"/&gt; &lt;param name="relRampCC" index="98" value="1"/&gt; &lt;param name="tremoloCC" index="99" value="1"/&gt; &lt;param name="tremoloModeCC" index="100" value="1"/&gt; &lt;param name="bowNoiseCC" index="104" value="0"/&gt; &lt;param name="MIDIvalMin13" index="118" value="1"/&gt; &lt;param name="MIDIvalMin0" index="105" value="0"/&gt; &lt;param name="MIDIvalMax0" index="119" value="0.787400007"/&gt; &lt;param name="MIDIvalMin1" index="106" value="0.291337997"/&gt; &lt;param name="MIDIvalMax1" index="120" value="1"/&gt; &lt;param name="MIDIvalMin2" index="107" value="0"/&gt; &lt;param name="MIDIvalMax2" index="121" value="1"/&gt; &lt;param name="MIDIvalMin3" index="108" value="0"/&gt; &lt;param name="MIDIvalMax3" index="122" value="1"/&gt; &lt;param name="MIDIvalMin4" index="109" value="0"/&gt; &lt;param name="MIDIvalMax4" index="123" value="1"/&gt; &lt;param name="MIDIvalMin5" index="110" value="0"/&gt; &lt;param name="MIDIvalMax5" index="124" value="1"/&gt; &lt;param name="MIDIvalMin6" index="111" value="0"/&gt; &lt;param name="MIDIvalMax6" index="125" value="1"/&gt; &lt;param name="MIDIvalMin7" index="112" value="0"/&gt; &lt;param name="MIDIvalMax7" index="126" value="1"/&gt; &lt;param name="MIDIvalMin8" index="113" value="0"/&gt; &lt;param name="MIDIvalMax8" index="127" value="1"/&gt; &lt;param name="MIDIvalMin9" index="114" value="0"/&gt; &lt;param name="MIDIvalMax9" index="128" value="1"/&gt; &lt;param name="MIDIvalMin10" index="115" value="0"/&gt; &lt;param name="MIDIvalMax10" index="129" value="1"/&gt; &lt;param name="MIDIvalMin11" index="116" value="0"/&gt; &lt;param name="MIDIvalMax11" index="130" value="1"/&gt; &lt;param name="MIDIvalMin12" index="117" value="0"/&gt; &lt;param name="MIDIvalMax12" index="131" value="1"/&gt; &lt;param name="temperam" index="51" value="0.5"/&gt; &lt;param name="stringsInterval3" index="138" value="0"/&gt; &lt;param name="vibratoFadeIn" index="135" value="1"/&gt; &lt;param name="stringsInterval1" index="136" value="1"/&gt; &lt;param name="stringsInterval2" index="137" value="1"/&gt; &lt;param name="microtune0" index="52" value="0.0833333358"/&gt; &lt;param name="mtstatus0" index="64" value="0"/&gt; &lt;param name="microtune1" index="53" value="0.0833333358"/&gt; &lt;param name="mtstatus1" index="65" value="0"/&gt; &lt;param name="microtune2" index="54" value="0.0833333358"/&gt; &lt;param name="mtstatus2" index="66" value="0"/&gt; &lt;param name="microtune3" index="55" value="0.0833333358"/&gt; &lt;param name="mtstatus3" index="67" value="0"/&gt; &lt;param name="microtune4" index="56" value="0.0833333358"/&gt; &lt;param name="mtstatus4" index="68" value="0"/&gt; &lt;param name="microtune5" index="57" value="0.0833333358"/&gt; &lt;param name="mtstatus5" index="69" value="0"/&gt; &lt;param name="microtune6" index="58" value="0.0833333358"/&gt; &lt;param name="mtstatus6" index="70" value="0"/&gt; &lt;param name="microtune7" index="59" value="0.0833333358"/&gt; &lt;param name="mtstatus7" index="71" value="0"/&gt; &lt;param name="microtune8" index="60" value="0.0833333358"/&gt; &lt;param name="mtstatus8" index="72" value="0"/&gt; &lt;param name="microtune9" index="61" value="0.0833333358"/&gt; &lt;param name="mtstatus9" index="73" value="0"/&gt; &lt;param name="microtune10" index="62" value="0.0833333358"/&gt; &lt;param name="mtstatus10" index="74" value="0"/&gt; &lt;param name="microtune11" index="63" value="0.0833333358"/&gt; &lt;param name="mtstatus11" index="75" value="0"/&gt; &lt;param name="IRselected" index="8" value="0"/&gt; &lt;/program&gt; &lt;/swam&gt; <e>

Comments

  • edited 10:11PM
    dchapiro wrote: Happily, that's the behavior I got in OSX 10.7.5-Lion (SWAM 32 bits), and a WX5 constroller, regardless of how softly I played the 2nd note (so the low note-on velocity of the 2nd note did not trigger glissandos).
    (How) did you check, that the WX5 really creates a low note-on velocity when playing very soft ? (For a soft sound, a low expression value is sufficient.)



    -Michael
  • edited 10:11PM
    It is very weird that the Viola behaves differently on two OSX versions.



    Please note that all Samplemodeling instruments use this technique when the transition time is controlled by the velocity:

    - for staccato notes, the velocity controls the attack strength

    - for legato (i.e. connected or overlapped) notes, the velocity controls the portamento/transition time



    Usually, when using a Wind Controller, it is better to control the Port.Time from a MIDI CC instead of controlling it with the note-on velocity. Unfortunately we forgot to automatically set the Port.Time to CC for the Default Wind Controller preset. We will fix it in the next update.



    So, turning back to your issue, please set the "Port.Time" parameter to "CC" (main GUI) and assign the "Portamento Time" parameter to the CC number you desire (or set it to "Not mapped") in the "MIDI mapping" page . You can change the "direction" of the control inverting the Min/Max values (e.g. if Min = 127 and Max = 0, increasing your control will decrease the CC value from 127 to 0).



    Best!

    Emanuele

    SWAM team
  • edited 10:11PM
    Thanks for your fast replies, Michael and Emanuele! I tried, but either I am missing something, or there's a bug:

    ---



    Michael,

    Yes, I have checked the velocity, and it is a small number for a note played softly. In regards to loudness, the only other info the WX5 sends are BC CCs. Since those come later, and can be on the sparse side (depending on blow variation rate), I think WX5-driven instruments should rely on the note-on velocity for how loud to start playing, independently of articulation.

    ---



    Emanuele,

    I tried what you advised, but I still get unwanted glissandos. So far I tried this:

    Port/Leg Thresh =
    * 4.0 (max), 1.0 (min), 2.5 (default)
    Midi Port. Time =
    * CC5 (the default that The Viola had for BC), w/min/max = 0/127 (default), 0/0, 127/127

    * Not mapped

    Not sure what else I can try, but I can't play it like this... Does the different behavior in 32 and 64 bits (w/identical .swam) suggests a bug in 64 bits? Can you test the 64 bit SWAM Viola w/an EWI or WX, to see if you can get legatos?



    Thanks!

    Daniel



    PS: now that I think of it, I'm not sending CC5's (in Lion nor Yosemite), so that's not a variable.

Leave a Comment

Rich Text Editor. To edit a paragraph's style, hit tab to get to the paragraph menu. From there you will be able to pick one style. Nothing defaults to paragraph. An inline formatting menu will show up when you select text. Hit tab to get into that menu. Some elements, such as rich link embeds, images, loading indicators, and error messages may get inserted into the editor. You may navigate to these using the arrow keys inside of the editor and delete them with the delete or backspace key.