Open
Description
Some other audio-related packages that I'm using for my application both only support up to f32
(C's float
) when handling data:
Details
On Windows, my pipeline looks like:
- Get data from WASAPI
- If device doesn't support
F32
, convert tof32
here
- If device doesn't support
- Interpolate sample rate from the device rate to
48_000
as required byopus
andrnnoise
- Upscale from
f32
->f64
as required bysample::Interpolator
. - Downscale back to
f32
once done - (I'd like to remove these conversion steps^^^, if possible)
- Upscale from
- Remove noise with
rnnoise
- Encode with
opus
- Send that sucker over the internet
This package has been invaluable to me - seeing in easy-to-understand rust an implementation of combining signals, interpolating sample rates and representing how formats look under-the-hood has been awesome! Thanks for your hard work 🎉
Metadata
Metadata
Assignees
Labels
No labels