QUOTE
About
libinterp is a tiny library for real-time data interpolation, especially focused on sound resampling.
It is written in plain C and, as of now, it just offers three algorithms (zero order hold, linear and cubic splines calculated on 4 points), only on mono channels and only using regular float values for input and output.
However, you can already process multiple mono channels and switch algorithms and buffer sizes (thus also the output rate) on the fly.
For the (near or far) future I hope to add some sinc-based algorithms, (optional?) low-pass filtering when downsampling, optional limiting (maybe normalization?), support for other data encodings, maybe even support for interleaved data for multiple channels and some toy/simple analysis/example programs.
However this is a "part part time" thing, so I'm not working regularly on it. Contributions are very welcome.
Porting
As of now it works on Linux and BeOS (probably Haiku and Zeta too).
However, since the code is very platform neutral , you can easily port it to other operating systems as well. If you're interested, take a look at the configure.ac and include/libinterp/config.h files (those should be quite self-explaining).
libinterp is a tiny library for real-time data interpolation, especially focused on sound resampling.
It is written in plain C and, as of now, it just offers three algorithms (zero order hold, linear and cubic splines calculated on 4 points), only on mono channels and only using regular float values for input and output.
However, you can already process multiple mono channels and switch algorithms and buffer sizes (thus also the output rate) on the fly.
For the (near or far) future I hope to add some sinc-based algorithms, (optional?) low-pass filtering when downsampling, optional limiting (maybe normalization?), support for other data encodings, maybe even support for interleaved data for multiple channels and some toy/simple analysis/example programs.
However this is a "part part time" thing, so I'm not working regularly on it. Contributions are very welcome.
Porting
As of now it works on Linux and BeOS (probably Haiku and Zeta too).
However, since the code is very platform neutral , you can easily port it to other operating systems as well. If you're interested, take a look at the configure.ac and include/libinterp/config.h files (those should be quite self-explaining).
Official website
NASPRO - NASPRO Architecture for Sound PROcessing, another cool project from the same author.
