HISE Logo Forum
    • Categories
    • Register
    • Login
    1. HISE
    2. xander
    3. Best
    X
    • Profile
    • Following 0
    • Followers 0
    • Topics 10
    • Posts 19
    • Groups 0

    Posts

    Recent Best Controversial
    • 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