Skip to content

[feature] High latency #63

Open
Open

Description

@grzywek

What problem does this solve?

Hello,

This really looks like a great project, and a very promising one :) I'd love to use it for live vocal processing. I have a few ideas and would be grateful if you could consider them.

  1. Latency / I/O settings. I use an M6 interface and the round-trip latency is currently very high, over 200 ms even with no effects. Could this be improved, and could you add I/O buffer size and sample rate settings? In Logic Pro I can get down to a 6 ms round trip, so it's not a hardware issue (interface or Mac).
Image
  1. Zoom. At high zoom levels the canvas seems to become blurry.

  2. Backing track pitch. It would be very useful to be able to change the pitch (transpose) of a backing track or music file, ideally without affecting its tempo, so I can adjust songs to my vocal range.

  3. Routing switches. It would be great to have configurable switches, for example one that toggles input 1 between output 2 and output 3. I could then change the routing during a live session and send the signal to two chains with different effects, depending on the use case (e.g. narration vs. singing).

  4. MIDI control. I have a MIDI controller with knobs, sliders and switches. It would be great to be able to assign them to individual settings, buttons and so on.

  5. Responsiveness. Changes made during a live session take 0.5-2 s to take effect. A faster response would help a lot.

  6. Settings UI. I'm not fully convinced by the Settings interface and the placement of its tabs, but that's just a cosmetic matter.

Thanks again, and keep up the great work!

Dave

Proposed solution

Alternatives considered

No response

Additional context

No response

Activity

  1. Horuse commented on Oct 15, 2026

    @Horuse
    Owner

    Hi, and thank you for taking the time to write such detailed feedback, I really appreciate it!

    1. Latency / I/O settings. I’ve been working on this for about two weeks and have implemented pretty much what you describe: the settings will let you choose a buffer size from 32 to 2048 samples. I’ve managed to get fairly low values. On my MacBook, with a pipeline of microphone → AU effect → monitors → speakers, the measured latency is 58 ms, assuming the app calculates it correctly :)
    Image

    It turns out MacBook devices add quite a lot of latency on their own, and I don’t have any wired devices to compare against.

    Another thing to be aware of: adding this feature meant touching almost every file in the codebase, so when it ships it will be a beta / pre-release only (you can opt in to these updates in the settings). It will stay there for a while, in the hope that people using that channel can report any problems. I’d be very grateful if you could try it and let me know how it works with your M6 interface once it’s out!

    1. Zoom blur. I’m aware of this issue, but it’s not a priority right now, and the UI is at the bottom of my list. If you like, feel free to open a separate issue for it.

    2. Backing track pitch shift. Please open a separate issue for this. I’ll most likely get to it after (feat(audio): low-latency engine: device-paced rendering, adaptive queues, whole-pipeline tests #59).

    3. Routing switches. Good idea, and it has been suggested before. It’s planned, even on a larger scale. See [feature] Groups/racks, and the option to automate them via keybinds #47 for details, and feel free to share your own take there. I decided to start with the latency work (feat(audio): low-latency engine: device-paced rendering, adaptive queues, whole-pipeline tests #59) because it’s better to do it now than to rewrite even more functionality later.

    4. MIDI control. Also worth a separate issue.

    5. Responsiveness. I think this was largely a consequence of the high latency itself, but while working on feat(audio): low-latency engine: device-paced rendering, adaptive queues, whole-pipeline tests #59 I also fixed several related things.

    6. Settings UI. Agreed, the interface needs a rework. Right now it honestly looks more like a website than an app. I plan to tackle it only after (feat(audio): low-latency engine: device-paced rendering, adaptive queues, whole-pipeline tests #59) and ([feature] Groups/racks, and the option to automate them via keybinds #47) are done.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions