Getting started with KFR
KFR is a C++ framework for digital signal processing, audio applications, and general numerical work. It provides the low-level building blocks needed for fast array operations, then builds higher-level tools—such as Fourier transforms, filters, resamplers, and audio file codecs—on top of them.
KFR 7.1 has been released introducing a new FFT implementation
KFR 7.1 brings a major FFT performance boost. Power-of-two sizes are up to 40% faster, and sizes with many prime factors now use a more optimized algorithm. The release also adds a low-overhead FFT API, new audio filtering and decoding features, and GCC and MSVC support for DFT.
KFR 7 has been released
KFR 7 is out with a new audio module for reading and writing WAV, AIFF, FLAC, MP3 and ALAC files, universal binaries for macOS, RISC-V support, a modernized C++20 codebase and a number of breaking changes that are worth checking before you upgrade.
Three C++ Tricks That Make Everyday Coding Easier (and Debugging Harder)
KFR 6 has been released
KFR 6 release is out with DFT performance improvements, Multidimensional DFT, easier setup, Windows arm64 support and many new features. See the full list of changes.
KFR 5.2.0 is released
This release mainly focuses on DFT performance, which has increased by up to 40% on x86 and x86_64, and on bug fixes.
KFR 5.1.0 is released
New window functions, improvements to the vec<> class, and more.
Simple declarative reflection in C++20
Almost every real-world application requires a lot of similar operations such as saving its internal state, making API requests, logging events, etc. This leads to writing hundreds of lines of code to convert classes to JSON, serializing to various formats, and so on.
But if we knew the internal structure of classes, then we could write generic functions for all use cases and get the desired features quickly and easily.
KFR 5 has been released
KFR 5 has been released with new features and performance improvements, including multidimensional arrays, exceptions, and better performance.