DATV demod: removed using namespace leansdr

This commit is contained in:
f4exb 2018-03-04 04:00:02 +01:00
parent c062c99c2a
commit 503c6093b9
3 changed files with 129 additions and 131 deletions

View File

@ -182,7 +182,7 @@ void DATVDemod::configure(MessageQueue* objMessageQueue,
int intCenterFrequency, int intCenterFrequency,
dvb_version enmStandard, dvb_version enmStandard,
DATVModulation enmModulation, DATVModulation enmModulation,
code_rate enmFEC, leansdr::code_rate enmFEC,
int intSymbolRate, int intSymbolRate,
int intNotchFilters, int intNotchFilters,
bool blnAllowDrift, bool blnAllowDrift,
@ -202,7 +202,7 @@ void DATVDemod::InitDATVParameters(int intMsps,
int intCenterFrequency, int intCenterFrequency,
dvb_version enmStandard, dvb_version enmStandard,
DATVModulation enmModulation, DATVModulation enmModulation,
code_rate enmFEC, leansdr::code_rate enmFEC,
int intSampleRate, int intSampleRate,
int intSymbolRate, int intSymbolRate,
int intNotchFilters, int intNotchFilters,
@ -472,43 +472,43 @@ void DATVDemod::InitDATVFramework()
switch(m_objRunning.enmModulation) switch(m_objRunning.enmModulation)
{ {
case BPSK: case BPSK:
m_objCfg.constellation = cstln_lut<256>::BPSK; m_objCfg.constellation = leansdr::cstln_lut<256>::BPSK;
break; break;
case QPSK: case QPSK:
m_objCfg.constellation = cstln_lut<256>::QPSK; m_objCfg.constellation = leansdr::cstln_lut<256>::QPSK;
break; break;
case PSK8: case PSK8:
m_objCfg.constellation = cstln_lut<256>::PSK8; m_objCfg.constellation = leansdr::cstln_lut<256>::PSK8;
break; break;
case APSK16: case APSK16:
m_objCfg.constellation = cstln_lut<256>::APSK16; m_objCfg.constellation = leansdr::cstln_lut<256>::APSK16;
break; break;
case APSK32: case APSK32:
m_objCfg.constellation = cstln_lut<256>::APSK32; m_objCfg.constellation = leansdr::cstln_lut<256>::APSK32;
break; break;
case APSK64E: case APSK64E:
m_objCfg.constellation = cstln_lut<256>::APSK64E; m_objCfg.constellation = leansdr::cstln_lut<256>::APSK64E;
break; break;
case QAM16: case QAM16:
m_objCfg.constellation = cstln_lut<256>::QAM16; m_objCfg.constellation = leansdr::cstln_lut<256>::QAM16;
break; break;
case QAM64: case QAM64:
m_objCfg.constellation = cstln_lut<256>::QAM64; m_objCfg.constellation = leansdr::cstln_lut<256>::QAM64;
break; break;
case QAM256: case QAM256:
m_objCfg.constellation = cstln_lut<256>::QAM256; m_objCfg.constellation = leansdr::cstln_lut<256>::QAM256;
break; break;
default: default:
m_objCfg.constellation = cstln_lut<256>::BPSK; m_objCfg.constellation = leansdr::cstln_lut<256>::BPSK;
break; break;
} }
@ -550,19 +550,19 @@ void DATVDemod::InitDATVFramework()
m_lngExpectedReadIQ = BUF_BASEBAND; 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 = new leansdr::pipebuf<leansdr::cf32>(m_objScheduler, "rawiq", BUF_BASEBAND);
p_rawiq_writer = new pipewriter<cf32>(*p_rawiq); p_rawiq_writer = new leansdr::pipewriter<leansdr::cf32>(*p_rawiq);
p_preprocessed = p_rawiq; p_preprocessed = p_rawiq;
// NOTCH FILTER // NOTCH FILTER
if ( m_objCfg.anf>0 ) if ( m_objCfg.anf>0 )
{ {
p_autonotched = new pipebuf<cf32>(m_objScheduler, "autonotched", BUF_BASEBAND); p_autonotched = new leansdr::pipebuf<leansdr::cf32>(m_objScheduler, "autonotched", BUF_BASEBAND);
r_auto_notch = new auto_notch<f32>(m_objScheduler, *p_preprocessed, *p_autonotched, m_objCfg.anf, 0); r_auto_notch = new leansdr::auto_notch<leansdr::f32>(m_objScheduler, *p_preprocessed, *p_autonotched, m_objCfg.anf, 0);
p_preprocessed = p_autonotched; p_preprocessed = p_autonotched;
} }
@ -573,11 +573,11 @@ void DATVDemod::InitDATVFramework()
// CNR ESTIMATION // 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 ) 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 r_cnr->decimation = decimation(m_objCfg.Fs, 1); // 1 Hz
} }
@ -598,20 +598,20 @@ void DATVDemod::InitDATVFramework()
// Generic constellation receiver // Generic constellation receiver
p_symbols = new pipebuf<softsymbol>(m_objScheduler, "PSK soft-symbols", BUF_SYMBOLS); p_symbols = new leansdr::pipebuf<leansdr::softsymbol>(m_objScheduler, "PSK soft-symbols", BUF_SYMBOLS);
p_freq = new pipebuf<f32> (m_objScheduler, "freq", BUF_SLOW); p_freq = new leansdr::pipebuf<leansdr::f32> (m_objScheduler, "freq", BUF_SLOW);
p_ss = new pipebuf<f32> (m_objScheduler, "SS", BUF_SLOW); p_ss = new leansdr::pipebuf<leansdr::f32> (m_objScheduler, "SS", BUF_SLOW);
p_mer = new pipebuf<f32> (m_objScheduler, "MER", BUF_SLOW); p_mer = new leansdr::pipebuf<leansdr::f32> (m_objScheduler, "MER", BUF_SLOW);
p_sampled = new pipebuf<cf32> (m_objScheduler, "PSK symbols", BUF_BASEBAND); p_sampled = new leansdr::pipebuf<leansdr::cf32> (m_objScheduler, "PSK symbols", BUF_BASEBAND);
switch ( m_objCfg.sampler ) switch ( m_objCfg.sampler )
{ {
case SAMP_NEAREST: case SAMP_NEAREST:
sampler = new nearest_sampler<float>(); sampler = new leansdr::nearest_sampler<float>();
break; break;
case SAMP_LINEAR: case SAMP_LINEAR:
sampler = new linear_sampler<float>(); sampler = new leansdr::linear_sampler<float>();
break; break;
case SAMP_RRC: case SAMP_RRC:
@ -621,15 +621,15 @@ void DATVDemod::InitDATVFramework()
if ( m_objCfg.rrc_steps == 0 ) if ( m_objCfg.rrc_steps == 0 )
{ {
// At least 64 discrete sampling points between symbols // 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 Frrc = m_objCfg.Fs * m_objCfg.rrc_steps; // Sample freq of the RRC filter
float transition = (m_objCfg.Fm/2) * m_objCfg.rolloff; float transition = (m_objCfg.Fm/2) * m_objCfg.rolloff;
int order = m_objCfg.rrc_rej * Frrc / (22*transition); 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; break;
} }
@ -638,11 +638,11 @@ void DATVDemod::InitDATVFramework()
return; 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.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"); fprintf(stderr, "Warning: non-standard constellation for DVB-S\n");
} }
@ -696,13 +696,13 @@ void DATVDemod::InitDATVFramework()
m_objRegisteredDATVScreen->resizeDATVScreen(256,256); 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->decimation = 1;
r_scope_symbols->cstln = &m_objDemodulator->cstln; r_scope_symbols->cstln = &m_objDemodulator->cstln;
// DECONVOLUTION AND SYNCHRONIZATION // 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; r_deconv = NULL;
@ -710,13 +710,13 @@ void DATVDemod::InitDATVFramework()
if ( m_objCfg.viterbi ) 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_ //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 ) if ( m_objCfg.fastlock )
{ {
@ -731,25 +731,25 @@ void DATVDemod::InitDATVFramework()
//******* -> if ( m_objCfg.hdlc ) //******* -> if ( m_objCfg.hdlc )
p_mpegbytes = new pipebuf<u8> (m_objScheduler, "mpegbytes", BUF_MPEGBYTES); p_mpegbytes = new leansdr::pipebuf<leansdr::u8> (m_objScheduler, "mpegbytes", BUF_MPEGBYTES);
p_lock = new pipebuf<int> (m_objScheduler, "lock", BUF_SLOW); p_lock = new leansdr::pipebuf<int> (m_objScheduler, "lock", BUF_SLOW);
p_locktime = new pipebuf<u32> (m_objScheduler, "locktime", BUF_PACKETS); 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; r_sync_mpeg->fastlock = m_objCfg.fastlock;
// DEINTERLEAVING // DEINTERLEAVING
p_rspackets = new pipebuf< rspacket<u8> >(m_objScheduler, "RS-enc packets", BUF_PACKETS); p_rspackets = new leansdr::pipebuf< leansdr::rspacket<leansdr::u8> >(m_objScheduler, "RS-enc packets", BUF_PACKETS);
r_deinter = new deinterleaver<u8>(m_objScheduler, *p_mpegbytes, *p_rspackets); r_deinter = new leansdr::deinterleaver<leansdr::u8>(m_objScheduler, *p_mpegbytes, *p_rspackets);
// REED-SOLOMON // REED-SOLOMON
p_vbitcount = new pipebuf<int>(m_objScheduler, "Bits processed", BUF_PACKETS); p_vbitcount = new leansdr::pipebuf<int>(m_objScheduler, "Bits processed", BUF_PACKETS);
p_verrcount = new pipebuf<int>(m_objScheduler, "Bits corrected", BUF_PACKETS); p_verrcount = new leansdr::pipebuf<int>(m_objScheduler, "Bits corrected", BUF_PACKETS);
p_rtspackets = new pipebuf<tspacket>(m_objScheduler, "rand TS packets", BUF_PACKETS); p_rtspackets = new leansdr::pipebuf<leansdr::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); r_rsdec = new leansdr::rs_decoder<leansdr::u8, 0> (m_objScheduler, *p_rspackets, *p_rtspackets, p_vbitcount, p_verrcount);
// BER ESTIMATION // BER ESTIMATION
@ -768,12 +768,12 @@ void DATVDemod::InitDATVFramework()
// DERANDOMIZATION // DERANDOMIZATION
p_tspackets = new pipebuf<tspacket>(m_objScheduler, "TS packets", BUF_PACKETS); p_tspackets = new leansdr::pipebuf<leansdr::tspacket>(m_objScheduler, "TS packets", BUF_PACKETS);
r_derand = new derandomizer(m_objScheduler, *p_rtspackets, *p_tspackets); r_derand = new leansdr::derandomizer(m_objScheduler, *p_rtspackets, *p_tspackets);
// OUTPUT // 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; m_blnDVBInitialized=true;
} }
@ -783,7 +783,7 @@ void DATVDemod::feed(const SampleVector::const_iterator& begin, const SampleVect
qint16 * ptrBufferToRelease=NULL; qint16 * ptrBufferToRelease=NULL;
float fltI; float fltI;
float fltQ; float fltQ;
cf32 objIQ; leansdr::cf32 objIQ;
//Complex objC; //Complex objC;
fftfilt::cmplx *objRF; fftfilt::cmplx *objRF;
int intRFOut; int intRFOut;
@ -866,7 +866,7 @@ void DATVDemod::feed(const SampleVector::const_iterator& begin, const SampleVect
m_lngReadIQ=0; m_lngReadIQ=0;
delete p_rawiq_writer; delete p_rawiq_writer;
p_rawiq_writer = new pipewriter<cf32>(*p_rawiq); p_rawiq_writer = new leansdr::pipewriter<leansdr::cf32>(*p_rawiq);
} }
} }

View File

@ -66,13 +66,11 @@ class DownChannelizer;
#include "datvideostream.h" #include "datvideostream.h"
#include "datvideorender.h" #include "datvideorender.h"
using namespace leansdr;
enum DATVModulation { BPSK, QPSK, PSK8, APSK16, APSK32, APSK64E, QAM16, QAM64, QAM256 }; enum DATVModulation { BPSK, QPSK, PSK8, APSK16, APSK32, APSK64E, QAM16, QAM64, QAM256 };
enum dvb_version { DVB_S, DVB_S2 }; enum dvb_version { DVB_S, DVB_S2 };
enum dvb_sampler { SAMP_NEAREST, SAMP_LINEAR, SAMP_RRC }; 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 struct config
{ {
@ -86,8 +84,8 @@ struct config
bool cnr; // Measure CNR bool cnr; // Measure CNR
unsigned int decim; // Decimation, 0=auto unsigned int decim; // Decimation, 0=auto
float Fm; // QPSK symbol rate (Hz) float Fm; // QPSK symbol rate (Hz)
cstln_lut<256>::predef constellation; leansdr::cstln_lut<256>::predef constellation;
code_rate fec; leansdr::code_rate fec;
float Ftune; // Bias frequency for the QPSK demodulator (Hz) float Ftune; // Bias frequency for the QPSK demodulator (Hz)
bool allow_drift; bool allow_drift;
bool fastlock; bool fastlock;
@ -108,12 +106,12 @@ struct config
buf_factor(4), buf_factor(4),
Fs(2.4e6), Fs(2.4e6),
Fderot(0), Fderot(0),
anf(1), anf(0),
cnr(false), cnr(false),
decim(0), decim(0),
Fm(2e6), Fm(2e6),
constellation(cstln_lut<256>::QPSK), constellation(leansdr::cstln_lut<256>::QPSK),
fec(FEC12), fec(leansdr::FEC12),
Ftune(0), Ftune(0),
allow_drift(false), allow_drift(false),
fastlock(true), fastlock(true),
@ -139,7 +137,7 @@ struct DATVConfig
int intCenterFrequency; int intCenterFrequency;
dvb_version enmStandard; dvb_version enmStandard;
DATVModulation enmModulation; DATVModulation enmModulation;
code_rate enmFEC; leansdr::code_rate enmFEC;
int intSampleRate; int intSampleRate;
int intSymbolRate; int intSymbolRate;
int intNotchFilters; int intNotchFilters;
@ -157,7 +155,7 @@ struct DATVConfig
intCenterFrequency(0), intCenterFrequency(0),
enmStandard(DVB_S), enmStandard(DVB_S),
enmModulation(BPSK), enmModulation(BPSK),
enmFEC(FEC12), enmFEC(leansdr::FEC12),
intSampleRate(1024000), intSampleRate(1024000),
intSymbolRate(250000), intSymbolRate(250000),
intNotchFilters(1), intNotchFilters(1),
@ -196,7 +194,7 @@ public:
int intCenterFrequency, int intCenterFrequency,
dvb_version enmStandard, dvb_version enmStandard,
DATVModulation enmModulation, DATVModulation enmModulation,
code_rate enmFEC, leansdr::code_rate enmFEC,
int intSymbolRate, int intSymbolRate,
int intNotchFilters, int intNotchFilters,
bool blnAllowDrift, bool blnAllowDrift,
@ -223,7 +221,7 @@ public:
int intCenterFrequency, int intCenterFrequency,
dvb_version enmStandard, dvb_version enmStandard,
DATVModulation enmModulation, DATVModulation enmModulation,
code_rate enmFEC, leansdr::code_rate enmFEC,
int intSampleRate, int intSampleRate,
int intSymbolRate, int intSymbolRate,
int intNotchFilters, int intNotchFilters,
@ -278,7 +276,7 @@ private:
int intCenterFrequency, int intCenterFrequency,
dvb_version enmStandard, dvb_version enmStandard,
DATVModulation enmModulation, DATVModulation enmModulation,
code_rate enmFEC, leansdr::code_rate enmFEC,
int intSymbolRate, int intSymbolRate,
int intNotchFilters, int intNotchFilters,
bool blnAllowDrift, bool blnAllowDrift,
@ -300,7 +298,7 @@ private:
int intCenterFrequency, int intCenterFrequency,
dvb_version enmStandard, dvb_version enmStandard,
DATVModulation enmModulation, DATVModulation enmModulation,
code_rate enmFEC, leansdr::code_rate enmFEC,
int intSymbolRate, int intSymbolRate,
int intNotchFilters, int intNotchFilters,
bool blnAllowDrift, bool blnAllowDrift,
@ -343,7 +341,7 @@ private:
//************** LEANDBV Scheduler *************** //************** LEANDBV Scheduler ***************
scheduler * m_objScheduler; leansdr::scheduler * m_objScheduler;
struct config m_objCfg; struct config m_objCfg;
bool m_blnDVBInitialized; bool m_blnDVBInitialized;
@ -352,90 +350,90 @@ private:
//LeanSDR Pipe Buffer //LeanSDR Pipe Buffer
// INPUT // INPUT
pipebuf<cf32> *p_rawiq; leansdr::pipebuf<leansdr::cf32> *p_rawiq;
pipewriter<cf32> *p_rawiq_writer; leansdr::pipewriter<leansdr::cf32> *p_rawiq_writer;
pipebuf<cf32> *p_preprocessed; leansdr::pipebuf<leansdr::cf32> *p_preprocessed;
// NOTCH FILTER // NOTCH FILTER
auto_notch<f32> *r_auto_notch; leansdr::auto_notch<leansdr::f32> *r_auto_notch;
pipebuf<cf32> *p_autonotched; leansdr::pipebuf<leansdr::cf32> *p_autonotched;
// FREQUENCY CORRECTION : DEROTATOR // FREQUENCY CORRECTION : DEROTATOR
pipebuf<cf32> *p_derot; leansdr::pipebuf<leansdr::cf32> *p_derot;
rotator<f32> *r_derot; leansdr::rotator<leansdr::f32> *r_derot;
// CNR ESTIMATION // CNR ESTIMATION
pipebuf<f32> *p_cnr; leansdr::pipebuf<leansdr::f32> *p_cnr;
cnr_fft<f32> *r_cnr; leansdr::cnr_fft<leansdr::f32> *r_cnr;
//FILTERING //FILTERING
fir_filter<cf32,float> *r_resample; leansdr::fir_filter<leansdr::cf32,float> *r_resample;
pipebuf<cf32> *p_resampled; leansdr::pipebuf<leansdr::cf32> *p_resampled;
float *coeffs; float *coeffs;
int ncoeffs; int ncoeffs;
// OUTPUT PREPROCESSED DATA // OUTPUT PREPROCESSED DATA
sampler_interface<f32> *sampler; leansdr::sampler_interface<leansdr::f32> *sampler;
float *coeffs_sampler; float *coeffs_sampler;
int ncoeffs_sampler; int ncoeffs_sampler;
pipebuf<softsymbol> *p_symbols; leansdr::pipebuf<leansdr::softsymbol> *p_symbols;
pipebuf<f32> *p_freq; leansdr::pipebuf<leansdr::f32> *p_freq;
pipebuf<f32> *p_ss; leansdr::pipebuf<leansdr::f32> *p_ss;
pipebuf<f32> *p_mer; leansdr::pipebuf<leansdr::f32> *p_mer;
pipebuf<cf32> *p_sampled; leansdr::pipebuf<leansdr::cf32> *p_sampled;
//DECIMATION //DECIMATION
pipebuf<cf32> *p_decimated; leansdr::pipebuf<leansdr::cf32> *p_decimated;
decimator<cf32> *p_decim; leansdr::decimator<leansdr::cf32> *p_decim;
//PROCESSED DATA MONITORING //PROCESSED DATA MONITORING
file_writer<cf32> *r_ppout; leansdr::file_writer<leansdr::cf32> *r_ppout;
//GENERIC CONSTELLATION RECEIVER //GENERIC CONSTELLATION RECEIVER
cstln_receiver<f32> *m_objDemodulator; leansdr::cstln_receiver<leansdr::f32> *m_objDemodulator;
// DECONVOLUTION AND SYNCHRONIZATION // DECONVOLUTION AND SYNCHRONIZATION
pipebuf<u8> *p_bytes; leansdr::pipebuf<leansdr::u8> *p_bytes;
deconvol_sync_simple *r_deconv; leansdr::deconvol_sync_simple *r_deconv;
viterbi_sync *r; leansdr::viterbi_sync *r;
pipebuf<u8> *p_descrambled; leansdr::pipebuf<leansdr::u8> *p_descrambled;
pipebuf<u8> *p_frames; leansdr::pipebuf<leansdr::u8> *p_frames;
etr192_descrambler * r_etr192_descrambler; leansdr::etr192_descrambler * r_etr192_descrambler;
hdlc_sync *r_sync; leansdr::hdlc_sync *r_sync;
pipebuf<u8> *p_mpegbytes; leansdr::pipebuf<leansdr::u8> *p_mpegbytes;
pipebuf<int> *p_lock; leansdr::pipebuf<int> *p_lock;
pipebuf<u32> *p_locktime; leansdr::pipebuf<leansdr::u32> *p_locktime;
mpeg_sync<u8,0> *r_sync_mpeg; leansdr::mpeg_sync<leansdr::u8, 0> *r_sync_mpeg;
// DEINTERLEAVING // DEINTERLEAVING
pipebuf< rspacket<u8> > *p_rspackets; leansdr::pipebuf<leansdr::rspacket<leansdr::u8> > *p_rspackets;
deinterleaver<u8> *r_deinter; leansdr::deinterleaver<leansdr::u8> *r_deinter;
// REED-SOLOMON // REED-SOLOMON
pipebuf<int> *p_vbitcount; leansdr::pipebuf<int> *p_vbitcount;
pipebuf<int> *p_verrcount; leansdr::pipebuf<int> *p_verrcount;
pipebuf<tspacket> *p_rtspackets; leansdr::pipebuf<leansdr::tspacket> *p_rtspackets;
rs_decoder<u8,0> *r_rsdec; leansdr::rs_decoder<leansdr::u8, 0> *r_rsdec;
// BER ESTIMATION // BER ESTIMATION
pipebuf<float> *p_vber; leansdr::pipebuf<float> *p_vber;
rate_estimator<float> *r_vber; leansdr::rate_estimator<float> *r_vber;
// DERANDOMIZATION // DERANDOMIZATION
pipebuf<tspacket> *p_tspackets; leansdr::pipebuf<leansdr::tspacket> *p_tspackets;
derandomizer *r_derand; leansdr::derandomizer *r_derand;
//OUTPUT //OUTPUT
file_writer<tspacket> *r_stdout; leansdr::file_writer<leansdr::tspacket> *r_stdout;
datvvideoplayer<tspacket> *r_videoplayer; leansdr::datvvideoplayer<leansdr::tspacket> *r_videoplayer;
//CONSTELLATION //CONSTELLATION
datvconstellation<f32> *r_scope_symbols; leansdr::datvconstellation<leansdr::f32> *r_scope_symbols;
DeviceSourceAPI* m_deviceAPI; DeviceSourceAPI* m_deviceAPI;

View File

@ -87,7 +87,7 @@ void DATVDemodGUI::resetToDefaults()
ui->cmbFilter->setCurrentIndex(0); ui->cmbFilter->setCurrentIndex(0);
displayRRCParameters(false); displayRRCParameters(false);
ui->spiNotchFilters->setValue(1); ui->spiNotchFilters->setValue(0);
ui->prgSynchro->setValue(0); ui->prgSynchro->setValue(0);
ui->lblStatus->setText(""); ui->lblStatus->setText("");
@ -191,7 +191,7 @@ bool DATVDemodGUI::deserialize(const QByteArray& arrData)
d.readS32(11, &tmp, 0); d.readS32(11, &tmp, 0);
ui->cmbStandard->setCurrentIndex(tmp); ui->cmbStandard->setCurrentIndex(tmp);
d.readS32(12, &tmp, 1); d.readS32(12, &tmp, 0);
ui->spiNotchFilters->setValue(tmp); ui->spiNotchFilters->setValue(tmp);
d.readS32(13, &tmp, 1024000); d.readS32(13, &tmp, 1024000);
@ -320,7 +320,7 @@ void DATVDemodGUI::applySettings()
DATVModulation enmSelectedModulation; DATVModulation enmSelectedModulation;
dvb_version enmVersion; dvb_version enmVersion;
code_rate enmFEC; leansdr::code_rate enmFEC;
dvb_sampler enmSampler; dvb_sampler enmSampler;
if (m_blnDoApplySettings) if (m_blnDoApplySettings)
@ -403,41 +403,41 @@ void DATVDemodGUI::applySettings()
strFEC = ui->cmbFEC->currentText(); 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 else
{ {
enmFEC=FEC12; enmFEC = leansdr::FEC12;
} }
if (ui->cmbFilter->currentIndex()==0) if (ui->cmbFilter->currentIndex()==0)