3 ms·
WebRTC Aec3 in Rust
- itsmeangelos 10mo agoI've been working on a Rust rewrite of the WebRTC aec3 (echo canceller) which is written in c++ and wanted to share the project. This is mostly a 1 to 1 rewrite but I tried being as idiomatic as possible for when things didn't quite fit. Works pretty well! It doesn't include the latest stuff though as as a tensorflow based nonlinear echo cancel.
- Sean-Der 10mo agoThat’s really amazing! You can build a full voip app in rust now. Opus, WebRTC and capture is all available. What were you building this for? If you don’t mind I would love to learn more I have a meeting link on siobud.com
- itsmeangelos 10mo agoThanks for the interest! I needed more control over the echo cancel stage than existing bindings gave me and also I had quite the trouble compiling them for different platforms, so I ended up re-implementing the aec3 logic directly. The reason to why rust specifically, is that I quite like it (easy cross compilation as well). This was built for essentially a VOIP (adjacent) project that overlays an transcription model to listen to your mic + audio from your computer and provide transcripts.