comparison WindowFunction.cpp @ 9:be59b4a73f49

* Added Spectrogram zero padding functionality * Made output bins correspond to BPM * User can now specify a range of output bins to view * Comments added
author Carl Bussey <c.bussey@se10.qmul.ac.uk>
date Tue, 12 Aug 2014 14:40:37 +0100
parents 21147df9cb2d
children 09fb76606b2b
comparison
equal deleted inserted replaced
8:4e429b9f2b4d 9:be59b4a73f49
7 // 7 //
8 8
9 #include "WindowFunction.h" 9 #include "WindowFunction.h"
10 using std::vector; 10 using std::vector;
11 11
12 //static function
12 void 13 void
13 WindowFunction::hanning(float *signal, const unsigned int N, const bool normalise){ 14 WindowFunction::hanning(float *signal, const unsigned int N, const bool normalise){
14 15
15 float sum = 0; 16 float sum = 0;
16 for(int i = 0; i < N; i++){ 17 for(int i = 0; i < N; i++){
17 signal[i] = 0.5*(1-cos((float)2*M_PI*i/N)); 18 sum += signal[i] = 0.5*(1-cos((float)2*M_PI*i/N));
18 sum += signal[i];
19 } 19 }
20 if (normalise){ 20 if (normalise){
21 for(int i = 0; i < N; i++){ 21 for(int i = 0; i < N; i++){
22 signal[i] /= sum; 22 signal[i] /= sum;
23 } 23 }