]> git.ipfire.org Git - thirdparty/tvheadend.git/commitdiff
MPEGTS Input: add 'Free weight' parameter to override imediatelly scan/EPG/other...
authorJaroslav Kysela <perex@perex.cz>
Sun, 29 Nov 2015 20:01:41 +0000 (21:01 +0100)
committerJaroslav Kysela <perex@perex.cz>
Sun, 29 Nov 2015 20:03:47 +0000 (21:03 +0100)
src/input/mpegts.h
src/input/mpegts/mpegts_input.c
src/input/mpegts/mpegts_service.c

index b854c32535e7ae1ce2c73450556fbf381d473d7b..03be0020896569e211562b15fd7891471a435f2d 100644 (file)
@@ -652,6 +652,7 @@ struct mpegts_input
 
   int mi_initscan;
   int mi_idlescan;
+  uint32_t mi_free_weight;
 
   char *mi_linked;
 
index 7cf8937e505e0be44099e13f56d31d6576c6394c..8ee861b20a0536984e60b193b1fae518ecdaf667 100644 (file)
@@ -277,6 +277,14 @@ const idclass_t mpegts_input_class =
       .def.i    = 1,
       .opts     = PO_ADVANCED,
     },
+    {
+      .type     = PT_U32,
+      .id       = "free_weight",
+      .name     = N_("Free weight"),
+      .off      = offsetof(mpegts_input_t, mi_free_weight),
+      .def.i    = 1,
+      .opts     = PO_ADVANCED,
+    },
     {
       .type     = PT_STR,
       .id       = "networks",
index f3a20d5e85af43aacab550e0357fb30f7fb7ef2e..e079a382df23033adb3b6ef7258d7b9a97342d2b 100644 (file)
@@ -297,6 +297,8 @@ mpegts_service_enlist(service_t *t, tvh_input_t *ti,
     } else {
       w = mi->mi_get_weight(mi, mmi->mmi_mux, flags);
       p = mi->mi_get_priority(mi, mmi->mmi_mux, flags);
+      if (w > 0 && mi->mi_free_weight && w < mi->mi_free_weight)
+        w = 0;
     }
 
     service_instance_add(sil, t, mi->mi_instance, mi->mi_name, p, w);