-
Couldn't load subscription status.
- Fork 1
talentspsp/audio_analysis
Folders and files
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
Repository files navigation
This project implements plca-based sound classification system.
===================================================================================================================================================
To make the library, type "make", a static library libaudio_analyzer.a and a test example called testaa will be made.
NOTICE:
When you compile your code with this library, you also need to add ./spuc and ./spuc/generic to the header searching path. For example:
g++ -o your_program.cpp -L. -laudio_analyzer -I./spuc -I./spuc/generic
That's because our library used a package named "spuc", and some coding style in that package require this searching path.
====================================================================================================================================================
STFT.cpp/h: short time Fourier Transform.
plca2d.cpp/h: plca2d algorithm, the output are P(f|z), P(z), Pt(z). IT'S OUT OF DATE! USE plca.cpp/h
plca2d_wrapper.cpp: It's a wrapper which has the same interface as plca2d.cpp, but it will call plca instead.
plca.cpp/h: plca2d algorithm.
plca_BLAS.cpp: it is similar to plca and has the same interface as plca, just it uses BLAS routines to do the matrix multiplication. IT'S NOT INCLUDED IN THE LIBRARY NOW. If you want to use it, see the instruction below.(*)
plcadirichlet.cpp/h: plca algorithm with adaptive dirichlet process
plcadirichlet_BLAS.cpp: With BLAS routines
LambertW*.cpp/h: Lambert function used by plca.
comp_weight.cpp/h: calculate the weights of different sources in a given distribution
wav_sep.cpp/h: get a segment from the whole wav file
spuc/ and libspuc.a: library used for FFT
wavproc/ and libwavproc.a: library used for wav io
matfile.cpp/h: load and save matrix, in both ascii and binary format
math_uttil.h: some math functions
audio_analyzer.cpp/h: class for the whole system
matlab_files/: some matlab scripts used to compare and analyze data
test**.cpp/h: the test files
see the test** files for the usage of the class and functions, and also the usage of the functions are commented in the source files. See the makefile for how to build them.
The intermediate results, such like results of plca or STFT, can be got with the get_** functions and saved with the functions in matfile.cpp/h.
====================================================================================================================================================
(*) Use of plca_BLAS:
1 To achieve the optimal speed, you should use the BLAS library shipped with your machine.
To do this:
1) you need to change
#include "CBLAS/include/cblas.h"
in plca_BLAS.cpp to your blas header file.
2) In makefile, you need to set BLASLIB as the native blas library you want to link against, e.g. on Mac OSX, it can be "-framework veclib". set BLASHEADER as the path to the header file you used.
2 If you don't have a native blas library, then you need to install BLAS and CBLAS. You just need to go to these two directories and type "make all". And you can use the configuration for BLASLIB and BLASHEADER in the provided Makefile.
You can type "make testnewplca_BLAS" to see how to compile it. Notice: if you use the non-native BLAS library, plca_BLAS is not surely faster than plca, that's why it's not included in the audio_analyzer library.
About
No description, website, or topics provided.
Resources
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published