From ec8b5aea7cfe9e1cffaa2dfac02d9f1e0beacba7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Michael=20Zbyszy=C5=84ski?= <m.zbyszynski@gold.ac.uk> Date: Mon, 20 Nov 2017 21:12:38 +0000 Subject: [PATCH] sorted out accelerate library --- CMakeLists.txt | 11 ++++++++++- tests/rapidMixTest.cpp | 13 +++++++++++++ 2 files changed, 23 insertions(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index b8754bb..b8a5ab6 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -26,6 +26,8 @@ include_directories(dependencies/third_party/json) file(GLOB_RECURSE RAPIDMIX_SRC "${PROJECT_SOURCE_DIR}/src/*.cpp") file(GLOB GVF_SRC "${PROJECT_SOURCE_DIR}/dependencies/GVF/GVF.cpp") file(GLOB MAXI_SRC "${PROJECT_SOURCE_DIR}/dependencies/Maximilian/maximilian.cpp") +file(GLOB MAXI_SRC ${MAXI_SRC} "${PROJECT_SOURCE_DIR}/dependencies/Maximilian/libs/maxiFFT.cpp") +file(GLOB MAXI_SRC ${MAXI_SRC} "${PROJECT_SOURCE_DIR}/dependencies/Maximilian/libs/fft.cpp") file(GLOB RAPIDLIB_SRC "${PROJECT_SOURCE_DIR}/dependencies/RapidLib/src/*.cpp") file(GLOB RAPIDLIB_DEP "${PROJECT_SOURCE_DIR}/dependencies/RapidLib/dependencies/libsvm/libsvm.cpp") file(GLOB JSON_SRC "${PROJECT_SOURCE_DIR}/dependencies/third_party/jsoncpp.cpp") @@ -43,4 +45,11 @@ set(RAPIDMIX_FULL_SRC ${RAPIDMIX_SRC} add_library(RMIX ${RAPIDMIX_FULL_SRC}) add_executable(rapidmix tests/rapidMixTest.cpp ) -target_link_libraries(rapidmix RMIX) + +if (APPLE) + find_library(ACCELERATE Accelerate) + if (NOT ACCELERATE) + message(FATAL_ERROR "Accelearate not found") + endif() + target_link_libraries(rapidmix RMIX ${ACCELERATE}) +endif() diff --git a/tests/rapidMixTest.cpp b/tests/rapidMixTest.cpp index b4d8000..470109f 100644 --- a/tests/rapidMixTest.cpp +++ b/tests/rapidMixTest.cpp @@ -54,5 +54,18 @@ int main() { assert(myNN.run(inputVec)[0] == 12.596715279688549); std::cout << "staticRegression passed." << std::endl; + /////////////////////////////////////Test Maxi signal processing + + rapidmix::FFT myFFT; + myFFT.setup(1024, 512, 265); + + for (int i = 0; i < 1024; ++i) { + float input = (i % 256/256.0); + myFFT.process(input); + } + + assert(myFFT.spectralCentroid() == 3520.84277f); + std::cout << "maxi fft passed" << std::endl; + return 0; } -- GitLab