aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMauro Carvalho Chehab <mchehab@osg.samsung.com>2014-11-19 14:42:51 -0200
committerMauro Carvalho Chehab <m.chehab@samsung.com>2014-11-19 18:25:24 -0200
commit82e541b91fd6fc006f572f0bd1965c0e3e76e55a (patch)
treee1b31be9b16f96c8700f0b159a7a3b54ceb2d5dc
parentc7e5ee09468614ca7d3c8a6aa35cb980f251cb4d (diff)
libdvbv5: add experimental DTMB support
The DTMB properties are missing. Add them. Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
-rw-r--r--lib/libdvbv5/dvb-fe.c4
-rw-r--r--lib/libdvbv5/dvb-file.c4
-rw-r--r--lib/libdvbv5/dvb-scan.c1
-rw-r--r--lib/libdvbv5/dvb-v5-std.c14
-rw-r--r--utils/dvb/dvbv5-scan.c2
-rw-r--r--utils/dvb/dvbv5-zap.c1
6 files changed, 21 insertions, 5 deletions
diff --git a/lib/libdvbv5/dvb-fe.c b/lib/libdvbv5/dvb-fe.c
index c8d7cef4..c7455833 100644
--- a/lib/libdvbv5/dvb-fe.c
+++ b/lib/libdvbv5/dvb-fe.c
@@ -392,7 +392,7 @@ static enum dvbv3_emulation_type dvbv3_type(uint32_t delivery_system)
case SYS_DVBT:
case SYS_DVBT2:
case SYS_ISDBT:
- case SYS_DMBTH:
+ case SYS_DTMB:
return DVBV3_OFDM;
case SYS_ATSC:
case SYS_ATSCMH:
@@ -1172,7 +1172,7 @@ static enum dvb_quality dvbv_fe_cnr_to_quality(struct dvb_v5_fe_parms_priv *parm
case SYS_TURBO:
case SYS_ISDBS:
case SYS_DSS:
- case SYS_DMBTH:
+ case SYS_DTMB:
case SYS_ATSC:
case SYS_ATSCMH:
case SYS_DVBC_ANNEX_B:
diff --git a/lib/libdvbv5/dvb-file.c b/lib/libdvbv5/dvb-file.c
index a4d20b8f..7122c74d 100644
--- a/lib/libdvbv5/dvb-file.c
+++ b/lib/libdvbv5/dvb-file.c
@@ -395,6 +395,7 @@ static uint32_t get_compat_format(uint32_t delivery_system)
case SYS_ISDBT:
case SYS_DVBT:
case SYS_DVBT2:
+ case SYS_DTMB:
return SYS_DVBT;
default:
return 0;
@@ -1356,7 +1357,8 @@ static struct {
{ SYS_ISDBS, "ISDB-S" },
{ SYS_ISDBT, "ISDB-T" },
{ SYS_ATSCMH, "ATSC-MH" },
- { SYS_DMBTH, "DMB-TH" },
+ { SYS_DTMB, "DMB-TH" },
+ { SYS_DTMB, "DMB" },
};
int dvb_parse_delsys(const char *name)
diff --git a/lib/libdvbv5/dvb-scan.c b/lib/libdvbv5/dvb-scan.c
index 637c64e1..c0ede6bd 100644
--- a/lib/libdvbv5/dvb-scan.c
+++ b/lib/libdvbv5/dvb-scan.c
@@ -1117,6 +1117,7 @@ static void __dvb_add_update_transponders(struct dvb_v5_fe_parms_priv *parms,
return;
case SYS_DVBT:
case SYS_DVBT2:
+ case SYS_DTMB: /* FIXME: are DTMB nit tables equal to DVB-T? */
dvb_table_nit_descriptor_handler(
&parms->p, dvb_scan_handler->nit,
extension_descriptor,
diff --git a/lib/libdvbv5/dvb-v5-std.c b/lib/libdvbv5/dvb-v5-std.c
index 5de6b465..824e8abd 100644
--- a/lib/libdvbv5/dvb-v5-std.c
+++ b/lib/libdvbv5/dvb-v5-std.c
@@ -159,6 +159,18 @@ const unsigned int sys_isdbs_props[] = {
0
};
+const unsigned int sys_dtmb_props[] = {
+ DTV_FREQUENCY,
+ DTV_MODULATION,
+ DTV_BANDWIDTH_HZ,
+ DTV_INVERSION,
+ DTV_INNER_FEC,
+ DTV_GUARD_INTERVAL,
+ DTV_TRANSMISSION_MODE,
+ DTV_INTERLEAVING,
+ 0
+};
+
const unsigned int *dvb_v5_delivery_system[] = {
[SYS_ATSC] = sys_atsc_props,
[SYS_ATSCMH] = sys_atscmh_props,
@@ -172,10 +184,10 @@ const unsigned int *dvb_v5_delivery_system[] = {
[SYS_ISDBS] = sys_isdbs_props,
[SYS_ISDBT] = sys_isdbt_props,
[SYS_TURBO] = sys_turbo_props,
+ [SYS_DTMB] = sys_dtmb_props,
[SYS_ATSCMH] = NULL,
[SYS_CMMB] = NULL,
[SYS_DAB] = NULL,
- [SYS_DMBTH] = NULL,
[SYS_DSS] = NULL,
[SYS_DVBH] = NULL,
[SYS_ISDBC] = NULL,
diff --git a/utils/dvb/dvbv5-scan.c b/utils/dvb/dvbv5-scan.c
index ad9c9bd1..2a853c85 100644
--- a/utils/dvb/dvbv5-scan.c
+++ b/utils/dvb/dvbv5-scan.c
@@ -222,6 +222,7 @@ static int run_scan(struct arguments *args,
sys = SYS_ATSC;
break;
case SYS_ISDBT:
+ case SYS_DTMB:
sys = SYS_DVBT;
break;
default:
@@ -249,7 +250,6 @@ static int run_scan(struct arguments *args,
*/
if (dvb_retrieve_entry_prop(entry, DTV_FREQUENCY, &freq))
continue;
-
shift = dvb_estimate_freq_shift(parms);
if (dvb_retrieve_entry_prop(entry, DTV_POLARIZATION, &pol))
diff --git a/utils/dvb/dvbv5-zap.c b/utils/dvb/dvbv5-zap.c
index 60604503..08db3e26 100644
--- a/utils/dvb/dvbv5-zap.c
+++ b/utils/dvb/dvbv5-zap.c
@@ -136,6 +136,7 @@ static int parse(struct arguments *args,
sys = SYS_ATSC;
break;
case SYS_ISDBT:
+ case SYS_DTMB:
sys = SYS_DVBT;
break;
default:

Privacy Policy