mirror of
https://github.com/cjcliffe/CubicSDR.git
synced 2026-06-12 10:48:39 -04:00
IQ->Demod->Audio threads now chained
No longer passing anything through the main thread which was causing audio and IQ interrupts on UI events -- hopefully improves OSX jitter. SDRThread can now have unlimited Demodulator bindings.. :)
This commit is contained in:
@@ -160,6 +160,15 @@ wxThread::ExitCode SDRThread::Entry() {
|
||||
if (!TestDestroy()) {
|
||||
SDRThreadIQData *iqData = new SDRThreadIQData(bandwidth,frequency,new_buffer);
|
||||
m_pQueue->sendIQData(SDRThreadTask::SDR_THREAD_DATA, iqData);
|
||||
|
||||
if (demodulators.size()) {
|
||||
for (int i = 0, iMax = demodulators.size(); i<iMax; i++) {
|
||||
DemodulatorThreadQueue *demodQueue = demodulators[i];
|
||||
DemodulatorThreadTask demod_task = DemodulatorThreadTask(DemodulatorThreadTask::DEMOD_THREAD_DATA);
|
||||
demod_task.data = new DemodulatorThreadIQData(iqData->bandwidth, iqData->frequency, iqData->data);
|
||||
demodQueue->addTask(demod_task, DemodulatorThreadQueue::DEMOD_PRIORITY_HIGHEST);
|
||||
}
|
||||
}
|
||||
}
|
||||
} else {
|
||||
this->Yield();
|
||||
|
||||
Reference in New Issue
Block a user