mirror of
https://github.com/f4exb/sdrangel.git
synced 2024-11-26 09:48:45 -05:00
Deep redesign: Changed Funcube read block from 8192 to 2048 bytes to fix fluidity problem
This commit is contained in:
parent
30b51b5888
commit
f4f9a74269
@ -105,7 +105,7 @@ bool FCDInput::start(int device)
|
||||
|
||||
applySettings(m_settings, true);
|
||||
|
||||
if(!m_sampleFifo.setSize(4096*16))
|
||||
if(!m_sampleFifo.setSize(96000*4))
|
||||
{
|
||||
qCritical("Could not allocate SampleFifo");
|
||||
return false;
|
||||
|
@ -24,7 +24,7 @@ FCDThread::FCDThread(SampleFifo* sampleFifo, QObject* parent) :
|
||||
QThread(parent),
|
||||
fcd_handle(NULL),
|
||||
m_running(false),
|
||||
m_convertBuffer(BLOCKSIZE),
|
||||
m_convertBuffer(FCD_BLOCKSIZE),
|
||||
m_sampleFifo(sampleFifo)
|
||||
{
|
||||
start();
|
||||
@ -48,7 +48,7 @@ void FCDThread::run()
|
||||
|
||||
m_running = true;
|
||||
while(m_running) {
|
||||
if ( work(BLOCKSIZE) < 0)
|
||||
if ( work(FCD_BLOCKSIZE) < 0)
|
||||
break;
|
||||
}
|
||||
CloseSource();
|
||||
|
@ -26,7 +26,7 @@
|
||||
#include <alsa/asoundlib.h>
|
||||
|
||||
#define FCDPP_RATE 192000 // FIXME: The Pro / Pro+ switch should be handled better than this!
|
||||
#define BLOCKSIZE 8192
|
||||
#define FCD_BLOCKSIZE (1<<11)
|
||||
|
||||
class FCDThread : public QThread {
|
||||
Q_OBJECT
|
||||
|
@ -20,13 +20,13 @@
|
||||
#include "rtlsdrthread.h"
|
||||
#include "dsp/samplefifo.h"
|
||||
|
||||
#define BLOCKSIZE 16384
|
||||
#define FCD_BLOCKSIZE 16384
|
||||
|
||||
RTLSDRThread::RTLSDRThread(rtlsdr_dev_t* dev, SampleFifo* sampleFifo, QObject* parent) :
|
||||
QThread(parent),
|
||||
m_running(false),
|
||||
m_dev(dev),
|
||||
m_convertBuffer(BLOCKSIZE),
|
||||
m_convertBuffer(FCD_BLOCKSIZE),
|
||||
m_sampleFifo(sampleFifo),
|
||||
m_samplerate(288000),
|
||||
m_log2Decim(4)
|
||||
@ -71,7 +71,7 @@ void RTLSDRThread::run()
|
||||
m_startWaiter.wakeAll();
|
||||
|
||||
while(m_running) {
|
||||
if((res = rtlsdr_read_async(m_dev, &RTLSDRThread::callbackHelper, this, 32, BLOCKSIZE)) < 0) {
|
||||
if((res = rtlsdr_read_async(m_dev, &RTLSDRThread::callbackHelper, this, 32, FCD_BLOCKSIZE)) < 0) {
|
||||
qCritical("RTLSDRThread: async error: %s", strerror(errno));
|
||||
break;
|
||||
}
|
||||
|
@ -23,7 +23,7 @@
|
||||
V4LThread::V4LThread(SampleFifo* sampleFifo, double frequency, QObject* parent) :
|
||||
QThread(parent),
|
||||
m_running(false),
|
||||
m_convertBuffer(BLOCKSIZE),
|
||||
m_convertBuffer(FCD_BLOCKSIZE),
|
||||
m_sampleFifo(sampleFifo)
|
||||
{
|
||||
centerFreq = frequency;
|
||||
@ -48,7 +48,7 @@ void V4LThread::run()
|
||||
return;
|
||||
|
||||
while(m_running) {
|
||||
work(BLOCKSIZE);
|
||||
work(FCD_BLOCKSIZE);
|
||||
}
|
||||
CloseSource();
|
||||
}
|
||||
|
@ -27,7 +27,7 @@
|
||||
// lowest samplerate in the kernel is 1.2M, but this works better
|
||||
#define SAMPLERATE 1536000
|
||||
#define IF_BANDWIDTH 300000
|
||||
#define BLOCKSIZE 8192
|
||||
#define FCD_BLOCKSIZE 8192
|
||||
|
||||
class V4LThread : public QThread {
|
||||
Q_OBJECT
|
||||
|
@ -23,7 +23,7 @@
|
||||
V4LThread::V4LThread(SampleFifo* sampleFifo, double frequency, QObject* parent) :
|
||||
QThread(parent),
|
||||
m_running(false),
|
||||
m_convertBuffer(BLOCKSIZE),
|
||||
m_convertBuffer(FCD_BLOCKSIZE),
|
||||
m_sampleFifo(sampleFifo)
|
||||
{
|
||||
centerFreq = frequency;
|
||||
@ -48,7 +48,7 @@ void V4LThread::run()
|
||||
return;
|
||||
|
||||
while(m_running) {
|
||||
work(BLOCKSIZE);
|
||||
work(FCD_BLOCKSIZE);
|
||||
}
|
||||
CloseSource();
|
||||
}
|
||||
|
@ -25,7 +25,7 @@
|
||||
#include "dsp/inthalfbandfilter.h"
|
||||
|
||||
#define SAMPLERATE 1024000
|
||||
#define BLOCKSIZE 4096
|
||||
#define FCD_BLOCKSIZE 4096
|
||||
|
||||
class V4LThread : public QThread {
|
||||
Q_OBJECT
|
||||
|
Loading…
Reference in New Issue
Block a user