]> git.ipfire.org Git - thirdparty/tvheadend.git/commitdiff
mdhelp: add more property descriptions, add priority and streaming_priority property...
authorMark Clarkstone <hello@markclarkstone.co.uk>
Tue, 21 Jun 2016 11:19:08 +0000 (12:19 +0100)
committerJaroslav Kysela <perex@perex.cz>
Wed, 17 Aug 2016 12:29:41 +0000 (14:29 +0200)
docs/property/priority.md [new file with mode: 0644]
docs/property/streaming_priority.md [new file with mode: 0644]
src/input/mpegts/iptv/iptv.c
src/input/mpegts/mpegts_input.c

diff --git a/docs/property/priority.md b/docs/property/priority.md
new file mode 100644 (file)
index 0000000..e0c98d4
--- /dev/null
@@ -0,0 +1,18 @@
+:
+
+The tuner (or network if using IPTV) with the highest priority value 
+will be used out of preference. If the tuner is busy the next available 
+with the highest priority value will be used. 
+
+An example:
+
+Tuner            | Tuner A | Tuner B | Tuner C 
+-----------------|---------|---------|--------
+Priority         | 100     | 50      | 80
+Status           | BUSY    | IDLE    | IDLE
+
+In the above table *Tuner A* is busy so Tvheadend will have to use the 
+next available idle tuner which in this example is *Tuner B* and *Tuner C* 
+but because *Tuner C* has the higher priority of the two Tvheadend will 
+use that instead of *Tuner B*. If no priority value is set for any tuners 
+Tvheadend will use the first available idle tuner.
diff --git a/docs/property/streaming_priority.md b/docs/property/streaming_priority.md
new file mode 100644 (file)
index 0000000..d08f0b2
--- /dev/null
@@ -0,0 +1,5 @@
+:
+
+Streaming priority is like the *Priority* setting (above) but only 
+applies when streaming over HTTP or HTSP. If no streaming priority value 
+is set (0) the priority value is used instead.
index 3e04779445a0ad0bc7560e7f6cc272cc6ad86159..55102966b992c082d2595f3707721922ebdebd42 100644 (file)
@@ -699,6 +699,9 @@ iptv_network_class_icon_url_set( void *in, const void *v )
   return iptv_url_set(&mn->in_icon_url, &mn->in_icon_url_sane, v, 1, 0);
 }
 
+PROP_DOC(priority)
+PROP_DOC(streaming_priority)
+
 extern const idclass_t mpegts_network_class;
 const idclass_t iptv_network_class = {
   .ic_super      = &mpegts_network_class,
@@ -710,6 +713,7 @@ const idclass_t iptv_network_class = {
       .type     = PT_BOOL,
       .id       = "scan_create",
       .name     = N_("Scan after creation"),
+      .desc     = N_("After creating the network scan it for services."),
       .off      = offsetof(iptv_network_t, in_scan_create),
       .def.i    = 1,
       .opts     = PO_ADVANCED
@@ -718,6 +722,7 @@ const idclass_t iptv_network_class = {
       .type     = PT_U16,
       .id       = "service_sid",
       .name     = N_("Service ID"),
+      .desc     = N_("The network's service ID"),
       .off      = offsetof(iptv_network_t, in_service_id),
       .def.i    = 0,
       .opts     = PO_EXPERT
@@ -726,7 +731,11 @@ const idclass_t iptv_network_class = {
       .type     = PT_INT,
       .id       = "priority",
       .name     = N_("Priority"),
+      .desc     = N_("The network's priority. The network with the "
+                     "highest priority value will be used out of "
+                     "preference if available. See Help for details."),
       .off      = offsetof(iptv_network_t, in_priority),
+      .doc      = prop_doc_priority,
       .def.i    = 1,
       .opts     = PO_ADVANCED
     },
@@ -734,6 +743,10 @@ const idclass_t iptv_network_class = {
       .type     = PT_INT,
       .id       = "spriority",
       .name     = N_("Streaming priority"),
+      .desc     = N_("When streaming a service (via http or htsp) "
+                     "Tvheadend will use the network with the highest "
+                     "streaming priority set here. See Help for details."),
+      .doc      = prop_doc_streaming_priority,
       .off      = offsetof(iptv_network_t, in_streaming_priority),
       .def.i    = 1,
       .opts     = PO_ADVANCED
@@ -742,6 +755,8 @@ const idclass_t iptv_network_class = {
       .type     = PT_U32,
       .id       = "max_streams",
       .name     = N_("Maximum # input streams"),
+      .desc     = N_("The maximum number of input streams allowed "
+                     "on this network."),
       .off      = offsetof(iptv_network_t, in_max_streams),
       .def.i    = 0,
     },
@@ -749,6 +764,7 @@ const idclass_t iptv_network_class = {
       .type     = PT_U32,
       .id       = "max_bandwidth",
       .name     = N_("Maximum bandwidth (Kbps)"),
+      .desc     = N_("Maximum input bandwidth."),
       .off      = offsetof(iptv_network_t, in_max_bandwidth),
       .def.i    = 0,
     },
@@ -756,6 +772,8 @@ const idclass_t iptv_network_class = {
       .type     = PT_U32,
       .id       = "max_timeout",
       .name     = N_("Maximum timeout (seconds)"),
+      .desc     = N_("Maximum time to wait (in seconds) for a stream "
+                     "before a timeout."),
       .off      = offsetof(iptv_network_t, in_max_timeout),
       .def.i    = 15,
       .opts     = PO_ADVANCED
@@ -764,6 +782,7 @@ const idclass_t iptv_network_class = {
       .type     = PT_STR,
       .id       = "icon_url",
       .name     = N_("Icon base URL"),
+      .desc     = N_("Icon base URL."),
       .off      = offsetof(iptv_network_t, in_icon_url),
       .set      = iptv_network_class_icon_url_set,
       .opts     = PO_MULTILINE | PO_ADVANCED
@@ -823,6 +842,7 @@ const idclass_t iptv_auto_network_class = {
       .type     = PT_STR,
       .id       = "url",
       .name     = N_("URL"),
+      .desc     = N_("The URL to the playlist."),
       .off      = offsetof(iptv_network_t, in_url),
       .set      = iptv_auto_network_class_url_set,
       .notify   = iptv_auto_network_class_notify_url,
@@ -832,6 +852,7 @@ const idclass_t iptv_auto_network_class = {
       .type     = PT_BOOL,
       .id       = "bouquet",
       .name     = N_("Create bouquet"),
+      .desc     = N_("Create a bouquet from the playlist."),
       .off      = offsetof(iptv_network_t, in_bouquet),
       .notify   = iptv_auto_network_class_notify_bouquet,
     },
@@ -839,6 +860,7 @@ const idclass_t iptv_auto_network_class = {
       .type     = PT_STR,
       .id       = "ctx_charset",
       .name     = N_("Content character set"),
+      .desc     = N_("The playlist's character set."),
       .off      = offsetof(iptv_network_t, in_ctx_charset),
       .list     = iptv_auto_network_class_charset_list,
       .notify   = iptv_auto_network_class_notify_url,
@@ -849,12 +871,14 @@ const idclass_t iptv_auto_network_class = {
       .intextra = CHANNEL_SPLIT,
       .id       = "channel_number",
       .name     = N_("Channel numbers from"),
+      .desc     = N_("Lowest starting channel number."),
       .off      = offsetof(iptv_network_t, in_channel_number),
     },
     {
       .type     = PT_U32,
       .id       = "refetch_period",
       .name     = N_("Re-fetch period (mins)"),
+      .desc     = N_("Time (in minutes) to re-fetch the playlist."),
       .off      = offsetof(iptv_network_t, in_refetch_period),
       .def.i    = 60,
       .opts     = PO_ADVANCED
@@ -863,6 +887,7 @@ const idclass_t iptv_auto_network_class = {
       .type     = PT_BOOL,
       .id       = "ssl_peer_verify",
       .name     = N_("SSL verify peer"),
+      .desc     = N_("Verify the peer's SSL."),
       .off      = offsetof(iptv_network_t, in_ssl_peer_verify),
       .opts     = PO_EXPERT
     },
@@ -876,6 +901,8 @@ const idclass_t iptv_auto_network_class = {
       .type     = PT_STR,
       .id       = "remove_args",
       .name     = N_("Remove HTTP arguments"),
+      .desc     = N_("Key and value pairs to remove from the query "
+                     "string in the URL."),
       .off      = offsetof(iptv_network_t, in_remove_args),
       .def.s    = "ticket",
       .opts     = PO_EXPERT
index 910044b37960b12cc0b97fea2b2a35c351ea10cb..2180015a7996a4ceb358b60a45fd5354f8a9d224 100644 (file)
@@ -219,6 +219,9 @@ mpegts_input_class_linked_enum( void * self, const char *lang )
   return m;
 }
 
+PROP_DOC(priority)
+PROP_DOC(streaming_priority)
+
 const idclass_t mpegts_input_class =
 {
   .ic_super      = &tvh_input_class,
@@ -242,7 +245,8 @@ const idclass_t mpegts_input_class =
       .id       = "priority",
       .name     = N_("Priority"),
       .desc     = N_("The tuner priority value (a higher value means to "
-                     "use this tuner out of preference)."),
+                     "use this tuner out of preference). See Help for details."),
+      .doc      = prop_doc_priority,
       .off      = offsetof(mpegts_input_t, mi_priority),
       .def.i    = 1,
       .opts     = PO_ADVANCED
@@ -254,7 +258,8 @@ const idclass_t mpegts_input_class =
       .desc     = N_("The tuner priority value for streamed channels "
                      "through HTTP or HTSP (a higher value means to use "
                      "this tuner out of preference). If not set (zero), "
-                     "the standard priority value is used."),
+                     "the standard priority value is used. See Help for details."),
+      .doc      = prop_doc_streaming_priority,
       .off      = offsetof(mpegts_input_t, mi_streaming_priority),
       .def.i    = 1,
       .opts     = PO_ADVANCED