mirror of
https://github.com/f4exb/sdrangel.git
synced 2025-04-06 03:29:12 -04:00
DATV demod: removed using namespace leansdr
This commit is contained in:
parent
c062c99c2a
commit
503c6093b9
plugins/channelrx/demoddatv
@ -182,7 +182,7 @@ void DATVDemod::configure(MessageQueue* objMessageQueue,
|
||||
int intCenterFrequency,
|
||||
dvb_version enmStandard,
|
||||
DATVModulation enmModulation,
|
||||
code_rate enmFEC,
|
||||
leansdr::code_rate enmFEC,
|
||||
int intSymbolRate,
|
||||
int intNotchFilters,
|
||||
bool blnAllowDrift,
|
||||
@ -202,7 +202,7 @@ void DATVDemod::InitDATVParameters(int intMsps,
|
||||
int intCenterFrequency,
|
||||
dvb_version enmStandard,
|
||||
DATVModulation enmModulation,
|
||||
code_rate enmFEC,
|
||||
leansdr::code_rate enmFEC,
|
||||
int intSampleRate,
|
||||
int intSymbolRate,
|
||||
int intNotchFilters,
|
||||
@ -472,43 +472,43 @@ void DATVDemod::InitDATVFramework()
|
||||
switch(m_objRunning.enmModulation)
|
||||
{
|
||||
case BPSK:
|
||||
m_objCfg.constellation = cstln_lut<256>::BPSK;
|
||||
m_objCfg.constellation = leansdr::cstln_lut<256>::BPSK;
|
||||
break;
|
||||
|
||||
case QPSK:
|
||||
m_objCfg.constellation = cstln_lut<256>::QPSK;
|
||||
m_objCfg.constellation = leansdr::cstln_lut<256>::QPSK;
|
||||
break;
|
||||
|
||||
case PSK8:
|
||||
m_objCfg.constellation = cstln_lut<256>::PSK8;
|
||||
m_objCfg.constellation = leansdr::cstln_lut<256>::PSK8;
|
||||
break;
|
||||
|
||||
case APSK16:
|
||||
m_objCfg.constellation = cstln_lut<256>::APSK16;
|
||||
m_objCfg.constellation = leansdr::cstln_lut<256>::APSK16;
|
||||
break;
|
||||
|
||||
case APSK32:
|
||||
m_objCfg.constellation = cstln_lut<256>::APSK32;
|
||||
m_objCfg.constellation = leansdr::cstln_lut<256>::APSK32;
|
||||
break;
|
||||
|
||||
case APSK64E:
|
||||
m_objCfg.constellation = cstln_lut<256>::APSK64E;
|
||||
m_objCfg.constellation = leansdr::cstln_lut<256>::APSK64E;
|
||||
break;
|
||||
|
||||
case QAM16:
|
||||
m_objCfg.constellation = cstln_lut<256>::QAM16;
|
||||
m_objCfg.constellation = leansdr::cstln_lut<256>::QAM16;
|
||||
break;
|
||||
|
||||
case QAM64:
|
||||
m_objCfg.constellation = cstln_lut<256>::QAM64;
|
||||
m_objCfg.constellation = leansdr::cstln_lut<256>::QAM64;
|
||||
break;
|
||||
|
||||
case QAM256:
|
||||
m_objCfg.constellation = cstln_lut<256>::QAM256;
|
||||
m_objCfg.constellation = leansdr::cstln_lut<256>::QAM256;
|
||||
break;
|
||||
|
||||
default:
|
||||
m_objCfg.constellation = cstln_lut<256>::BPSK;
|
||||
m_objCfg.constellation = leansdr::cstln_lut<256>::BPSK;
|
||||
break;
|
||||
}
|
||||
|
||||
@ -550,19 +550,19 @@ void DATVDemod::InitDATVFramework()
|
||||
|
||||
m_lngExpectedReadIQ = BUF_BASEBAND;
|
||||
|
||||
m_objScheduler = new scheduler();
|
||||
m_objScheduler = new leansdr::scheduler();
|
||||
|
||||
//***************
|
||||
p_rawiq = new pipebuf<cf32>(m_objScheduler, "rawiq", BUF_BASEBAND);
|
||||
p_rawiq_writer = new pipewriter<cf32>(*p_rawiq);
|
||||
p_rawiq = new leansdr::pipebuf<leansdr::cf32>(m_objScheduler, "rawiq", BUF_BASEBAND);
|
||||
p_rawiq_writer = new leansdr::pipewriter<leansdr::cf32>(*p_rawiq);
|
||||
p_preprocessed = p_rawiq;
|
||||
|
||||
// NOTCH FILTER
|
||||
|
||||
if ( m_objCfg.anf>0 )
|
||||
{
|
||||
p_autonotched = new pipebuf<cf32>(m_objScheduler, "autonotched", BUF_BASEBAND);
|
||||
r_auto_notch = new auto_notch<f32>(m_objScheduler, *p_preprocessed, *p_autonotched, m_objCfg.anf, 0);
|
||||
p_autonotched = new leansdr::pipebuf<leansdr::cf32>(m_objScheduler, "autonotched", BUF_BASEBAND);
|
||||
r_auto_notch = new leansdr::auto_notch<leansdr::f32>(m_objScheduler, *p_preprocessed, *p_autonotched, m_objCfg.anf, 0);
|
||||
p_preprocessed = p_autonotched;
|
||||
}
|
||||
|
||||
@ -573,11 +573,11 @@ void DATVDemod::InitDATVFramework()
|
||||
|
||||
// CNR ESTIMATION
|
||||
|
||||
p_cnr = new pipebuf<f32>(m_objScheduler, "cnr", BUF_SLOW);
|
||||
p_cnr = new leansdr::pipebuf<leansdr::f32>(m_objScheduler, "cnr", BUF_SLOW);
|
||||
|
||||
if ( m_objCfg.cnr==true )
|
||||
{
|
||||
r_cnr = new cnr_fft<f32>(m_objScheduler, *p_preprocessed, *p_cnr, m_objCfg.Fm/m_objCfg.Fs);
|
||||
r_cnr = new leansdr::cnr_fft<leansdr::f32>(m_objScheduler, *p_preprocessed, *p_cnr, m_objCfg.Fm/m_objCfg.Fs);
|
||||
r_cnr->decimation = decimation(m_objCfg.Fs, 1); // 1 Hz
|
||||
}
|
||||
|
||||
@ -598,20 +598,20 @@ void DATVDemod::InitDATVFramework()
|
||||
|
||||
// Generic constellation receiver
|
||||
|
||||
p_symbols = new pipebuf<softsymbol>(m_objScheduler, "PSK soft-symbols", BUF_SYMBOLS);
|
||||
p_freq = new pipebuf<f32> (m_objScheduler, "freq", BUF_SLOW);
|
||||
p_ss = new pipebuf<f32> (m_objScheduler, "SS", BUF_SLOW);
|
||||
p_mer = new pipebuf<f32> (m_objScheduler, "MER", BUF_SLOW);
|
||||
p_sampled = new pipebuf<cf32> (m_objScheduler, "PSK symbols", BUF_BASEBAND);
|
||||
p_symbols = new leansdr::pipebuf<leansdr::softsymbol>(m_objScheduler, "PSK soft-symbols", BUF_SYMBOLS);
|
||||
p_freq = new leansdr::pipebuf<leansdr::f32> (m_objScheduler, "freq", BUF_SLOW);
|
||||
p_ss = new leansdr::pipebuf<leansdr::f32> (m_objScheduler, "SS", BUF_SLOW);
|
||||
p_mer = new leansdr::pipebuf<leansdr::f32> (m_objScheduler, "MER", BUF_SLOW);
|
||||
p_sampled = new leansdr::pipebuf<leansdr::cf32> (m_objScheduler, "PSK symbols", BUF_BASEBAND);
|
||||
|
||||
switch ( m_objCfg.sampler )
|
||||
{
|
||||
case SAMP_NEAREST:
|
||||
sampler = new nearest_sampler<float>();
|
||||
sampler = new leansdr::nearest_sampler<float>();
|
||||
break;
|
||||
|
||||
case SAMP_LINEAR:
|
||||
sampler = new linear_sampler<float>();
|
||||
sampler = new leansdr::linear_sampler<float>();
|
||||
break;
|
||||
|
||||
case SAMP_RRC:
|
||||
@ -621,15 +621,15 @@ void DATVDemod::InitDATVFramework()
|
||||
if ( m_objCfg.rrc_steps == 0 )
|
||||
{
|
||||
// At least 64 discrete sampling points between symbols
|
||||
m_objCfg.rrc_steps = max(1, (int)(64*m_objCfg.Fm / m_objCfg.Fs));
|
||||
m_objCfg.rrc_steps = std::max(1, (int)(64*m_objCfg.Fm / m_objCfg.Fs));
|
||||
}
|
||||
|
||||
float Frrc = m_objCfg.Fs * m_objCfg.rrc_steps; // Sample freq of the RRC filter
|
||||
float transition = (m_objCfg.Fm/2) * m_objCfg.rolloff;
|
||||
int order = m_objCfg.rrc_rej * Frrc / (22*transition);
|
||||
ncoeffs_sampler = filtergen::root_raised_cosine(order, m_objCfg.Fm/Frrc, m_objCfg.rolloff, &coeffs_sampler);
|
||||
ncoeffs_sampler = leansdr::filtergen::root_raised_cosine(order, m_objCfg.Fm/Frrc, m_objCfg.rolloff, &coeffs_sampler);
|
||||
|
||||
sampler = new fir_sampler<float,float>(ncoeffs_sampler, coeffs_sampler, m_objCfg.rrc_steps);
|
||||
sampler = new leansdr::fir_sampler<float,float>(ncoeffs_sampler, coeffs_sampler, m_objCfg.rrc_steps);
|
||||
break;
|
||||
}
|
||||
|
||||
@ -638,11 +638,11 @@ void DATVDemod::InitDATVFramework()
|
||||
return;
|
||||
}
|
||||
|
||||
m_objDemodulator = new cstln_receiver<f32>(m_objScheduler, sampler, *p_preprocessed, *p_symbols, p_freq, p_ss, p_mer, p_sampled);
|
||||
m_objDemodulator = new leansdr::cstln_receiver<leansdr::f32>(m_objScheduler, sampler, *p_preprocessed, *p_symbols, p_freq, p_ss, p_mer, p_sampled);
|
||||
|
||||
if ( m_objCfg.standard == DVB_S )
|
||||
{
|
||||
if ( m_objCfg.constellation != cstln_lut<256>::QPSK && m_objCfg.constellation != cstln_lut<256>::BPSK )
|
||||
if ( m_objCfg.constellation != leansdr::cstln_lut<256>::QPSK && m_objCfg.constellation != leansdr::cstln_lut<256>::BPSK )
|
||||
{
|
||||
fprintf(stderr, "Warning: non-standard constellation for DVB-S\n");
|
||||
}
|
||||
@ -696,13 +696,13 @@ void DATVDemod::InitDATVFramework()
|
||||
|
||||
m_objRegisteredDATVScreen->resizeDATVScreen(256,256);
|
||||
|
||||
r_scope_symbols = new datvconstellation<f32>(m_objScheduler, *p_sampled, -128,128, NULL, m_objRegisteredDATVScreen);
|
||||
r_scope_symbols = new leansdr::datvconstellation<leansdr::f32>(m_objScheduler, *p_sampled, -128,128, NULL, m_objRegisteredDATVScreen);
|
||||
r_scope_symbols->decimation = 1;
|
||||
r_scope_symbols->cstln = &m_objDemodulator->cstln;
|
||||
|
||||
// DECONVOLUTION AND SYNCHRONIZATION
|
||||
|
||||
p_bytes = new pipebuf<u8>(m_objScheduler, "bytes", BUF_BYTES);
|
||||
p_bytes = new leansdr::pipebuf<leansdr::u8>(m_objScheduler, "bytes", BUF_BYTES);
|
||||
|
||||
r_deconv = NULL;
|
||||
|
||||
@ -710,13 +710,13 @@ void DATVDemod::InitDATVFramework()
|
||||
|
||||
if ( m_objCfg.viterbi )
|
||||
{
|
||||
if ( m_objCfg.fec==FEC23 && (m_objDemodulator->cstln->nsymbols==4 || m_objDemodulator->cstln->nsymbols==64) )
|
||||
if ( m_objCfg.fec == leansdr::FEC23 && (m_objDemodulator->cstln->nsymbols == 4 || m_objDemodulator->cstln->nsymbols == 64) )
|
||||
{
|
||||
m_objCfg.fec = FEC46;
|
||||
m_objCfg.fec = leansdr::FEC46;
|
||||
}
|
||||
|
||||
//To uncomment -> Linking Problem : undefined symbol: _ZN7leansdr21viterbi_dec_interfaceIhhiiE6updateEPiS2_
|
||||
r = new viterbi_sync(m_objScheduler, (*p_symbols), (*p_bytes), m_objDemodulator->cstln, m_objCfg.fec);
|
||||
r = new leansdr::viterbi_sync(m_objScheduler, (*p_symbols), (*p_bytes), m_objDemodulator->cstln, m_objCfg.fec);
|
||||
|
||||
if ( m_objCfg.fastlock )
|
||||
{
|
||||
@ -731,25 +731,25 @@ void DATVDemod::InitDATVFramework()
|
||||
|
||||
//******* -> if ( m_objCfg.hdlc )
|
||||
|
||||
p_mpegbytes = new pipebuf<u8> (m_objScheduler, "mpegbytes", BUF_MPEGBYTES);
|
||||
p_lock = new pipebuf<int> (m_objScheduler, "lock", BUF_SLOW);
|
||||
p_locktime = new pipebuf<u32> (m_objScheduler, "locktime", BUF_PACKETS);
|
||||
p_mpegbytes = new leansdr::pipebuf<leansdr::u8> (m_objScheduler, "mpegbytes", BUF_MPEGBYTES);
|
||||
p_lock = new leansdr::pipebuf<int> (m_objScheduler, "lock", BUF_SLOW);
|
||||
p_locktime = new leansdr::pipebuf<leansdr::u32> (m_objScheduler, "locktime", BUF_PACKETS);
|
||||
|
||||
r_sync_mpeg = new mpeg_sync<u8,0>(m_objScheduler, *p_bytes, *p_mpegbytes, r_deconv, p_lock, p_locktime);
|
||||
r_sync_mpeg = new leansdr::mpeg_sync<leansdr::u8, 0>(m_objScheduler, *p_bytes, *p_mpegbytes, r_deconv, p_lock, p_locktime);
|
||||
r_sync_mpeg->fastlock = m_objCfg.fastlock;
|
||||
|
||||
// DEINTERLEAVING
|
||||
|
||||
p_rspackets = new pipebuf< rspacket<u8> >(m_objScheduler, "RS-enc packets", BUF_PACKETS);
|
||||
r_deinter = new deinterleaver<u8>(m_objScheduler, *p_mpegbytes, *p_rspackets);
|
||||
p_rspackets = new leansdr::pipebuf< leansdr::rspacket<leansdr::u8> >(m_objScheduler, "RS-enc packets", BUF_PACKETS);
|
||||
r_deinter = new leansdr::deinterleaver<leansdr::u8>(m_objScheduler, *p_mpegbytes, *p_rspackets);
|
||||
|
||||
|
||||
// REED-SOLOMON
|
||||
|
||||
p_vbitcount = new pipebuf<int>(m_objScheduler, "Bits processed", BUF_PACKETS);
|
||||
p_verrcount = new pipebuf<int>(m_objScheduler, "Bits corrected", BUF_PACKETS);
|
||||
p_rtspackets = new pipebuf<tspacket>(m_objScheduler, "rand TS packets", BUF_PACKETS);
|
||||
r_rsdec = new rs_decoder<u8,0> (m_objScheduler, *p_rspackets, *p_rtspackets, p_vbitcount, p_verrcount);
|
||||
p_vbitcount = new leansdr::pipebuf<int>(m_objScheduler, "Bits processed", BUF_PACKETS);
|
||||
p_verrcount = new leansdr::pipebuf<int>(m_objScheduler, "Bits corrected", BUF_PACKETS);
|
||||
p_rtspackets = new leansdr::pipebuf<leansdr::tspacket>(m_objScheduler, "rand TS packets", BUF_PACKETS);
|
||||
r_rsdec = new leansdr::rs_decoder<leansdr::u8, 0> (m_objScheduler, *p_rspackets, *p_rtspackets, p_vbitcount, p_verrcount);
|
||||
|
||||
|
||||
// BER ESTIMATION
|
||||
@ -768,12 +768,12 @@ void DATVDemod::InitDATVFramework()
|
||||
|
||||
// DERANDOMIZATION
|
||||
|
||||
p_tspackets = new pipebuf<tspacket>(m_objScheduler, "TS packets", BUF_PACKETS);
|
||||
r_derand = new derandomizer(m_objScheduler, *p_rtspackets, *p_tspackets);
|
||||
p_tspackets = new leansdr::pipebuf<leansdr::tspacket>(m_objScheduler, "TS packets", BUF_PACKETS);
|
||||
r_derand = new leansdr::derandomizer(m_objScheduler, *p_rtspackets, *p_tspackets);
|
||||
|
||||
|
||||
// OUTPUT
|
||||
r_videoplayer = new datvvideoplayer<tspacket>(m_objScheduler, *p_tspackets,m_objVideoStream);
|
||||
r_videoplayer = new leansdr::datvvideoplayer<leansdr::tspacket>(m_objScheduler, *p_tspackets,m_objVideoStream);
|
||||
|
||||
m_blnDVBInitialized=true;
|
||||
}
|
||||
@ -783,7 +783,7 @@ void DATVDemod::feed(const SampleVector::const_iterator& begin, const SampleVect
|
||||
qint16 * ptrBufferToRelease=NULL;
|
||||
float fltI;
|
||||
float fltQ;
|
||||
cf32 objIQ;
|
||||
leansdr::cf32 objIQ;
|
||||
//Complex objC;
|
||||
fftfilt::cmplx *objRF;
|
||||
int intRFOut;
|
||||
@ -866,7 +866,7 @@ void DATVDemod::feed(const SampleVector::const_iterator& begin, const SampleVect
|
||||
|
||||
m_lngReadIQ=0;
|
||||
delete p_rawiq_writer;
|
||||
p_rawiq_writer = new pipewriter<cf32>(*p_rawiq);
|
||||
p_rawiq_writer = new leansdr::pipewriter<leansdr::cf32>(*p_rawiq);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -66,13 +66,11 @@ class DownChannelizer;
|
||||
#include "datvideostream.h"
|
||||
#include "datvideorender.h"
|
||||
|
||||
using namespace leansdr;
|
||||
|
||||
enum DATVModulation { BPSK, QPSK, PSK8, APSK16, APSK32, APSK64E, QAM16, QAM64, QAM256 };
|
||||
enum dvb_version { DVB_S, DVB_S2 };
|
||||
enum dvb_sampler { SAMP_NEAREST, SAMP_LINEAR, SAMP_RRC };
|
||||
|
||||
inline int decimation(float Fin, float Fout) { int d = Fin / Fout; return max(d, 1); }
|
||||
inline int decimation(float Fin, float Fout) { int d = Fin / Fout; return std::max(d, 1); }
|
||||
|
||||
struct config
|
||||
{
|
||||
@ -86,8 +84,8 @@ struct config
|
||||
bool cnr; // Measure CNR
|
||||
unsigned int decim; // Decimation, 0=auto
|
||||
float Fm; // QPSK symbol rate (Hz)
|
||||
cstln_lut<256>::predef constellation;
|
||||
code_rate fec;
|
||||
leansdr::cstln_lut<256>::predef constellation;
|
||||
leansdr::code_rate fec;
|
||||
float Ftune; // Bias frequency for the QPSK demodulator (Hz)
|
||||
bool allow_drift;
|
||||
bool fastlock;
|
||||
@ -108,12 +106,12 @@ struct config
|
||||
buf_factor(4),
|
||||
Fs(2.4e6),
|
||||
Fderot(0),
|
||||
anf(1),
|
||||
anf(0),
|
||||
cnr(false),
|
||||
decim(0),
|
||||
Fm(2e6),
|
||||
constellation(cstln_lut<256>::QPSK),
|
||||
fec(FEC12),
|
||||
constellation(leansdr::cstln_lut<256>::QPSK),
|
||||
fec(leansdr::FEC12),
|
||||
Ftune(0),
|
||||
allow_drift(false),
|
||||
fastlock(true),
|
||||
@ -139,7 +137,7 @@ struct DATVConfig
|
||||
int intCenterFrequency;
|
||||
dvb_version enmStandard;
|
||||
DATVModulation enmModulation;
|
||||
code_rate enmFEC;
|
||||
leansdr::code_rate enmFEC;
|
||||
int intSampleRate;
|
||||
int intSymbolRate;
|
||||
int intNotchFilters;
|
||||
@ -157,7 +155,7 @@ struct DATVConfig
|
||||
intCenterFrequency(0),
|
||||
enmStandard(DVB_S),
|
||||
enmModulation(BPSK),
|
||||
enmFEC(FEC12),
|
||||
enmFEC(leansdr::FEC12),
|
||||
intSampleRate(1024000),
|
||||
intSymbolRate(250000),
|
||||
intNotchFilters(1),
|
||||
@ -196,7 +194,7 @@ public:
|
||||
int intCenterFrequency,
|
||||
dvb_version enmStandard,
|
||||
DATVModulation enmModulation,
|
||||
code_rate enmFEC,
|
||||
leansdr::code_rate enmFEC,
|
||||
int intSymbolRate,
|
||||
int intNotchFilters,
|
||||
bool blnAllowDrift,
|
||||
@ -223,7 +221,7 @@ public:
|
||||
int intCenterFrequency,
|
||||
dvb_version enmStandard,
|
||||
DATVModulation enmModulation,
|
||||
code_rate enmFEC,
|
||||
leansdr::code_rate enmFEC,
|
||||
int intSampleRate,
|
||||
int intSymbolRate,
|
||||
int intNotchFilters,
|
||||
@ -278,7 +276,7 @@ private:
|
||||
int intCenterFrequency,
|
||||
dvb_version enmStandard,
|
||||
DATVModulation enmModulation,
|
||||
code_rate enmFEC,
|
||||
leansdr::code_rate enmFEC,
|
||||
int intSymbolRate,
|
||||
int intNotchFilters,
|
||||
bool blnAllowDrift,
|
||||
@ -300,7 +298,7 @@ private:
|
||||
int intCenterFrequency,
|
||||
dvb_version enmStandard,
|
||||
DATVModulation enmModulation,
|
||||
code_rate enmFEC,
|
||||
leansdr::code_rate enmFEC,
|
||||
int intSymbolRate,
|
||||
int intNotchFilters,
|
||||
bool blnAllowDrift,
|
||||
@ -343,7 +341,7 @@ private:
|
||||
|
||||
//************** LEANDBV Scheduler ***************
|
||||
|
||||
scheduler * m_objScheduler;
|
||||
leansdr::scheduler * m_objScheduler;
|
||||
struct config m_objCfg;
|
||||
|
||||
bool m_blnDVBInitialized;
|
||||
@ -352,90 +350,90 @@ private:
|
||||
//LeanSDR Pipe Buffer
|
||||
// INPUT
|
||||
|
||||
pipebuf<cf32> *p_rawiq;
|
||||
pipewriter<cf32> *p_rawiq_writer;
|
||||
pipebuf<cf32> *p_preprocessed;
|
||||
leansdr::pipebuf<leansdr::cf32> *p_rawiq;
|
||||
leansdr::pipewriter<leansdr::cf32> *p_rawiq_writer;
|
||||
leansdr::pipebuf<leansdr::cf32> *p_preprocessed;
|
||||
|
||||
// NOTCH FILTER
|
||||
auto_notch<f32> *r_auto_notch;
|
||||
pipebuf<cf32> *p_autonotched;
|
||||
leansdr::auto_notch<leansdr::f32> *r_auto_notch;
|
||||
leansdr::pipebuf<leansdr::cf32> *p_autonotched;
|
||||
|
||||
// FREQUENCY CORRECTION : DEROTATOR
|
||||
pipebuf<cf32> *p_derot;
|
||||
rotator<f32> *r_derot;
|
||||
leansdr::pipebuf<leansdr::cf32> *p_derot;
|
||||
leansdr::rotator<leansdr::f32> *r_derot;
|
||||
|
||||
// CNR ESTIMATION
|
||||
pipebuf<f32> *p_cnr;
|
||||
cnr_fft<f32> *r_cnr;
|
||||
leansdr::pipebuf<leansdr::f32> *p_cnr;
|
||||
leansdr::cnr_fft<leansdr::f32> *r_cnr;
|
||||
|
||||
//FILTERING
|
||||
fir_filter<cf32,float> *r_resample;
|
||||
pipebuf<cf32> *p_resampled;
|
||||
leansdr::fir_filter<leansdr::cf32,float> *r_resample;
|
||||
leansdr::pipebuf<leansdr::cf32> *p_resampled;
|
||||
float *coeffs;
|
||||
int ncoeffs;
|
||||
|
||||
// OUTPUT PREPROCESSED DATA
|
||||
sampler_interface<f32> *sampler;
|
||||
leansdr::sampler_interface<leansdr::f32> *sampler;
|
||||
float *coeffs_sampler;
|
||||
int ncoeffs_sampler;
|
||||
|
||||
pipebuf<softsymbol> *p_symbols;
|
||||
pipebuf<f32> *p_freq;
|
||||
pipebuf<f32> *p_ss;
|
||||
pipebuf<f32> *p_mer;
|
||||
pipebuf<cf32> *p_sampled;
|
||||
leansdr::pipebuf<leansdr::softsymbol> *p_symbols;
|
||||
leansdr::pipebuf<leansdr::f32> *p_freq;
|
||||
leansdr::pipebuf<leansdr::f32> *p_ss;
|
||||
leansdr::pipebuf<leansdr::f32> *p_mer;
|
||||
leansdr::pipebuf<leansdr::cf32> *p_sampled;
|
||||
|
||||
//DECIMATION
|
||||
pipebuf<cf32> *p_decimated;
|
||||
decimator<cf32> *p_decim;
|
||||
leansdr::pipebuf<leansdr::cf32> *p_decimated;
|
||||
leansdr::decimator<leansdr::cf32> *p_decim;
|
||||
|
||||
//PROCESSED DATA MONITORING
|
||||
file_writer<cf32> *r_ppout;
|
||||
leansdr::file_writer<leansdr::cf32> *r_ppout;
|
||||
|
||||
//GENERIC CONSTELLATION RECEIVER
|
||||
cstln_receiver<f32> *m_objDemodulator;
|
||||
leansdr::cstln_receiver<leansdr::f32> *m_objDemodulator;
|
||||
|
||||
// DECONVOLUTION AND SYNCHRONIZATION
|
||||
pipebuf<u8> *p_bytes;
|
||||
deconvol_sync_simple *r_deconv;
|
||||
viterbi_sync *r;
|
||||
pipebuf<u8> *p_descrambled;
|
||||
pipebuf<u8> *p_frames;
|
||||
leansdr::pipebuf<leansdr::u8> *p_bytes;
|
||||
leansdr::deconvol_sync_simple *r_deconv;
|
||||
leansdr::viterbi_sync *r;
|
||||
leansdr::pipebuf<leansdr::u8> *p_descrambled;
|
||||
leansdr::pipebuf<leansdr::u8> *p_frames;
|
||||
|
||||
etr192_descrambler * r_etr192_descrambler;
|
||||
hdlc_sync *r_sync;
|
||||
leansdr::etr192_descrambler * r_etr192_descrambler;
|
||||
leansdr::hdlc_sync *r_sync;
|
||||
|
||||
pipebuf<u8> *p_mpegbytes;
|
||||
pipebuf<int> *p_lock;
|
||||
pipebuf<u32> *p_locktime;
|
||||
mpeg_sync<u8,0> *r_sync_mpeg;
|
||||
leansdr::pipebuf<leansdr::u8> *p_mpegbytes;
|
||||
leansdr::pipebuf<int> *p_lock;
|
||||
leansdr::pipebuf<leansdr::u32> *p_locktime;
|
||||
leansdr::mpeg_sync<leansdr::u8, 0> *r_sync_mpeg;
|
||||
|
||||
|
||||
// DEINTERLEAVING
|
||||
pipebuf< rspacket<u8> > *p_rspackets;
|
||||
deinterleaver<u8> *r_deinter;
|
||||
leansdr::pipebuf<leansdr::rspacket<leansdr::u8> > *p_rspackets;
|
||||
leansdr::deinterleaver<leansdr::u8> *r_deinter;
|
||||
|
||||
// REED-SOLOMON
|
||||
pipebuf<int> *p_vbitcount;
|
||||
pipebuf<int> *p_verrcount;
|
||||
pipebuf<tspacket> *p_rtspackets;
|
||||
rs_decoder<u8,0> *r_rsdec;
|
||||
leansdr::pipebuf<int> *p_vbitcount;
|
||||
leansdr::pipebuf<int> *p_verrcount;
|
||||
leansdr::pipebuf<leansdr::tspacket> *p_rtspackets;
|
||||
leansdr::rs_decoder<leansdr::u8, 0> *r_rsdec;
|
||||
|
||||
// BER ESTIMATION
|
||||
pipebuf<float> *p_vber;
|
||||
rate_estimator<float> *r_vber;
|
||||
leansdr::pipebuf<float> *p_vber;
|
||||
leansdr::rate_estimator<float> *r_vber;
|
||||
|
||||
// DERANDOMIZATION
|
||||
pipebuf<tspacket> *p_tspackets;
|
||||
derandomizer *r_derand;
|
||||
leansdr::pipebuf<leansdr::tspacket> *p_tspackets;
|
||||
leansdr::derandomizer *r_derand;
|
||||
|
||||
|
||||
//OUTPUT
|
||||
file_writer<tspacket> *r_stdout;
|
||||
datvvideoplayer<tspacket> *r_videoplayer;
|
||||
leansdr::file_writer<leansdr::tspacket> *r_stdout;
|
||||
leansdr::datvvideoplayer<leansdr::tspacket> *r_videoplayer;
|
||||
|
||||
//CONSTELLATION
|
||||
datvconstellation<f32> *r_scope_symbols;
|
||||
leansdr::datvconstellation<leansdr::f32> *r_scope_symbols;
|
||||
|
||||
DeviceSourceAPI* m_deviceAPI;
|
||||
|
||||
|
@ -87,7 +87,7 @@ void DATVDemodGUI::resetToDefaults()
|
||||
ui->cmbFilter->setCurrentIndex(0);
|
||||
displayRRCParameters(false);
|
||||
|
||||
ui->spiNotchFilters->setValue(1);
|
||||
ui->spiNotchFilters->setValue(0);
|
||||
ui->prgSynchro->setValue(0);
|
||||
|
||||
ui->lblStatus->setText("");
|
||||
@ -191,7 +191,7 @@ bool DATVDemodGUI::deserialize(const QByteArray& arrData)
|
||||
d.readS32(11, &tmp, 0);
|
||||
ui->cmbStandard->setCurrentIndex(tmp);
|
||||
|
||||
d.readS32(12, &tmp, 1);
|
||||
d.readS32(12, &tmp, 0);
|
||||
ui->spiNotchFilters->setValue(tmp);
|
||||
|
||||
d.readS32(13, &tmp, 1024000);
|
||||
@ -320,7 +320,7 @@ void DATVDemodGUI::applySettings()
|
||||
|
||||
DATVModulation enmSelectedModulation;
|
||||
dvb_version enmVersion;
|
||||
code_rate enmFEC;
|
||||
leansdr::code_rate enmFEC;
|
||||
dvb_sampler enmSampler;
|
||||
|
||||
if (m_blnDoApplySettings)
|
||||
@ -403,41 +403,41 @@ void DATVDemodGUI::applySettings()
|
||||
|
||||
strFEC = ui->cmbFEC->currentText();
|
||||
|
||||
if(strFEC=="1/2")
|
||||
if(strFEC == "1/2")
|
||||
{
|
||||
enmFEC=FEC12;
|
||||
enmFEC = leansdr::FEC12;
|
||||
}
|
||||
else if(strFEC=="2/3")
|
||||
else if(strFEC == "2/3")
|
||||
{
|
||||
enmFEC=FEC23;
|
||||
enmFEC = leansdr::FEC23;
|
||||
}
|
||||
else if(strFEC=="3/4")
|
||||
else if(strFEC == "3/4")
|
||||
{
|
||||
enmFEC=FEC34;
|
||||
enmFEC = leansdr::FEC34;
|
||||
}
|
||||
else if(strFEC=="5/6")
|
||||
else if(strFEC == "5/6")
|
||||
{
|
||||
enmFEC=FEC56;
|
||||
enmFEC = leansdr::FEC56;
|
||||
}
|
||||
else if(strFEC=="7/8")
|
||||
else if(strFEC == "7/8")
|
||||
{
|
||||
enmFEC=FEC78;
|
||||
enmFEC = leansdr::FEC78;
|
||||
}
|
||||
else if(strFEC=="4/5")
|
||||
else if(strFEC == "4/5")
|
||||
{
|
||||
enmFEC=FEC45;
|
||||
enmFEC = leansdr::FEC45;
|
||||
}
|
||||
else if(strFEC=="8/9")
|
||||
else if(strFEC == "8/9")
|
||||
{
|
||||
enmFEC=FEC89;
|
||||
enmFEC = leansdr::FEC89;
|
||||
}
|
||||
else if(strFEC=="9/10")
|
||||
else if(strFEC == "9/10")
|
||||
{
|
||||
enmFEC=FEC910;
|
||||
enmFEC = leansdr::FEC910;
|
||||
}
|
||||
else
|
||||
{
|
||||
enmFEC=FEC12;
|
||||
enmFEC = leansdr::FEC12;
|
||||
}
|
||||
|
||||
if (ui->cmbFilter->currentIndex()==0)
|
||||
|
Loading…
Reference in New Issue
Block a user