Skip to content

aking7/pimp

 
 

Repository files navigation

pimp

Naive implementation of some adaptive filters in C, also for arm, so runs on Bela.

Get started

Clone

git clone https://github.com/fhchl/pimp.git
cd pimp
git submodule init && git submodule update

Build

mkdir build
cd build
cmake ..
make

Build for float instead of double

cmake .. -D PIMP_USE_DOUBLE=0
make

Build with pocketfft for BlockLMSFilter on x86 (only supports doubles)

cmake .. -D PIMP_FFTLIB=pocketfft
make

Build with Ne10 for BlockLMSFilter on ARM (only supports floats)

cmake .. -D PIMP_FFTLIB=ne10
make

Also build tests (requires python with numpy and scipy)

cmake .. -D PIMP_BUILD_TESTS=1 -D PIMP_FFTLIB=pocketfft
make

Run tests

make test

Cross compile for arm but test on x86

As described here: https://azeria-labs.com/arm-on-x86-qemu-user/

qemu-arm -L /usr/arm-linux-gnueabihf ./test_fft

About

Adaptive filters in C.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 86.6%
  • CMake 10.8%
  • Python 1.8%
  • Shell 0.8%