HISE Logo Forum
    • Categories
    • Register
    • Login
    1. HISE
    2. xander
    X
    • Profile
    • Following 0
    • Followers 0
    • Topics 12
    • Posts 25
    • Groups 0

    xander

    @xander

    8
    Reputation
    10
    Profile views
    25
    Posts
    0
    Followers
    0
    Following
    Joined
    Last Online

    xander Unfollow Follow

    Best posts made by xander

    • Sinefold distortion

      For anyone who wants it.
      Here is a simple sinefold distortion, with a hardclip threshold

      //Xander'
      import("stdfaust.lib");
      
      //sinefold function
      distortion(x) = aa.sine(strength * x) 
      with {
      	strength = hslider("strength", 1, 1,100,0.01) : si.smooth(0.999);
      };
      
      //clip function
      clip = min(thresh_linear) : max(0 - thresh_linear)
      with {
      	threshold = hslider("threshold", -0.3, -100,0, 0.01) : si.smooth(0.999);
      	thresh_linear = pow(10, threshold/ 20);
      }; 
      
      //variable for individual input, including effect and input and output gain
      stereo = *(pregain_linear) : (distortion : clip) * postgain_linear
      with {
      
      	pregain = hslider("pregain", 1, -100,20,0.01) : si.smooth(0.999);
      	pregain_linear = ba.db2linear(pregain);
      
      	postgain = hslider("postgain", 0, -100,20,0.01) : si.smooth(0.999);
      	postgain_linear = ba.db2linear(postgain);
      };
      
      process = stereo, stereo;
      
      posted in Faust Development
      X
      xander
    • Stereo lofi dropout effect.

      This is just a super simple stereo dropout effect, but I hope it can be of help to someone to get an idea on how to do it. If you have any ideas to improve it let me know!

      import("stdfaust.lib");
      import("noises.lib");
      
      process = signalL, signalR;
      
      //======================================================= dropouts
      clamp(nmin, nmax) = min(nmax) : max(nmin);
      
      dropout_noiseL(rate) =
          lfnoise(rate+0.6) + lfnoise(rate) : clamp(0, 1);
      dropout_noiseR(rate) =
          lfnoise(rate+0.5) + lfnoise(rate) : clamp(0, 1);
      
      
      //dropout_curve, number between 1.2 and 10
      dropout_nonlinear(rate, intensity, dropout_curve, phase) = 
          -tanh(
          ba.if(phase < 1, 
          dropout_noiseL(rate),
          dropout_noiseR(rate))
          * dropout_curve - dropout_curve)
          + (1 - intensity);
      
      
      dropout(phase, x) = x * (dropout_nonlinear(r, strength, curve, phase))
      with{
          r = hslider("rate", 1, 0.4, 10, 0.01);
          strength = hslider("intensity", 0, 0, 1, 0.01);
          curve = hslider("curve", 4, 1.4, 10, 0.01);
      };
      
      signalL = dropout(0);
      signalR = dropout(2);
      
      posted in Faust Development
      X
      xander
    • AudioAnalyser in Floating tile LAG!

      In HISE version 3.6, when I used a floating tile set to audio analyser (specifically the spectral analyser or index 2), I could easily run higher sample sizes with 0 to no lag. In HISE 4, however, if the spectral analyser has a sample size higher or equal to 8192, it causes the program to drop a huge amount of frames (this is not a PC thing; my RAM and my CPU are barely touched). Is there some setting I can change to fix this issue?

      posted in General Questions
      X
      xander

    Latest posts made by xander

    • RE: Does Hise compile down to C++?

      @d-healey haha, only half the plugin's authorization is written on the plugin, we are routing it through our website's API, so it'll be a lot safer already, was just wondering if I had to do anything else to ensure even more security.

      posted in General Questions
      X
      xander
    • RE: Does Hise compile down to C++?

      @Christoph-Hart, that was exactly what I was wondering, thanks!

      posted in General Questions
      X
      xander
    • RE: Does Hise compile down to C++?

      @d-healey was curious if the JS scripts were exposed, as my plugin's authentication script is written in JS.

      posted in General Questions
      X
      xander
    • Does Hise compile down to C++?

      For the security of a plugin, does any written JS in HISE compile down to C++?

      posted in General Questions
      X
      xander
    • RE: Oversampling Softclipper

      @Lindon I'm using the aa(anti-aliased) library. The effect is a parallel distortion, but it doesn't have any aliasing issues; it's only when pushing audio into the softclipper within it that it starts having aliasing issues.

      posted in ScriptNode
      X
      xander
    • Oversampling Softclipper

      I've been trying to create a softclipper for my plugin, however, my biggest issue is aliasing, I am using faust, and none of the faust libraries have good enough anti-aliasing. Putting a faust node through an oversampling node also seems to have no effect (except 8x shifts the frequencies up for some reason). I know you can put a math.clip node in an oversampled node, but I want softclipping not hardclipping. Does anyone have a solution?

      posted in ScriptNode
      X
      xander
    • RE: Animation lag.

      @ustk This didn't fix it completely, but it definitely helped a lot, thank you

      posted in General Questions
      X
      xander
    • RE: Animation lag.

      @Christoph-Hart, I'm developing in Windows, and it seems to correlate directly to how fast my PC is running. Now, I am doing this with knobs. Would turning them into Lottie animations fix this, possibly?

      posted in General Questions
      X
      xander
    • Animation lag.

      I am working on a cassette plugin that has wheels that are animated. For some reason, the wheels stutter and aren't smooth. I'm thinking the culprit is the absence of delta time, but I'm not sure. This is the code:

      Content.makeFrontInterface(900, 600);
      
      const var wheel_timer = Engine.createTimerObject();
      const var wheel = Content.getComponent("wheel");
      const var wheel1_b = Content.getComponent("wheel1_b");
      const var wheel2_b = Content.getComponent("wheel2_b");
      
      
      const var wheel2 = Content.getComponent("wheel2");
      var i = 100;
      var j = 100;
      
      wheel_timer.setTimerCallback(function()
      {
      	i = i - 1;
      	
      	if (i%2 == 0) {
      		j -= 1;
      	};
      	
      	if (i > 1) {	
      		wheel.setValue(i);
      		wheel2_b.setValue(i);
      	} else {
      		i = 100;
      	};
      	
      	if (j > 1) {	
      			wheel2.setValue(j);
      			wheel1_b.setValue(j);
      		} else {
      			j = 100;
      		};
      	
      	
      });
      
      wheel_timer.startTimer(20);
      
      posted in General Questions
      X
      xander
    • Stereo lofi dropout effect.

      This is just a super simple stereo dropout effect, but I hope it can be of help to someone to get an idea on how to do it. If you have any ideas to improve it let me know!

      import("stdfaust.lib");
      import("noises.lib");
      
      process = signalL, signalR;
      
      //======================================================= dropouts
      clamp(nmin, nmax) = min(nmax) : max(nmin);
      
      dropout_noiseL(rate) =
          lfnoise(rate+0.6) + lfnoise(rate) : clamp(0, 1);
      dropout_noiseR(rate) =
          lfnoise(rate+0.5) + lfnoise(rate) : clamp(0, 1);
      
      
      //dropout_curve, number between 1.2 and 10
      dropout_nonlinear(rate, intensity, dropout_curve, phase) = 
          -tanh(
          ba.if(phase < 1, 
          dropout_noiseL(rate),
          dropout_noiseR(rate))
          * dropout_curve - dropout_curve)
          + (1 - intensity);
      
      
      dropout(phase, x) = x * (dropout_nonlinear(r, strength, curve, phase))
      with{
          r = hslider("rate", 1, 0.4, 10, 0.01);
          strength = hslider("intensity", 0, 0, 1, 0.01);
          curve = hslider("curve", 4, 1.4, 10, 0.01);
      };
      
      signalL = dropout(0);
      signalR = dropout(2);
      
      posted in Faust Development
      X
      xander