summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--HISTORY3
-rw-r--r--dvbdevice.c28
2 files changed, 17 insertions, 14 deletions
diff --git a/HISTORY b/HISTORY
index bac454fa..d1b1b1ee 100644
--- a/HISTORY
+++ b/HISTORY
@@ -6822,3 +6822,6 @@ Video Disk Recorder Revision History
by Torsten Lang).
- Added member functions Adapter() and Frontend() to cDvbDevice (suggested by
Rolf Ahrenberg).
+- The parameters that are only used by "second generation" delivery systems (DVB-S2
+ and DVB-T2) are no longer written into channels.conf for "first generation"
+ delivery systems (DVB-S and DVB-T).
diff --git a/dvbdevice.c b/dvbdevice.c
index 92f6a72d..a69a981e 100644
--- a/dvbdevice.c
+++ b/dvbdevice.c
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: dvbdevice.c 2.53 2012/01/11 12:31:06 kls Exp $
+ * $Id: dvbdevice.c 2.54 2012/01/13 12:23:33 kls Exp $
*/
#include "dvbdevice.h"
@@ -217,22 +217,22 @@ int cDvbTransponderParameters::PrintParameter(char *p, char Name, int Value) con
cString cDvbTransponderParameters::ToString(char Type) const
{
-#define ST(s) if (strchr(s, Type))
+#define ST(s) if (strchr(s, Type) && (strchr(s, '0' + system + 1) || strchr(s, '*')))
char buffer[64];
char *q = buffer;
*q = 0;
- ST(" S ") q += sprintf(q, "%c", polarization);
- ST(" T") q += PrintParameter(q, 'B', MapToUser(bandwidth, BandwidthValues));
- ST(" CST") q += PrintParameter(q, 'C', MapToUser(coderateH, CoderateValues));
- ST(" T") q += PrintParameter(q, 'D', MapToUser(coderateL, CoderateValues));
- ST(" T") q += PrintParameter(q, 'G', MapToUser(guard, GuardValues));
- ST("ACST") q += PrintParameter(q, 'I', MapToUser(inversion, InversionValues));
- ST("ACST") q += PrintParameter(q, 'M', MapToUser(modulation, ModulationValues));
- ST(" S ") q += PrintParameter(q, 'O', MapToUser(rollOff, RollOffValues));
- ST(" T") q += PrintParameter(q, 'P', plpId);
- ST(" ST") q += PrintParameter(q, 'S', MapToUser(system, SystemValuesSat)); // we only need the numerical value, so Sat or Terr doesn't matter
- ST(" T") q += PrintParameter(q, 'T', MapToUser(transmission, TransmissionValues));
- ST(" T") q += PrintParameter(q, 'Y', MapToUser(hierarchy, HierarchyValues));
+ ST(" S *") q += sprintf(q, "%c", polarization);
+ ST(" T*") q += PrintParameter(q, 'B', MapToUser(bandwidth, BandwidthValues));
+ ST(" CST*") q += PrintParameter(q, 'C', MapToUser(coderateH, CoderateValues));
+ ST(" T*") q += PrintParameter(q, 'D', MapToUser(coderateL, CoderateValues));
+ ST(" T*") q += PrintParameter(q, 'G', MapToUser(guard, GuardValues));
+ ST("ACST*") q += PrintParameter(q, 'I', MapToUser(inversion, InversionValues));
+ ST("ACST*") q += PrintParameter(q, 'M', MapToUser(modulation, ModulationValues));
+ ST(" S 2") q += PrintParameter(q, 'O', MapToUser(rollOff, RollOffValues));
+ ST(" T2") q += PrintParameter(q, 'P', plpId);
+ ST(" ST*") q += PrintParameter(q, 'S', MapToUser(system, SystemValuesSat)); // we only need the numerical value, so Sat or Terr doesn't matter
+ ST(" T*") q += PrintParameter(q, 'T', MapToUser(transmission, TransmissionValues));
+ ST(" T*") q += PrintParameter(q, 'Y', MapToUser(hierarchy, HierarchyValues));
return buffer;
}