-
大小: 7.08MB文件類(lèi)型: .rar金幣: 2下載: 0 次發(fā)布日期: 2023-10-15
- 語(yǔ)言: C/C++
- 標(biāo)簽: 聲卡??數(shù)據(jù)采集??
資源簡(jiǎn)介
基于VC6.0(MFC)的對(duì)聲卡音頻數(shù)據(jù)采集,實(shí)時(shí)顯示波形。可以設(shè)置采樣率、聲道、采樣位數(shù)等參數(shù)

代碼片段和文件信息
/*================================================================================
????fftdom.cpp??-??Copyright?(C)?1997?by?Don?Cross?
???????????????????http://www.intersrv.com/~dcross/fft.html
????This?C++?source?file?contains?a?function?for?finding?the?dominant?
????frequency?in?an?output?buffer?calculated?by?the?FFT?algorithm.
================================================================================*/
#include?“stdafx.h“
#include?
//?This?function?returns?the?dominant?frequency?in?Hz.
double?FindDominantFrequency?(
????int?numSamples???????????//?total?number?of?frequency?samples?in?buffer
????int?windowSize???????????//?width?of?search?window?(experiment?with?this;?try?4)
????double?*real?????????????//?real?coefficient?buffer
????double?*imag?????????????//?imaginary?coefficient?buffer
????double?*ampl?????????????//?work?buffer?for?holding?r*r+i*i?values
????double?samplingRate?)?????//?sampling?rate?expressed?in?samples/second?[Hz]
{
????const?int?n?=?numSamples/2;???//?number?of?positive?frequencies.
????//?Pre-calculate?amplitude?values?in?the?buffer?provided?by?the?caller.
????//?This?makes?the?code?a?lot?more?efficient.
????for?(?int?i=0;?i ????{
????????ampl[i]?=?real[i]*real[i]?+?imag[i]*imag[i];
????}
????//?Zero?out?amplitudes?for?frequencies?below?20?Hz.
????int?low?=?int?(?numSamples?*?20.0?/?samplingRate?);
????assert?(?low>=0?&&?low ????for?(?i=low;?i>=0;?i--?)
????{
????????ampl[i]?=?0.0;
????}
????//?In?the?following?loop?i1?is?the?left?side?of?the?window
????//?and?i2?is?the?right?side.
????double?maxWeight?=?-1.0;
????double?centerFreq?=?-1.0;
????for?(?int?i2?=?windowSize;?i2?????{
????????const?int?i1?=?i2?-?windowSize;
????????double?moment?=?0.0;
????????double?weight?=?0.0;
????????for?(?int?i=i1;?i<=i2;?i++?)
????????{
????????????weight?+=?ampl[i];
????????????moment?+=?double(i)?*?ampl[i];
????????}
????????if?(?weight?>?maxWeight?)
????????{
????????????maxWeight?=?weight;
????????????centerFreq?=?moment?/?weight;
????????}
????}
????return?samplingRate?*?centerFreq?/?double(numSamples);
}
/*---?end?of?file?fftdom.cpp?---*/
?屬性????????????大小?????日期????時(shí)間???名稱(chēng)
-----------?---------??----------?-----??----
?????文件????????415??1996-06-04?19:18??RECORD\DDCMATH.H
?????文件??????11062??2009-09-27?10:24??RECORD\Debug\BuildLog.htm
?????文件??????????0??2009-09-30?11:23??RECORD\Debug\data.txt
?????文件???????4233??2009-09-27?13:11??RECORD\Debug\Fftdom.obj
?????文件??????????0??2009-09-27?13:11??RECORD\Debug\Fftdom.sbr
?????文件???????5037??2009-09-27?13:10??RECORD\Debug\Fftmisc.obj
?????文件??????????0??2009-09-27?13:10??RECORD\Debug\Fftmisc.sbr
?????文件???????6609??2009-09-27?13:10??RECORD\Debug\Fourierd.obj
?????文件??????????0??2009-09-27?13:10??RECORD\Debug\Fourierd.sbr
?????文件???????6571??2009-09-27?13:10??RECORD\Debug\Fourierf.obj
?????文件??????????0??2009-09-27?13:10??RECORD\Debug\Fourierf.sbr
?????文件?????????67??2009-09-27?10:23??RECORD\Debug\mt.dep
?????文件?????450092??2009-09-27?16:02??RECORD\Debug\Noname.wav
?????文件?????450048??2009-09-27?16:02??RECORD\Debug\Noname.wav.dat
?????文件????4015104??2009-09-27?13:11??RECORD\Debug\Record.bsc
?????文件????1306709??2009-09-27?13:11??RECORD\Debug\Record.exe
?????文件????????146??2009-09-25?12:43??RECORD\Debug\Record.exe.em
?????文件????????212??2009-09-25?12:43??RECORD\Debug\Record.exe.em
?????文件????????145??2009-09-27?10:23??RECORD\Debug\Record.exe.intermediate.manifest
?????文件????5916584??2009-09-27?13:11??RECORD\Debug\Record.ilk
?????文件??????16512??2009-09-27?13:10??RECORD\Debug\Record.obj
?????文件??????18196??2009-09-25?14:17??RECORD\Debug\Record.res
?????文件??????????0??2009-09-27?13:10??RECORD\Debug\Record.sbr
?????文件??????48658??2009-09-27?13:09??RECORD\Debug\RecordDlg.obj
?????文件??????????0??2009-09-27?13:10??RECORD\Debug\RecordDlg.sbr
?????文件?????101871??2009-09-27?13:09??RECORD\Debug\Scope.obj
?????文件??????????0??2009-09-27?13:10??RECORD\Debug\Scope.sbr
?????文件?????106019??2009-09-27?13:09??RECORD\Debug\StdAfx.obj
?????文件????1358043??2009-09-27?13:09??RECORD\Debug\STDAFX.sbr
?????文件?????238592??2009-09-27?13:11??RECORD\Debug\vc60.idb
............此處省略44個(gè)文件信息
評(píng)論
共有 條評(píng)論