HISE Logo Forum
    • Categories
    • Register
    • Login

    Resonance Suppression

    Scheduled Pinned Locked Moved General Questions
    26 Posts 9 Posters 1.0k 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.
    • A
      aaronventure
      last edited by

      Link Preview Image
      analyzers - Faust Libraries

      favicon

      (faustlibraries.grame.fr)

      this seems to b pretty much it. Even the code is there. Split into number of bands and it outputs it as individual outputs, do the processing with par and simply plug the compressor in there.

      Dont forget to wrap the whole thing into par if you need stereo output.

      For the compressor, pick whichever you like but probably the simplest one.

      LindonL 1 Reply Last reply Reply Quote 0
      • LindonL
        Lindon @aaronventure
        last edited by Lindon

        @aaronventure I think the problem there is:

        "A Spectrum-Analyzer is defined here as any band-split whose bands span the relevant spectrum, but whose band-signals do not necessarily sum to the original signal, either exactly or to within an allpass filtering. "

        but yes on the same page this might be a starting point:

        Link Preview Image
        analyzers - Faust Libraries

        favicon

        (faustlibraries.grame.fr)

        HISE Development for hire.
        www.channelrobot.com

        A 1 Reply Last reply Reply Quote 0
        • A
          aaronventure @Lindon
          last edited by aaronventure

          @Lindon true. It's worth testing and hearing the results. Maybe the differences are acceptable. You are, after all, gonna be doing some serious processing (Soothe ain't no joke).

          If it sounds super bad, it's likely time for a custom solution. Keep in mind that the whole library is open source and and you can actually dive in and see how specific modules were made, recreate them and make modifications.

          Link Preview Image
          GitHub - grame-cncm/faustlibraries: The Faust libraries

          The Faust libraries. Contribute to grame-cncm/faustlibraries development by creating an account on GitHub.

          favicon

          GitHub (github.com)

          But some of the stuff that I toyed with was pretty good. The pitch tracker is super accurate and super fast, even for very low pitches.

          orangeO 1 Reply Last reply Reply Quote 0
          • orangeO
            orange @aaronventure
            last edited by

            @aaronventure said in Resonance Suppression:

            But some of the stuff that I toyed with was pretty good. The pitch tracker is super accurate and super fast, even for very low notes.

            Can this be a guitar tuner?

            develop Branch / XCode 13.1
            macOS Monterey / M1 Max

            A 1 Reply Last reply Reply Quote 0
            • A
              aaronventure @orange
              last edited by aaronventure

              @orange And a very good one, yeah.

              import("stdfaust.lib");
              
              timing = 0.005;
              
              process = _, _ :> an.pitchTracker(1, timing) : si.smoo<: _, _  ;
              

              Probably better to not actually be processing it, but to output it with the pin using vbargaph.

              orangeO 1 Reply Last reply Reply Quote 0
              • orangeO
                orange @aaronventure
                last edited by

                @aaronventure What does it need to automate to display the note value?

                develop Branch / XCode 13.1
                macOS Monterey / M1 Max

                A 1 Reply Last reply Reply Quote 0
                • A
                  aaronventure @orange
                  last edited by aaronventure

                  @orange You make a node in scriptnode, feed it with the audio and this thing spits out the detected frequency. It goes a bit off on lower notes but it seems to have an error curve so do a bit of Excel and figure it out, then apply the correction.

                  You probably want to wrap it into a modchain node so that it doesn't actually affect the audio. You can then just cable this back to your interface using global cables and do the math to convert the frequency to semitones+cents.

                  O 1 Reply Last reply Reply Quote 1
                  • O
                    Orvillain @aaronventure
                    last edited by

                    @aaronventure Is there a good beginner tutorial on how to use Faust within HISE?

                    A 1 Reply Last reply Reply Quote 0
                    • A
                      aaronventure @Orvillain
                      last edited by

                      @Orvillain No idea. It's similar to the playground, and HISE will yell at you whenever you mess up.

                      I suggest reading this thread https://forum.hise.audio/topic/6505/faust-is-here/64 and as many threads as you can in the Faust subforum while giving whatever you want to do a try.

                      Read the syntax docs and the library docs in their entirety:

                      https://faustdoc.grame.fr/manual/syntax/#faust-syntax
                      https://faustlibraries.grame.fr/

                      The core idea of Faust seems to be to not only provide a very fast and efficient language for realtime DSP but also to provide a huge library of building blocks so you can build stuff very fast. It's therefore paramount that you read the entire library so you can be aware of all the options available to you. You won't remember it all, but when you encounter a problem you might have a vague recollection of reading something and it'll prompt you to go look through the library. Eventually you'll learn it well, just like the HISE API.

                      It's a big toybox, so get playin'. And whenever you're ready to go dive in deep and do stuff from the ground up, it's there for you.

                      The only thing that I haven't figured out so far is whether it's possible to store data between blocks (like variables).

                      O 1 Reply Last reply Reply Quote 1
                      • O
                        Orvillain @aaronventure
                        last edited by

                        @aaronventure Nice one cheers!!

                        1 Reply Last reply Reply Quote 0
                        • JulesVJ
                          JulesV @orange
                          last edited by JulesV

                          @orange said in Resonance Suppression:

                          Faust constantly surprises me 😀

                          Here is a spectral denoiser article: https://inria.hal.science/hal-04507625/document

                          I haven’t tested the sound tho.

                          @orange Sorry for the long time follow-up question, did you manage to do this?

                          mmprodM 1 Reply Last reply Reply Quote 1
                          • mmprodM
                            mmprod @JulesV
                            last edited by

                            @JulesV I would also like to know this- I believe I tried using this before but it didn’t work in HISE. It only worked in the JSpatcher mentioned in the article

                            For God so loved the world that he gave his one and only Son, that whoever believes in him shall not perish but have eternal life.
                            John 3:16

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

                            14

                            Online

                            1.7k

                            Users

                            11.8k

                            Topics

                            102.6k

                            Posts