📄 discretefouriertransform.h
字号:
#if !defined(AFX_DISCRETEFOURIERTRANSFORM_H__1F33E87C_F389_4D68_B492_41DFBBB0DD8F__INCLUDED_)
#define AFX_DISCRETEFOURIERTRANSFORM_H__1F33E87C_F389_4D68_B492_41DFBBB0DD8F__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#include <dsound.h>
#include "DirectMusicSegment.h"
namespace AudioEngine {
#include <math.h>
#define M_PI 3.1415926536
class CDiscreteFourierTransform
{
public:
CDiscreteFourierTransform(int bufsize, int samplerate, int bitspersample, int channels);
virtual ~CDiscreteFourierTransform();
void LoadInputData(unsigned char *data);
void PerformSlowFourierTransform();
float GetAmp(int ndx) { return(ndx > m_BufSize ? 0.0 : m_AmpOutput[ndx]); }
float GetFreq(int ndx) { return(ndx > m_BufSize ? 0.0 : m_FreqOutput[ndx]); }
int m_SampleRate;
int m_NumChannels;
int m_BitsPerSample;
protected:
int m_BufSize;
float *m_Input;
float *m_FreqOutput;
float *m_AmpOutput;
};
} // namespace
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -