FastLED 3.9.15
Loading...
Searching...
No Matches

◆ Context()

fl::audio::fft::Context::Context ( int samples,
int bands,
float fmin,
float fmax,
int sample_rate,
Mode mode,
Window window )
inline

Definition at line 61 of file fft_impl.cpp.hpp.

63 : mFftrCfg(nullptr), mInputSamples(samples),
64 mKernels(nullptr),
65 mMode(mode), mTotalBands(bands), mFmin(fmin), mFmax(fmax),
66 mSampleRate(sample_rate), mWindow(window) {
67 Args::resolveModeEnums(mMode, mWindow, bands, samples, fmin, fmax);
68 fl::memset(&mCqCfg, 0, sizeof(mCqCfg));
69
70 mFftrCfg = kiss_fftr_alloc(samples, 0, nullptr, nullptr);
71 if (!mFftrCfg) {
72 FL_WARN("Failed to allocate Impl context");
73 return;
74 }
75
76 switch (mMode) {
77 case Mode::LOG_REBIN:
79 break;
80 case Mode::CQ_NAIVE:
81 initNaive(samples, bands, fmin, fmax, sample_rate);
82 break;
83 case Mode::CQ_HYBRID:
84 initHybrid(samples, bands, fmin, fmax, sample_rate);
85 break;
86 case Mode::CQ_OCTAVE:
87 initOctaveWise(samples, bands, fmin, fmax, sample_rate);
88 break;
89 case Mode::AUTO:
90 FL_WARN("Mode::AUTO should have been resolved");
91 break;
92 }
93 }
void initHybrid(int samples, int bands, float fmin, float fmax, int sr)
void initNaive(int samples, int bands, float fmin, float fmax, int sr)
void initOctaveWise(int samples, int bands, float fmin, float fmax, int sr)
kiss_fftr_cfg kiss_fftr_alloc(int nfft, int inverse_fft, void *mem, size_t *lenmem) FL_NOEXCEPT
#define FL_WARN(X)
Definition log.h:276
void * memset(void *s, int c, size_t n) FL_NOEXCEPT
static void resolveModeEnums(Mode &mode, Window &window, int bands, int samples, float fmin, float fmax) FL_NOEXCEPT
Definition fft.cpp.hpp:265

References fl::audio::fft::AUTO, fl::audio::fft::CQ_HYBRID, fl::audio::fft::CQ_NAIVE, fl::audio::fft::CQ_OCTAVE, FL_WARN, initHybrid(), initLogRebin(), initNaive(), initOctaveWise(), kiss_fftr_alloc(), fl::audio::fft::LOG_REBIN, mCqCfg, fl::memset(), mFftrCfg, mFmax, mFmin, mInputSamples, mKernels, mMode, mSampleRate, mTotalBands, mWindow, and fl::audio::fft::Args::resolveModeEnums().

+ Here is the call graph for this function: