本文整理汇总了C++中Workspace::setFftAdapter方法的典型用法代码示例。如果您正苦于以下问题:C++ Workspace::setFftAdapter方法的具体用法?C++ Workspace::setFftAdapter怎么用?C++ Workspace::setFftAdapter使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Workspace
的用法示例。
在下文中一共展示了Workspace::setFftAdapter方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: chromagramOfBufferedAudio
void KeyFinder::chromagramOfBufferedAudio(
Workspace& workspace,
const Parameters& params
) {
if (workspace.getFftAdapter() == NULL)
workspace.setFftAdapter(new FftAdapter(params.getFftFrameSize()));
SpectrumAnalyser sa(workspace.buffer.getFrameRate(), params, ctFactory);
Chromagram* c = sa.chromagramOfWholeFrames(workspace.buffer, workspace.getFftAdapter());
// deal with tuning if necessary
if (c->getBandsPerSemitone() > 1) {
if (params.getTuningMethod() == TUNING_BAND_ADAPTIVE) {
c->tuningBandAdaptive(params.getDetunedBandWeight());
} else if (params.getTuningMethod() == TUNING_HARTE) {
c->tuningHarte();
}
}
workspace.buffer.discardFramesFromFront(params.getHopSize() * c->getHops());
if (workspace.chroma == NULL) {
workspace.chroma = c;
} else {
workspace.chroma->append(*c);
delete c;
}
}