HISE Logo Forum
    • Categories
    • Register
    • Login

    HISE FX and delay compensation

    Scheduled Pinned Locked Moved General Questions
    51 Posts 9 Posters 2.9k 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.
    • FortuneF
      Fortune @Christoph Hart
      last edited by

      First of all, you did it, well done @Christoph-Hart !

      I am pretty impressed. Especially calculating the delay time acording to sample rate and ms conversion multiplying is a clever idea. Yeah it needs some improvements but you did most of the thing. As you can see, you can do it.

      My check is that:

      Windows:

      • It works well on Cubase 10, Reaper 5, Ableton 10, Studio One 4.5, Pro Tools 2019 Ultimate!
      • In FL Studio 12 & 20- it fails again. I hear 200 ms latency unfortunately :/

      Mac

      • Reaper, Ableton, Studio One, Pro Tools did it very good.
      • In Logic Pro X, When you insert the plugin in the channel, it takes approximately 2 seconds to sync. You can hear fade of the phase shift before synching, after 2 seconds it is in sync. This fade time can be disturbing to some users. You can improve it.
      • FL Studio 20 - fails again. I hear 200 ms latency unfortunately :/

      Also I have some questions;

      • To calculate the delay time , can we take the delay time of the plugin with "getlatency" and use it on "setLatency"?
      • I tried that code in "if / else statement" but it doesn't work properly. I usedin different oversampling modes, delay time changes when OS is on and off. For setLatency, only first statement works. Can that be done?
      1 Reply Last reply Reply Quote 0
      • Christoph HartC
        Christoph Hart
        last edited by

        You can improve it

        How? I am not the Logic developer.

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

          @Christoph-Hart said in HISE FX and delay compensation:

          You can improve it

          How? I am not the Logic developer.

          You are right, it seems like it is a Logic issue.
          https://forum.juce.com/t/logic-pro-x-midi-fx-plug-in-latency-compensation-timeshift/23855

          What about FL Studio?

          1 Reply Last reply Reply Quote 0
          • lalalandsynthL
            lalalandsynth
            last edited by

            What is the status of this issue ?
            Do I need to need to do anything manually to take care of latency or does Hise take care of that ?

            https://lalalandaudio.com/

            https://lalalandsynth.com/

            https://www.facebook.com/lalalandsynth

            https://www.facebook.com/lalalandsynth

            lalalandsynthL 1 Reply Last reply Reply Quote 0
            • lalalandsynthL
              lalalandsynth @lalalandsynth
              last edited by

              @lalalandsynth nudge topic.

              https://lalalandaudio.com/

              https://lalalandsynth.com/

              https://www.facebook.com/lalalandsynth

              https://www.facebook.com/lalalandsynth

              1 Reply Last reply Reply Quote 0
              • Dan KorneffD
                Dan Korneff @Fortune
                last edited by

                @Fortune said in HISE FX and delay compensation:

                With this way, plugin reports delay compensation to the DAW in the very begining of the initialization.

                Is there a way to adjust delay compensation after a plugin has been initialized? The amount of latency may change depending on the amount/type of modules enabled. It would be nice to be able to compensate for this.

                Dan Korneff - Producer / Mixer / Audio Nerd

                ustkU 1 Reply Last reply Reply Quote 0
                • ustkU
                  ustk @Dan Korneff
                  last edited by

                  @dustbro I wonder if the procedure is not to report the biggest latency, and then compensate IN the plugin for lower latency configuration by adding the difference...
                  I reckon I've seen that one day but not 100% sure...

                  Can't help pressing F5 in the forum...

                  Dan KorneffD 1 Reply Last reply Reply Quote 0
                  • Dan KorneffD
                    Dan Korneff @ustk
                    last edited by

                    @ustk said in HISE FX and delay compensation:

                    report the biggest latency, and then compensate IN the plugin

                    Not a bad idea!

                    Dan Korneff - Producer / Mixer / Audio Nerd

                    1 Reply Last reply Reply Quote 0
                    • lalalandsynthL
                      lalalandsynth
                      last edited by

                      Just to be clear , does the plugin not normally compensate for latency unless I do something specific to make it do that ?

                      https://lalalandaudio.com/

                      https://lalalandsynth.com/

                      https://www.facebook.com/lalalandsynth

                      https://www.facebook.com/lalalandsynth

                      Dan KorneffD ustkU 2 Replies Last reply Reply Quote 0
                      • Dan KorneffD
                        Dan Korneff @lalalandsynth
                        last edited by

                        @lalalandsynth said in HISE FX and delay compensation:

                        Just to be clear , does the plugin not normally compensate for latency unless I do something specific to make it do that ?

                        It does not automatically compensate for latency.

                        Dan Korneff - Producer / Mixer / Audio Nerd

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

                          @lalalandsynth I don't think any plugin can compensate its own latency, it's the DAW's job. Plugins can only tell the DAW how much it needs

                          Can't help pressing F5 in the forum...

                          lalalandsynthL 1 Reply Last reply Reply Quote 0
                          • lalalandsynthL
                            lalalandsynth @ustk
                            last edited by

                            @ustk yes, that is what i meant does it report the latency without doing anything specific to make that happen? :)

                            https://lalalandaudio.com/

                            https://lalalandsynth.com/

                            https://www.facebook.com/lalalandsynth

                            https://www.facebook.com/lalalandsynth

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

                              @lalalandsynth Yes the report is automatic. you can also set your own with Engine.setLatencySamples(int latency)

                              Can't help pressing F5 in the forum...

                              Dan KorneffD 1 Reply Last reply Reply Quote 1
                              • Dan KorneffD
                                Dan Korneff @ustk
                                last edited by

                                @ustk said in HISE FX and delay compensation:

                                the report is automatic

                                If I don't set the compensation, my plugins always report a latency of 0. I don't think that's correct, right?

                                Dan Korneff - Producer / Mixer / Audio Nerd

                                ustkU 1 Reply Last reply Reply Quote 0
                                • ustkU
                                  ustk @Dan Korneff
                                  last edited by

                                  @dustbro I might have wrong… I'll test that tomorrow

                                  Can't help pressing F5 in the forum...

                                  1 Reply Last reply Reply Quote 0
                                  • UD AUDIOU
                                    UD AUDIO
                                    last edited by UD AUDIO

                                    This post is deleted!
                                    1 Reply Last reply Reply Quote 0
                                    • Dan KorneffD
                                      Dan Korneff
                                      last edited by Dan Korneff

                                      I could use some suggestions on how to improve my approach to handling latency in my projects. I've currently been manually measuring latency and compensating for it based on which DSP nodes and oversampling are active. While this works well for static latency, I’m running into a challenge when I need to dynamically update the latency.
                                      Right now, I’m using:
                                      prepareToPlay() to get the initial latency with Engine.getLatencySamples()
                                      processBlock() to set latency using setLatencySamples()
                                      This works well for static latencies, but now that I’m introducing multiple oversampling filters, I need to adjust latency dynamically, depending on whether the user selects Linear-Phase or Minimum-Phase filtering. Since Linear-Phase filtering can add up to ~120 samples, I don’t want to set a fixed latency that high, as it would negatively impact real-time usage.
                                      I need a way to recalculate latency when the processing mode changes. For example, when switching between oversampling filters. The goal is to update latency based on active DSP modules.
                                      @Christoph-Hart or anyone else have suggestions on how to dynamically recalculate the latency?

                                      Dan Korneff - Producer / Mixer / Audio Nerd

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

                                        @Dan-Korneff can you measure the latency of your modules, put it in consts and make the call to set the new latency to report whenever the user changes any of the controls that affect it?

                                        Christoph HartC Dan KorneffD 2 Replies Last reply Reply Quote 0
                                        • Christoph HartC
                                          Christoph Hart @aaronventure
                                          last edited by

                                          I would not trust every host to support dynamic latency so I‘d definitely check this thoroughly.

                                          1 Reply Last reply Reply Quote 1
                                          • Dan KorneffD
                                            Dan Korneff @aaronventure
                                            last edited by

                                            @aaronventure said in HISE FX and delay compensation:

                                            @Dan-Korneff can you measure the latency of your modules, put it in consts and make the call to set the new latency to report whenever the user changes any of the controls that affect it?

                                            That's definitely plan B. I guess I need to use a global variable to get this data into scriptFX?

                                            Dan Korneff - Producer / Mixer / Audio Nerd

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

                                            9

                                            Online

                                            1.7k

                                            Users

                                            11.8k

                                            Topics

                                            102.8k

                                            Posts