11 #include <linux/dvb/frontend.h> 19 #define DVB_SYSTEM_1 0 // see also dvbdevice.c 20 #define DVB_SYSTEM_2 1 48 for (
int i = 0; i <
numNits; i++) {
52 for (
int j = 0; j <
numNits; j++) {
53 if (
nits[j].hasTransponder) {
107 int Frequencies[NumFrequencies];
115 case 1: f =
BCD2INT(f) / 100;
break;
116 case 2: f =
BCD2INT(f) / 10;
break;
117 case 3: f = f * 10;
break;
120 Frequencies[n++] = f;
135 static char Polarizations[] = {
'H',
'V',
'L',
'R' };
137 static int CodeRates[] = { FEC_NONE, FEC_1_2, FEC_2_3, FEC_3_4, FEC_5_6, FEC_7_8, FEC_8_9, FEC_3_5, FEC_4_5, FEC_9_10, FEC_AUTO, FEC_AUTO, FEC_AUTO, FEC_AUTO, FEC_AUTO, FEC_NONE };
139 static int Modulations[] = { QAM_AUTO, QPSK, PSK_8, QAM_16 };
142 static int RollOffs[] = { ROLLOFF_35, ROLLOFF_25, ROLLOFF_20, ROLLOFF_AUTO };
146 for (
int n = 0; n < NumFrequencies; n++) {
157 bool forceTransponderUpdate =
false;
163 for (
int n = 0; n < NumFrequencies; n++) {
165 Frequency = Frequencies[n];
173 forceTransponderUpdate =
true;
176 if (!found || forceTransponderUpdate) {
177 for (
int n = 0; n < NumFrequencies; n++) {
211 static int CodeRates[] = { FEC_NONE, FEC_1_2, FEC_2_3, FEC_3_4, FEC_5_6, FEC_7_8, FEC_8_9, FEC_3_5, FEC_4_5, FEC_9_10, FEC_AUTO, FEC_AUTO, FEC_AUTO, FEC_AUTO, FEC_AUTO, FEC_NONE };
213 static int Modulations[] = { QPSK, QAM_16, QAM_32, QAM_64, QAM_128, QAM_256, QAM_AUTO };
217 for (
int n = 0; n < NumFrequencies; n++) {
228 bool forceTransponderUpdate =
false;
234 for (
int n = 0; n < NumFrequencies; n++) {
236 Frequency = Frequencies[n];
244 forceTransponderUpdate =
true;
247 if (!found || forceTransponderUpdate) {
248 for (
int n = 0; n < NumFrequencies; n++) {
265 int Frequency = Frequencies[0] = sd->
getFrequency() * 10;
266 static int Bandwidths[] = { 8000000, 7000000, 6000000, 5000000, 0, 0, 0, 0 };
268 static int Constellations[] = { QPSK, QAM_16, QAM_64, QAM_AUTO };
271 static int Hierarchies[] = { HIERARCHY_NONE, HIERARCHY_1, HIERARCHY_2, HIERARCHY_4, HIERARCHY_AUTO, HIERARCHY_AUTO, HIERARCHY_AUTO, HIERARCHY_AUTO };
273 static int CodeRates[] = { FEC_1_2, FEC_2_3, FEC_3_4, FEC_5_6, FEC_7_8, FEC_AUTO, FEC_AUTO, FEC_AUTO };
276 static int GuardIntervals[] = { GUARD_INTERVAL_1_32, GUARD_INTERVAL_1_16, GUARD_INTERVAL_1_8, GUARD_INTERVAL_1_4 };
278 static int TransmissionModes[] = { TRANSMISSION_MODE_2K, TRANSMISSION_MODE_8K,
TRANSMISSION_MODE_4K, TRANSMISSION_MODE_AUTO };
281 for (
int n = 0; n < NumFrequencies; n++) {
292 bool forceTransponderUpdate =
false;
298 for (
int n = 0; n < NumFrequencies; n++) {
300 Frequency = Frequencies[n];
308 forceTransponderUpdate =
true;
311 if (!found || forceTransponderUpdate) {
312 for (
int n = 0; n < NumFrequencies; n++) {
342 static int T2Bandwidths[] = { 8000000, 7000000, 6000000, 5000000, 10000000, 1712000, 0, 0 };
int getCodeRateHP() const
void SetId(int Nid, int Tid, int Sid, int Rid=0)
void SetTransmission(int Transmission)
int getOriginalNetworkId() const
void SetPolarization(char Polarization)
int getVersionNumber() const
int getWestEastFlag() const
StructureLoop< LogicalChannel > logicalChannelLoop
int getT2SystemId() const
int getGuardInterval() const
int getModulation() const
cString ToString(char Type) const
int getGuardInterval() const
const cChannel * Channel(void)
Returns the channel of the data delivered to this filter.
int getVisibleServiceFlag() const
cSectionSyncer sectionSyncer
int getExtensionDescriptorTag() const
StructureLoop< HdSimulcastLogicalChannel > hdSimulcastLogicalChannelLoop
void SetCoderateH(int CoderateH)
void SetRollOff(int RollOff)
DescriptorLoop transportStreamDescriptors
bool SetTransponderData(int Source, int Frequency, int Srate, const char *Parameters, bool Quiet=false)
DescriptorLoop commonDescriptors
int Transponder(void) const
Returns the transponder frequency in MHz, plus the polarization in case of sat.
bool Sync(uchar Version, int Number, int LastNumber)
virtual void Process(u_short Pid, u_char Tid, const u_char *Data, int Length)
Processes the data delivered to this filter.
#define ISTRANSPONDER(f1, f2)
void SetSystem(int System)
int Source(void)
Returns the source of the data delivered to this filter.
T * Next(const T *object) const
bool GroupSep(void) const
int getTransmissionMode() const
StructureLoop< TransportStream > transportStreamLoop
char Polarization(void) const
static bool IsSat(int Code)
bool Lock(bool Write, int TimeoutMs=0)
int getInputStreamIdentifier() const
virtual void SetStatus(bool On)
Turns this filter on or off, depending on the value of On.
int getConstellation() const
int getTransmissionMode() const
int getSymbolRate() const
int getTransportStreamId() const
int getOrbitalPosition() const
int getSectionNumber() const
bool hasNext(Iterator &it)
virtual void SetStatus(bool On)
Turns this filter on or off, depending on the value of On.
int getExtendedDataFlag() const
int Frequency(void) const
Returns the actual frequency, as given in 'channels.conf'.
int getCodingType() const
T getNext(Iterator &it) const
int getModulationType() const
int getCodeRateLP() const
int getSymbolRate() const
char name[MAXNETWORKNAME]
void SetHierarchy(int Hierarchy)
DescriptorTag getDescriptorTag() const
int getLogicalChannelNumber() const
int Transponder(void)
Returns the transponder of the data delivered to this filter.
void Set(u_short Pid, u_char Tid, u_char Mask=0xFF)
Sets the given filter data by calling Add() with Sticky = true.
void SetCoderateL(int CoderateL)
void AddTransponder(cChannel *Channel)
int getLogicalChannelNumber() const
cNitFilter(cSdtFilter *SdtFilter)
int getPolarization() const
static int FromData(eSourceType SourceType, int Position=0, bool East=false)
const char * Parameters(void) const
TypeLoop< ThirtyTwoBit > frequencies
Descriptor * getNext(Iterator &it)
int getVisibleServiceFlag() const
int getModulationSystem() const
int getLastSectionNumber() const
void SetBandwidth(int Bandwidth)
void SetModulation(int Modulation)