Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- void Window::fft(float* correction){
- m_fft_data = (float*) av_malloc(sizeof(float)*Globals::WindowSize);
- memcpy(m_fft_data, correction, sizeof(float)*Globals::WindowSize);
- for(int i = 0; i < Globals::WindowSize; ++i){
- m_fft_data[i] *= m_data[i];
- }
- RDFTContext * ctx = av_rdft_init(Globals::WindowSizePower, DFT_R2C);
- av_rdft_calc(ctx, m_fft_data);
- av_rdft_end(ctx);
- for(int i = 0; i < Globals::WindowFFTBins; ++i){
- m_fft_data[i] =
- powf(m_fft_data[i],2) +
- powf(m_fft_data[Globals::WindowSize - i],2);
- }
- }
Add Comment
Please, Sign In to add comment