1
0
mirror of https://github.com/f4exb/sdrangel.git synced 2026-06-01 21:54:55 -04:00

Multi device support: moved DSPDeviceEngine start/stop actions and status from main window to each source plugin GUI

This commit is contained in:
f4exb
2016-05-11 23:35:16 +02:00
parent 7992f3f428
commit ecd05096ad
31 changed files with 649 additions and 78 deletions
+26 -1
View File
@@ -20,7 +20,8 @@
#include "dsp/dspengine.h"
DSPEngine::DSPEngine() :
m_audioSampleRate(48000) // Use default output device at 48 kHz
m_audioSampleRate(48000), // Use default output device at 48 kHz
m_audioUsageCount(0)
{
m_deviceEngines.push_back(new DSPDeviceEngine(0)); // TODO: multi device support
m_dvSerialSupport = false;
@@ -86,6 +87,30 @@ bool DSPEngine::startAcquisition(uint deviceIndex)
return started;
}
void DSPEngine::startAudio()
{
if (m_audioUsageCount == 0)
{
m_audioOutput.start(-1, m_audioSampleRate);
m_audioSampleRate = m_audioOutput.getRate(); // update with actual rate
}
m_audioUsageCount++;
}
void DSPEngine::stopAudio()
{
if (m_audioUsageCount > 0)
{
m_audioUsageCount--;
if (m_audioUsageCount == 0)
{
m_audioOutput.stop();
}
}
}
void DSPEngine::stopAcquistion(uint deviceIndex)
{
qDebug("DSPEngine::stopAcquistion(%d)", deviceIndex);