annotate WindowFunction.cpp @ 14:c11367df624d
* Renamed NoveltyCurve.* and Spectrogram.* to $(Name)Processor.*
* Aligned novelty curve with audio - when performing FIRFilter::process(params), take inputLength after group delay.
* Removed trail of Spectrogram.
* General tidying!
author |
Carl Bussey <c.bussey@se10.qmul.ac.uk> |
date |
Thu, 14 Aug 2014 10:31:49 +0100 |
parents |
7680cc4c0073 |
children |
de7213b35755 |
rev |
line source |
c@0
|
1 //
|
c@0
|
2 // WindowFunction.cpp
|
c@0
|
3 // Tempogram
|
c@0
|
4 //
|
c@0
|
5 // Created by Carl Bussey on 26/06/2014.
|
c@0
|
6 // Copyright (c) 2014 Carl Bussey. All rights reserved.
|
c@0
|
7 //
|
c@0
|
8
|
c@0
|
9 #include "WindowFunction.h"
|
c@0
|
10 using std::vector;
|
c@0
|
11
|
c@9
|
12 //static function
|
c@0
|
13 void
|
c@13
|
14 WindowFunction::hanning(float * window, const unsigned int &N, const bool &normalise){
|
c@0
|
15
|
c@0
|
16 float sum = 0;
|
c@13
|
17 for(unsigned int i = 0; i < N; i++){
|
c@11
|
18 window[i] = 0.5*(1-cos((float)2*M_PI*i/N));
|
c@11
|
19 sum += window[i];
|
c@0
|
20 }
|
c@0
|
21 if (normalise){
|
c@0
|
22 for(int i = 0; i < N; i++){
|
c@11
|
23 window[i] /= sum;
|
c@0
|
24 }
|
c@0
|
25 }
|
c@0
|
26 } |