]> git.ipfire.org Git - thirdparty/tvheadend.git/commitdiff
DVB-T fixes: hierarchy code rate LP and dvb_mux_conf_str_dvbt
authorJaroslav Kysela <perex@perex.cz>
Tue, 7 Jun 2016 09:08:32 +0000 (11:08 +0200)
committerJaroslav Kysela <perex@perex.cz>
Tue, 7 Jun 2016 09:08:32 +0000 (11:08 +0200)
src/input/mpegts/dvb_psi.c
src/input/mpegts/dvb_support.c

index 1957a02ddb9cbad017b097f91fce8b15055f8527..fb7132a03814211a88995b4ad0e108f0f8628488 100644 (file)
@@ -377,7 +377,8 @@ dvb_desc_terr_del
   dmc.dmc_fe_modulation                   = ctab[(ptr[5] >> 6) & 0x3];
   dmc.u.dmc_fe_ofdm.hierarchy_information = htab[(ptr[5] >> 3) & 0x3];
   dmc.u.dmc_fe_ofdm.code_rate_HP          = fec_tab[(ptr[5] + 1) & 0x7];
-  dmc.u.dmc_fe_ofdm.code_rate_LP          = fec_tab[((ptr[6] + 1) >> 5) & 0x7];
+  if (dmc.u.dmc_fe_ofdm.hierarchy_information != DVB_HIERARCHY_NONE)
+    dmc.u.dmc_fe_ofdm.code_rate_LP        = fec_tab[((ptr[6] + 1) >> 5) & 0x7];
   dmc.u.dmc_fe_ofdm.guard_interval        = gtab[(ptr[6] >> 3) & 0x3];
   dmc.u.dmc_fe_ofdm.transmission_mode     = ttab[(ptr[6] >> 1) & 0x3];
 
index 77afc3f3cbec473ea7fcb0194ed1ba3ba6203b8a..f3a14680aa01203b3573b98e848e11f2ba3580da 100644 (file)
@@ -978,6 +978,8 @@ dvb_mux_conf_init ( dvb_mux_conf_t *dmc, dvb_fe_delivery_system_t delsys )
 static int
 dvb_mux_conf_str_dvbt ( dvb_mux_conf_t *dmc, char *buf, size_t bufsize )
 {
+  char hp[16];
+  snprintf(hp, sizeof(hp), "%s", dvb_fec2str(dmc->u.dmc_fe_ofdm.code_rate_HP));
   return
   snprintf(buf, bufsize,
            "%s freq %d bw %s cons %s hier %s code_rate %s:%s guard %s trans %s plp_id %d",
@@ -986,8 +988,7 @@ dvb_mux_conf_str_dvbt ( dvb_mux_conf_t *dmc, char *buf, size_t bufsize )
            dvb_bw2str(dmc->u.dmc_fe_ofdm.bandwidth),
            dvb_qam2str(dmc->dmc_fe_modulation),
            dvb_hier2str(dmc->u.dmc_fe_ofdm.hierarchy_information),
-           dvb_fec2str(dmc->u.dmc_fe_ofdm.code_rate_HP),
-           dvb_fec2str(dmc->u.dmc_fe_ofdm.code_rate_LP),
+           hp, dvb_fec2str(dmc->u.dmc_fe_ofdm.code_rate_LP),
            dvb_guard2str(dmc->u.dmc_fe_ofdm.guard_interval),
            dvb_mode2str(dmc->u.dmc_fe_ofdm.transmission_mode),
            dmc->dmc_fe_stream_id);