Forum

    • Register
    • Login
    • Search
    • Categories

    Table Envelope Velocity Attack Modulation Bug

    Bug Reports
    2
    6
    1149
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • d.healey
      d.healey last edited by d.healey

      I've discovered a bug with the table envelope when using a velocity attack modulator, it only seems to happen with a low attack time (upto about 25ms). It's probably best to just try the example I'm posting to see the results. Basically if you play a velocity above 64 you get silence.

      <?xml version="1.0" encoding="UTF-8"?>
      
      <Processor Type="SynthChain" ID="Master Chain" Bypassed="0" Gain="1" Balance="0"
                 VoiceLimit="64" KillFadeTime="20" IconColour="0" packageName=""
                 views="32.rk1bzA..........................PFQfDKe...." currentView="-1">
        <EditorStates BodyShown="0" Visible="1" Solo="0" Folded="0" InterfaceShown="0"/>
        <ChildProcessors>
          <Processor Type="MidiProcessorChain" ID="Midi Processor" Bypassed="0">
            <EditorStates BodyShown="1" Visible="0" Solo="0" Folded="1"/>
            <ChildProcessors/>
          </Processor>
          <Processor Type="ModulatorChain" ID="GainModulation" Bypassed="0" Intensity="1">
            <EditorStates BodyShown="1" Visible="0" Solo="0" Folded="1"/>
            <ChildProcessors/>
          </Processor>
          <Processor Type="ModulatorChain" ID="PitchModulation" Bypassed="1" Intensity="0">
            <EditorStates BodyShown="1" Visible="0" Solo="0" Folded="1"/>
            <ChildProcessors/>
          </Processor>
          <Processor Type="EffectChain" ID="FX" Bypassed="0">
            <EditorStates BodyShown="1" Visible="0" Solo="0" Folded="1"/>
            <ChildProcessors/>
          </Processor>
          <Processor Type="SineSynth" ID="Sine Wave Generator" Bypassed="0" Gain="0.25"
                     Balance="0" VoiceLimit="128" KillFadeTime="20" IconColour="0"
                     OctaveTranspose="0" SemiTones="0" UseFreqRatio="0" CoarseFreqRatio="1"
                     FineFreqRatio="0" SaturationAmount="0">
            <EditorStates BodyShown="1" Visible="1" Solo="0" GainModulationShown="1"/>
            <ChildProcessors>
              <Processor Type="MidiProcessorChain" ID="Midi Processor" Bypassed="0">
                <EditorStates BodyShown="1" Visible="0" Solo="0" Folded="1"/>
                <ChildProcessors/>
              </Processor>
              <Processor Type="ModulatorChain" ID="GainModulation" Bypassed="0" Intensity="1">
                <EditorStates BodyShown="1" Visible="1" Solo="0" Folded="0"/>
                <ChildProcessors>
                  <Processor Type="TableEnvelope" ID="Table Envelope" Bypassed="0" Intensity="1"
                             Attack="1" Release="530.09998" AttackTableData="24...............vO...f+....9C...yO"
                             ReleaseTableData="24..........9C...vO...f+.........3O">
                    <EditorStates BodyShown="1" Visible="1" Solo="0"/>
                    <ChildProcessors>
                      <Processor Type="ModulatorChain" ID="AttackTime Modulation" Bypassed="0"
                                 Intensity="1">
                        <EditorStates BodyShown="1" Visible="1" Solo="0" Folded="0"/>
                        <ChildProcessors>
                          <Processor Type="Velocity" ID="Velocity Modulator" Bypassed="0" Intensity="1"
                                     UseTable="1" Inverted="0" DecibelMode="0" VelocityTableData="36......LyLy8C...vOPHY.+.........vO...f+.........vO">
                            <EditorStates BodyShown="1" Visible="1" Solo="0"/>
                            <ChildProcessors/>
                          </Processor>
                        </ChildProcessors>
                      </Processor>
                      <Processor Type="ModulatorChain" ID="ReleaseTime Modulation" Bypassed="0"
                                 Intensity="1">
                        <EditorStates BodyShown="1" Visible="0" Solo="0" Folded="1"/>
                        <ChildProcessors/>
                      </Processor>
                    </ChildProcessors>
                  </Processor>
                </ChildProcessors>
              </Processor>
              <Processor Type="ModulatorChain" ID="PitchModulation" Bypassed="0" Intensity="0">
                <EditorStates BodyShown="1" Visible="0" Solo="0" Folded="1"/>
                <ChildProcessors/>
              </Processor>
              <Processor Type="EffectChain" ID="FX" Bypassed="0">
                <EditorStates BodyShown="1" Visible="0" Solo="0" Folded="1"/>
                <ChildProcessors/>
              </Processor>
            </ChildProcessors>
            <RoutingMatrix NumSourceChannels="2" Channel0="0" Send0="-1" Channel1="1" Send1="-1"/>
          </Processor>
        </ChildProcessors>
        <RoutingMatrix NumSourceChannels="2" Channel0="0" Send0="-1" Channel1="1" Send1="-1"/>
        <macro_controls>
          <macro name="Macro 1" value="0" midi_cc="-1"/>
          <macro name="Macro 2" value="0" midi_cc="-1"/>
          <macro name="Macro 3" value="0" midi_cc="-1"/>
          <macro name="Macro 4" value="0" midi_cc="-1"/>
          <macro name="Macro 5" value="0" midi_cc="-1"/>
          <macro name="Macro 6" value="0" midi_cc="-1"/>
          <macro name="Macro 7" value="0" midi_cc="-1"/>
          <macro name="Macro 8" value="0" midi_cc="-1"/>
        </macro_controls>
        <MidiAutomation/>
      </Processor>
      

      Libre Wave - Freedom respecting instruments and effects
      My Patreon - HISE tutorials
      YouTube Channel - Public HISE tutorials

      1 Reply Last reply Reply Quote 0
      • Christoph Hart
        Christoph Hart last edited by Christoph Hart

        Ah yes, when the attack time is too short, it just takes the initial value as interpolated value. This is the reason why 1.0ms is the lowest possible value, but I forgot that you can get lower by multiplying it with a zero modulation value 🙂

        I'll fix this.

        1 Reply Last reply Reply Quote 1
        • d.healey
          d.healey last edited by

          Bump Bump 😄

          Libre Wave - Freedom respecting instruments and effects
          My Patreon - HISE tutorials
          YouTube Channel - Public HISE tutorials

          1 Reply Last reply Reply Quote 0
          • Christoph Hart
            Christoph Hart last edited by

            Yeah sorry I'll try to fix it ASAP.

            1 Reply Last reply Reply Quote 1
            • Christoph Hart
              Christoph Hart last edited by

              There you go:

              https://github.com/christophhart/HISE/commit/f5fbc12351806316fcf14757feb8f43315f5b5ad

              1 Reply Last reply Reply Quote 1
              • d.healey
                d.healey last edited by

                Thank you 🙂

                Libre Wave - Freedom respecting instruments and effects
                My Patreon - HISE tutorials
                YouTube Channel - Public HISE tutorials

                1 Reply Last reply Reply Quote 0
                • First post
                  Last post

                16
                Online

                1.1k
                Users

                6.8k
                Topics

                62.5k
                Posts