dvb/parsechannels: do not assume DVB-T from zap file alone

DVB-T/T2 have the same number of fields so we were
wrongly assuming DVB-T for DVB-T2 broadcasts. Not
setting the delivery system here allows for dvbsrc
to make an informed guess based on the channel
parameters.
This commit is contained in:
Reynaldo H. Verdejo Pinochet 2016-05-13 00:50:45 -07:00
parent 8fcdf14846
commit e32a058fcf

View file

@ -202,6 +202,17 @@ set_properties_for_channel (GstElement * dvbbasebin,
gchar *type; gchar *type;
const gchar *adapter; const gchar *adapter;
/**
* Assumptions are made here about a format that is loosely
* defined. Particularly, we assume a given delivery system
* out of counting the number of fields per line. dvbsrc has
* smarter code to auto-detect a delivery system based on
* known-correct combinations of parameters so if you ever
* encounter cases where the delivery system is being
* wrongly set here, just remove the offending
* g_object_set line and let dvbsrc work his magic out.
*/
filename = g_strdup (g_getenv ("GST_DVB_CHANNELS_CONF")); filename = g_strdup (g_getenv ("GST_DVB_CHANNELS_CONF"));
if (filename == NULL) { if (filename == NULL) {
filename = g_build_filename (g_get_user_config_dir (), filename = g_build_filename (g_get_user_config_dir (),
@ -230,8 +241,6 @@ set_properties_for_channel (GstElement * dvbbasebin,
if (strcmp (type, "terrestrial") == 0) { if (strcmp (type, "terrestrial") == 0) {
gchar *val; gchar *val;
g_object_set (dvbbasebin, "delsys", SYS_DVBT, NULL);
val = g_hash_table_lookup (params, "inversion"); val = g_hash_table_lookup (params, "inversion");
if (strcmp (val, "INVERSION_OFF") == 0) if (strcmp (val, "INVERSION_OFF") == 0)
g_object_set (dvbbasebin, "inversion", 0, NULL); g_object_set (dvbbasebin, "inversion", 0, NULL);