summaryrefslogtreecommitdiff
path: root/sys/dvb
diff options
context:
space:
mode:
authorReynaldo H. Verdejo Pinochet <reynaldo@osg.samsung.com>2014-10-12 18:30:38 -0300
committerReynaldo H. Verdejo Pinochet <reynaldo@osg.samsung.com>2014-10-12 21:37:24 -0300
commita3f8899e8b13261183eb7a49df7fe163baee4523 (patch)
tree7cd61359b2d0bd1a564793afe97f693c73642e26 /sys/dvb
parent97df6ee85d5344f4f1c003d36009f8e85c322f47 (diff)
downloadgstreamer-plugins-bad-a3f8899e8b13261183eb7a49df7fe163baee4523.tar.gz
dvbsrc: add transmission mode checks for DVB-T/T2
These and every sanity check leading to a warning (we have a few in place) should come handy when debuging failed tunning scenarios.
Diffstat (limited to 'sys/dvb')
-rw-r--r--sys/dvb/gstdvbsrc.c18
1 files changed, 18 insertions, 0 deletions
diff --git a/sys/dvb/gstdvbsrc.c b/sys/dvb/gstdvbsrc.c
index 93dfabd1d..3ecfe2c64 100644
--- a/sys/dvb/gstdvbsrc.c
+++ b/sys/dvb/gstdvbsrc.c
@@ -2318,7 +2318,25 @@ gst_dvbsrc_set_fe_params (GstDvbSrc * object, struct dtv_properties *props)
}
break;
case SYS_DVBT:
+ if (object->transmission_mode != TRANSMISSION_MODE_AUTO &&
+ object->transmission_mode != TRANSMISSION_MODE_2K &&
+ object->transmission_mode != TRANSMISSION_MODE_8K) {
+ GST_WARNING_OBJECT (object, "Wrong DVB-T parameter combination: "
+ "transmission mode should be either AUTO, 2K or 8K");
+ }
case SYS_DVBT2:
+ if (object->delsys != SYS_DVBT &&
+ object->transmission_mode != TRANSMISSION_MODE_AUTO &&
+ object->transmission_mode != TRANSMISSION_MODE_1K &&
+ object->transmission_mode != TRANSMISSION_MODE_2K &&
+ object->transmission_mode != TRANSMISSION_MODE_4K &&
+ object->transmission_mode != TRANSMISSION_MODE_8K &&
+ object->transmission_mode != TRANSMISSION_MODE_16K &&
+ object->transmission_mode != TRANSMISSION_MODE_32K) {
+ GST_WARNING_OBJECT (object, "Wrong DVB-T2 parameter combination: "
+ "transmission mode should be either AUTO, 1K, 2K, 4K, 8K, 16K "
+ "or 32K");
+ }
set_prop (props->props, &n, DTV_BANDWIDTH_HZ, object->bandwidth);
set_prop (props->props, &n, DTV_CODE_RATE_HP, object->code_rate_hp);
set_prop (props->props, &n, DTV_CODE_RATE_LP, object->code_rate_lp);