mirror of
https://github.com/mborgerding/kissfft.git
synced 2025-12-02 07:22:50 -05:00
Fix up README.md
This commit is contained in:
26
README.md
26
README.md
@ -53,14 +53,14 @@ There are two functionally-equivalent build systems supported by kissfft:
|
||||
|
||||
To build kissfft, the following build environment can be used:
|
||||
|
||||
- GNU build environment with GCC, Clang and GNU Make or CMake (>= 3.6)
|
||||
- Microsoft Visual C++ (MSVC) with CMake (>= 3.6)
|
||||
- GNU build environment with GCC, Clang and GNU Make or CMake (>= 3.10)
|
||||
- Microsoft Visual C++ (MSVC) with CMake (>= 3.10)
|
||||
|
||||
Additional libraries required to build and test kissfft include:
|
||||
|
||||
- libpng for psdpng tool,
|
||||
- libfftw3 to validate kissfft results against it,
|
||||
- python 2/3 with Numpy to validate kissfft results against it.
|
||||
- Python 3 with Numpy to validate kissfft results against it.
|
||||
- OpenMP supported by GCC, Clang or MSVC for multi-core FFT transformations
|
||||
|
||||
While no tests have been performed to date, kissfft can likely be built using
|
||||
@ -104,13 +104,13 @@ Both Make and CMake builds are easily configurable:
|
||||
For example, to build kissfft as a static library with 'int16_t' datatype and
|
||||
OpenMP support using Make, run the command from kissfft source tree:
|
||||
|
||||
```
|
||||
```bash
|
||||
make KISSFFT_DATATYPE=int16_t KISSFFT_STATIC=1 KISSFFT_OPENMP=1 all
|
||||
```
|
||||
|
||||
The same configuration for CMake is:
|
||||
|
||||
```
|
||||
```bash
|
||||
mkdir build && cd build
|
||||
cmake -DKISSFFT_DATATYPE=int16_t -DKISSFFT_STATIC=ON -DKISSFFT_OPENMP=ON ..
|
||||
make all
|
||||
@ -119,13 +119,13 @@ make all
|
||||
To specify '/tmp/1234' as installation prefix directory, run:
|
||||
|
||||
|
||||
```
|
||||
```bash
|
||||
make PREFIX=/tmp/1234 KISSFFT_DATATYPE=int16_t KISSFFT_STATIC=1 KISSFFT_OPENMP=1 install
|
||||
```
|
||||
|
||||
or
|
||||
|
||||
```
|
||||
```bash
|
||||
mkdir build && cd build
|
||||
cmake -DCMAKE_INSTALL_PREFIX=/tmp/1234 -DKISSFFT_DATATYPE=int16_t -DKISSFFT_STATIC=ON -DKISSFFT_OPENMP=ON ..
|
||||
make all
|
||||
@ -137,13 +137,13 @@ make install
|
||||
To validate the build configured as an example above, run the following command from
|
||||
kissfft source tree:
|
||||
|
||||
```
|
||||
```bash
|
||||
make KISSFFT_DATATYPE=int16_t KISSFFT_STATIC=1 KISSFFT_OPENMP=1 testsingle
|
||||
```
|
||||
|
||||
if using Make, or:
|
||||
|
||||
```
|
||||
```bash
|
||||
make test
|
||||
```
|
||||
|
||||
@ -152,7 +152,7 @@ if using CMake.
|
||||
To test all possible build configurations, please run an extended testsuite from
|
||||
kissfft source tree:
|
||||
|
||||
```
|
||||
```bash
|
||||
sh test/kissfft-testsuite.sh
|
||||
```
|
||||
|
||||
@ -211,12 +211,12 @@ Transforming 5 minutes of CD quality audio takes less than a second (nfft=1024).
|
||||
|
||||
## UNDER THE HOOD
|
||||
|
||||
Kiss FFT uses a time decimation, mixed-radix, out-of-place FFT. If you give it an input buffer
|
||||
Kiss FFT uses a time decimation, mixed-radix, out-of-place FFT. If you give it an input buffer<br>
|
||||
and output buffer that are the same, a temporary buffer will be created to hold the data.
|
||||
|
||||
No static data is used. The core routines of kiss_fft are thread-safe (but not all of the tools directory).[
|
||||
No static data is used. The core routines of kiss_fft are thread-safe (but not all of the tools directory).
|
||||
|
||||
No scaling is done for the floating point version (for speed).
|
||||
No scaling is done for the floating point version (for speed).<br>
|
||||
Scaling is done both ways for the fixed-point version (for overflow prevention).
|
||||
|
||||
Optimized butterflies are used for factors 2,3,4, and 5.
|
||||
|
||||
Reference in New Issue
Block a user