hyprnote icon indicating copy to clipboard operation
hyprnote copied to clipboard

Add AEC support

Open yujonglee opened this issue 9 months ago • 1 comments

AEC Model

We need inference code in Rust. There is Speexdsp binding, but not sure it will work well, especially in ASR context.

Mic/Speaker stream synchronization

Unless this issue is resolved:

  1. Construct a StreamInstant from SpeakerStream. Since we already know mach_absolute_time, we can obtain a StreamInstant using this conversion.

  2. StreamInstant is already available in MicStream(from Cpal).

  3. Use duration_since to calculate the time delta and synchronize accordingly.

Not sure syncing is really needed. TDC is mentioned in NKF-AEC, but delay might be small enough for our case.

yujonglee avatar Mar 29 '25 13:03 yujonglee

Removing sounds from typing the keyboard would be suuuuuuper nice

ComputelessComputer avatar May 11 '25 20:05 ComputelessComputer

In macOS, #904 can be solution.

yujonglee avatar Jun 17 '25 21:06 yujonglee

We don't do sync right now. DTLN will be implemented #1007.

yujonglee avatar Jun 26 '25 05:06 yujonglee