From d0fdbefbfb60994ad8d6cf3b7129dcdd556c1924 Mon Sep 17 00:00:00 2001 From: 2 * r + 2 * t <61896496+soramanew@users.noreply.github.com> Date: Mon, 8 Sep 2025 21:10:30 +1000 Subject: plugin/ap: fix collector Actually read from speakers not mic --- plugin/src/Caelestia/cavaprovider.cpp | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) (limited to 'plugin/src/Caelestia/cavaprovider.cpp') diff --git a/plugin/src/Caelestia/cavaprovider.cpp b/plugin/src/Caelestia/cavaprovider.cpp index 8841ded..024c75d 100644 --- a/plugin/src/Caelestia/cavaprovider.cpp +++ b/plugin/src/Caelestia/cavaprovider.cpp @@ -1,5 +1,6 @@ #include "cavaprovider.hpp" +#include "audiocollector.hpp" #include "audioprovider.hpp" #include #include @@ -9,8 +10,8 @@ namespace caelestia { -CavaProcessor::CavaProcessor(AudioProvider* provider, QObject* parent) - : AudioProcessor(provider, parent) +CavaProcessor::CavaProcessor(QObject* parent) + : AudioProcessor(parent) , m_plan(nullptr) , m_in(new double[static_cast(m_chunkSize)]) , m_out(nullptr) @@ -68,15 +69,15 @@ void CavaProcessor::initCava() { m_out = new double[static_cast(m_bars)]; } -void CavaProcessor::processChunk(const QVector& chunk) { +void CavaProcessor::process() { if (!m_plan || m_bars == 0) { return; } - std::copy(chunk.constBegin(), chunk.constEnd(), m_in); + const int count = static_cast(AudioCollector::instance()->readChunk(m_in)); // Process in data via cava - cava_execute(m_in, m_chunkSize, m_out, m_plan); + cava_execute(m_in, count, m_out, m_plan); // Apply monstercat filter for (int i = 0; i < m_bars; i++) { @@ -97,11 +98,11 @@ void CavaProcessor::processChunk(const QVector& chunk) { } } -CavaProvider::CavaProvider(int sampleRate, int chunkSize, QObject* parent) - : AudioProvider(sampleRate, chunkSize, parent) +CavaProvider::CavaProvider(QObject* parent) + : AudioProvider(parent) , m_bars(0) , m_values(m_bars) { - m_processor = new CavaProcessor(this); + m_processor = new CavaProcessor(); init(); connect(static_cast(m_processor), &CavaProcessor::valuesChanged, this, &CavaProvider::updateValues); -- cgit v1.2.3-freya