diff options
author | Daniil Cherednik <dan.cherednik@gmail.com> | 2024-06-26 20:44:43 +0000 |
---|---|---|
committer | Daniil Cherednik <dan.cherednik@gmail.com> | 2024-07-06 20:33:02 +0000 |
commit | 594a0abec3e7ae21ac3033149f36e6c2e6fc9e61 (patch) | |
tree | 6a6bd3c3b43b7b2e9e0cc5b187a97ad40aa60d1c | |
parent | 66f8608f05f32b94e1cc25c21a0c80ea98ecaeb1 (diff) | |
download | atracdenc-594a0abec3e7ae21ac3033149f36e6c2e6fc9e61.tar.gz |
Add Generalized Harmonic Analysis library in to the branch
Why we start with GHA:
* GHA is one of the most computation intencive part of the encoder.
Probably we need to implement multuthreading processing here
to achive good perfomance. If so it is better to make MT frendly design
at the begining of development.
* GHA is the most interesting part of AT3P.
* GHA is the one of the first processing step.
* We already have libgha (https://github.com/dcherednik/libgha)
library which should be tested and used in real application )))
-rw-r--r-- | .gitmodules | 3 | ||||
-rw-r--r-- | src/CMakeLists.txt | 16 | ||||
m--------- | src/lib/libgha | 0 |
3 files changed, 15 insertions, 4 deletions
diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 0000000..5bce7fa --- /dev/null +++ b/.gitmodules @@ -0,0 +1,3 @@ +[submodule "src/lib/libgha"] + path = src/lib/libgha + url = https://github.com/dcherednik/libgha diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index ad8c73d..e0ce50c 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -59,10 +59,20 @@ include_directories( "." "lib" "lib/liboma/include" + "lib/fft/kissfft_impl" ) -set(SOURCE_FFT_LIB lib/fft/kissfft_impl/kiss_fft.c) -set_source_files_properties(lib/fft/kissfft_impl/kiss_fft.c PROPERTIES COMPILE_FLAGS -Dkiss_fft_scalar=double) +set(SOURCE_FFT_LIB + lib/fft/kissfft_impl/kiss_fft.c + lib/fft/kissfft_impl/tools/kiss_fftr.c +) +set_source_files_properties(${SOURCE_FFT_LIB} PROPERTIES COMPILE_FLAGS -Dkiss_fft_scalar=double) +add_library(fft_impl STATIC ${SOURCE_FFT_LIB}) + +set(GHA_FFT_LIB fft_impl) +set(GHA_USE_DOUBLE_API YES) +add_subdirectory(lib/libgha) + set(SOURCE_OMA_LIB lib/liboma/src/liboma.c) set(SOURCE_BITSTREAM_LIB lib/bitstream/bitstream.cpp) set(SOURCE_ATRACDENC_IMPL @@ -87,8 +97,6 @@ set(SOURCE_ATRACDENC_IMPL lib/mdct/mdct.cpp ) -add_library(fft_impl STATIC ${SOURCE_FFT_LIB}) - add_library(pcm_io STATIC ${SOURCE_PCM_IO_LIB}) if (NOT WIN32) target_link_libraries(pcm_io ${SNDFILE_LIBRARIES}) diff --git a/src/lib/libgha b/src/lib/libgha new file mode 160000 +Subproject 41705edc6d36ad013cbcb171d53891f3c33764d |