[dvblast-devel] [PATCH] Fix pilot/rolloff and multistream settings for DVB-S2

Georgi Chorbadzhiyski gf at unixsol.org
Sun Feb 11 14:49:02 CET 2018


Configuration of pilot/rolloff and multistream options was off-by-one
so basically they were never set as expected thus not working at all
(in the case of multistream).

-- 
Georgi Chorbadzhiyski | http://georgi.unixsol.org/ | http://github.com/gfto/
-------------- next part --------------
From 4be35ea2c16a37a66bdb69cc00fbcedcda1780a3 Mon Sep 17 00:00:00 2001
From: Georgi Chorbadzhiyski <g.chorbadzhiyski at siteground.com>
Date: Fri, 9 Feb 2018 21:30:05 +0200
Subject: [PATCH] Fix pilot/rolloff and multistream settings for DVB-S2

Configuration of these options was off-by-one so basically they
were never set as expected thus not working at all (in the case of
multistream).
---
 dvb.c | 22 +++++++++++++---------
 1 file changed, 13 insertions(+), 9 deletions(-)

diff --git a/dvb.c b/dvb.c
index 3dd9289..53292cc 100644
--- a/dvb.c
+++ b/dvb.c
@@ -918,6 +918,12 @@ static struct dtv_properties dvbs_cmdseq = {
     .props = dvbs_cmdargs
 };
 
+#define IDX_DVB_S2_PILOT     6
+#define IDX_DVB_S2_ROLLOFF   7
+#define IDX_DVB_S2_STREAM_ID 8
+
+/* Commands 0..5 are the same as dvbs_cmdargs */
+/* Commands 6..8 are special for DVB-S2 */
 static struct dtv_property dvbs2_cmdargs[] = {
     { .cmd = DTV_DELIVERY_SYSTEM, .u.data = SYS_DVBS2 },
     { .cmd = DTV_FREQUENCY,       .u.data = 0 },
@@ -925,9 +931,9 @@ static struct dtv_property dvbs2_cmdargs[] = {
     { .cmd = DTV_INVERSION,       .u.data = INVERSION_AUTO },
     { .cmd = DTV_SYMBOL_RATE,     .u.data = 27500000 },
     { .cmd = DTV_INNER_FEC,       .u.data = FEC_AUTO },
-    { .cmd = DTV_PILOT,           .u.data = PILOT_AUTO },
-    { .cmd = DTV_ROLLOFF,         .u.data = ROLLOFF_AUTO },
-    { .cmd = DTV_STREAM_ID,       .u.data = 0 },
+    { .cmd = DTV_PILOT,           .u.data = PILOT_AUTO },   /* idx: 6 */
+    { .cmd = DTV_ROLLOFF,         .u.data = ROLLOFF_AUTO }, /* idx: 7 */
+    { .cmd = DTV_STREAM_ID,       .u.data = 0 },            /* idx: 8 */
     { .cmd = DTV_TUNE },
 };
 static struct dtv_properties dvbs2_cmdseq = {
@@ -1038,10 +1044,8 @@ static struct dtv_properties isdbt_cmdseq = {
 #define FEC_INNER 5
 #define FEC_LP 6
 #define GUARD 7
-#define PILOT 7
 #define TRANSMISSION 8
-#define ROLLOFF 8
-#define MIS 9
+
 #define HIERARCHY 9
 #define PLP_ID 10
 
@@ -1303,9 +1307,9 @@ static void FrontendSet( bool b_init )
         {
             p = &dvbs2_cmdseq;
             p->props[MODULATION].u.data = GetModulation();
-            p->props[PILOT].u.data = GetPilot();
-            p->props[ROLLOFF].u.data = GetRollOff();
-            p->props[MIS].u.data = i_mis;
+            p->props[IDX_DVBS2_PILOT].u.data = GetPilot();
+            p->props[IDX_DVBS2_ROLLOFF].u.data = GetRollOff();
+            p->props[IDX_DVBS2_STREAM_ID].u.data = i_mis;
         }
         else
             p = &dvbs_cmdseq;
-- 
2.16.0



More information about the dvblast-devel mailing list