Mercurial > hg > drum-timing-analyser
view DrumTimingLoader_OF/ofxAudioFileLoader/AudioAnalysis.h @ 3:303edbbcf1bd tip
updated ofxAubioOnsetDetection file
author | Andrew N Robertson <andrew.robertson@eecs.qmul.ac.uk> |
---|---|
date | Sun, 24 Nov 2013 08:15:17 +0000 |
parents | 82352cfc0b23 |
children |
line wrap: on
line source
/* * AudioAnalysis.h * audioFileLoader4 * * Created by Andrew on 14/08/2011. * Copyright 2011 QMUL. All rights reserved. * */ #ifndef AUDIO_ANALYSIS_H #define AUDIO_ANALYSIS_H //#include "fftw3.h" #include "ofMain.h" //#include "chromaGram.h" //#include "ChordDetect.h" #include "sndfile.h" #include "ofxFileDialogOSX.h" #include "AudioFile.h" #define FRAMESIZE 512 #define ENERGY_LENGTH 80000 #define CHROMA_LENGTH 12000 #define CHROMA_CONVERSION_FACTOR 16 //16 times as many frames in energy as in chroma //this does a chromagram analysis and aubio onset analysis //held in double matrix and doubleVector respectively //these are dynamic vectors, so size set by what's needed for the file class AudioAnalysis{ public: AudioAnalysis(); typedef std::vector<double> DoubleVector; typedef std::vector<DoubleVector> DoubleMatrix; DoubleMatrix chromaMatrix; // DoubleMatrix* matrixPtr; DoubleVector energyVector; AudioFile* audioHolder; void loadNewAudio(string soundFileName);//?? // Chromagram chromoGramm; int currentPlayingFrame; // ChordDetect chord; double getEnergyOfFrame(); int scrollWidth; //int totalFrames; void drawEnergyVectorFromPointer(); void drawSpectralDifference(); /* double getEnergyOfFrame(); void initialiseVariables(); void initialiseVariables(); AudioFile audioHolder; void drawDoubleMatrix(DoubleMatrix* dMatrix);//DoubleMatrix* dMatrix); WOULD BE NICE TO USE POINTER BUT NOT WORKING YET DoubleVector firstEnergyVector; void drawEnergyVectorFromPointer(DoubleVector* energyVec); void processAudioToDoubleMatrix(Chromagram* chromaG, DoubleMatrix* myDoubleMatrix, DoubleVector* energyVector); void loadNewAudio(string soundFileName); */ }; #endif