Forum
    • Categories
    • Register
    • Login

    Is it possible to implement EQ Match / FFT Analysis functionality in HISE?

    Scheduled Pinned Locked Moved Scripting
    3 Posts 3 Posters 18 Views
    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.
    • SawatakashiS
      Sawatakashi
      last edited by

      I'm working on a “high-end” guitar processing plugin and I need to implement an EQ Match function to allow users to capture a reference tone.

      Since HISE doesn't have a native "EQ Match" module, I'm considering the following approach:

      Using FFT to analyze both the "Source" and "Reference" signals.

      Calculating the magnitude difference to generate a compensation curve.

      Applying that curve via a high-resolution FIR filter or a series of peak filters.

      Does the current Scriptnode API support efficient buffer handling for this kind of FFT analysis? Or is it mandatory to write a custom C++ node for the matching logic?

      If anyone has experience with FFT-based DSP in HISE, I’d love to hear your thoughts on the best workflow to achieve a "finished product" sound without killing the CPU.

      Best regards,

      I love HISE!
      M4 MacOS Sequoia// Windows 11
      HISE 4.1.0

      griffinboyG ustkU 2 Replies Last reply Reply Quote 0
      • griffinboyG
        griffinboy @Sawatakashi
        last edited by griffinboy

        @Sawatakashi

        it can be done in c++ for Hise.

        As for doing it in Hisescript, you can probably approximate it. I think that you can do FFT analysis on a signal in Hisescript, which will give you the spectral info you need in order to compute the difference between your target and source.
        But the more fiddly part would be the actual filtering, if you want it to be precise you probably have to use c++

        You'll need to set up a whole complex chain of things though to do this Hise-Side.

        1 Reply Last reply Reply Quote 1
        • ustkU
          ustk @Sawatakashi
          last edited by

          @Sawatakashi I can't get you a far advanced response, but basically yes, you'll have to go C++ and probably a SIMD integration regarding the efficiency.

          But yeah that's probably how I'd do it, not knowing if there's a better (and accessible) method.

          Since a C++ node gives you access to Hise API, Juce API, and any third party library you'll want to import, Hise won't be the bottleneck.

          Hise made me an F5 dude, any other app just suffers...

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

          18

          Online

          2.2k

          Users

          13.3k

          Topics

          115.3k

          Posts