1 #include "audiospectrum.h"
2 #include "tools/kiss_fftr.h"
4 AudioSpectrum::AudioSpectrum(Monitor *projMonitor, Monitor *clipMonitor, QWidget *parent) :
5 AbstractAudioScopeWidget(projMonitor, clipMonitor, true, parent)
8 m_cfg = kiss_fftr_alloc(512, 0,0,0);
10 AudioSpectrum::~AudioSpectrum()
15 QString AudioSpectrum::widgetName() const { return QString("audiospectrum"); }
17 bool AudioSpectrum::isBackgroundDependingOnInput() const { return false; }
18 bool AudioSpectrum::isScopeDependingOnInput() const { return true; }
19 bool AudioSpectrum::isHUDDependingOnInput() const { return false; }
21 QImage AudioSpectrum::renderBackground(uint) { return QImage(); }
22 QImage AudioSpectrum::renderScope(uint accelerationFactor, const QVector<int16_t> audioFrame, const int freq, const int num_channels, const int num_samples)
25 kiss_fft_cpx freqData[512];
26 for (int i = 0; i < 512; i++) {
27 data[i] = (float) audioFrame.data()[i];
29 kiss_fftr(m_cfg, data, freqData);
30 qDebug() << freqData[0].r << " " << freqData[1].r << " " << freqData[2].r;
33 QImage AudioSpectrum::renderHUD(uint) { return QImage(); }
35 QRect AudioSpectrum::scopeRect() {
36 return QRect(0,0,40,40);
39 void AudioSpectrum::readConfig()