@hailey I've been using ROC toolkit at my hackerspace with a similar goal in mind. I started porting it to Rust but never finished it. The nice thing is that it is using a correction channel by default to avoid glitches, which is quite simple to implement in Rust with the available libraries, it's worth looking at it. It's also already available in pipewire.