--- /dev/null
+This tab is used to configure various debugging options in tvheadend.
+
+
+
+Changes to any of these settings must be confirmed by pressing the
+*[Apply configuration]* button before taking effect.
+
+Note that settings are not saved to a storage. Any change is available
+only while Tvheadend is running, and will be lost on a restart.
+To change the default behaviour permanently, use command line options
+such as `-l,` `–debug`, `–trace`.
+
+Depending on your distribution, the default command-line configuration
+is usually stored in the `/etc/sysconfig` tree or an init script.
+You may also be able to change `/etc/default/tvheadend` to add additional
+command-line parameters.
+
+---
+
+###Menu Bar/Buttons
+
+The following functions are available:
+
+Button | Function
+-----------|---------
+**Apply configuration (run-time only)** | Apply the entered debugging settings.
+<tvh_include>inc/common_button_table_end</tvh_include>
+
+---
+
+###Subsystems
+
+The following options can be passed to tvheadend to provide detailed debugging
+information while the application is running.
+
+```
+all
+access
+bouquet
+capmt
+cwc
+descrambler
+diseqc
+dvbcam
+dvr
+eit
+en50221
+epg
+epggrab
+fastscan
+fsmonitor
+gtimer
+htsp
+httpc
+idnode
+linuxdvb
+main
+mkv
+mpegts
+opentv
+parser
+pass
+psi
+satip
+satips
+scanfile
+sdt
+service
+service_mapper
+settings
+subscription
+tcp
+thread
+time
+timeshift
+transcode
+tsfile
+tvhdhomerun
+upnp
+```
+
+---
--- /dev/null
+This tab is used to configure timeshift properties.
+
+
+
+---
+
+###Menu Bar/Buttons
+
+The following functions are available:
+
+Button | Function
+-----------|---------
+**Save** | Save the current configuration.
+**Undo** | Revert the changes made since last save.
+<tvh_include>inc/common_button_table_end</tvh_include>
+
+---
If you schedule any kind of recording from this point, you can choose a
specific DVR profile that will apply to the recording or autorec rule.
This will normally show as *(default)*, but you can define different
-profiles in the **Configuration -\> Recording -\> Digital Video
-Recorder Profiles** tab. This allows you to set, for example, more post-
+profiles in the **Configuration -\> Recording -\> [Digital Video
+Recorder Profiles](class/dvrconfig)** tab. This allows you to set, for example, more post-
broadcast padding for a channel that always runs late, or perhaps define
a different post-processing command to strip adverts out on a commercial
channel.
-You will also see *[Search IMDB]* and *[TheTVDB] buttons to look for the program by name
+You will also see *[Search IMDB]* and *[TheTVDB]* buttons to look for the program by name
on imdb.com/thetvdb.com, and a *[Play program]* button to watch a program that’s already
in progress. This second button downloads a playlist file (XSPF or M3U
depending on your startup options); if your system is configured for it,
record your favourite show every week, for example) you can press the
*[Create AutoRec]* button in the top toolbar.
-A popup with details about the to-be-created autorecording rule needs to
-be confirmed before the rule takes effect.
-
-
-
-You can change or delete the autorec rules in the **Digital Video
-Recorder** tab. Use that editor if you temporarily want to disable an
-autorecording or make adjustments to the channel, tag, or similar.
+You can change or delete the autorec rules in
+the **[Autorec](class/dvrautorec)** tab. Use that editor if you
+temporarily want to disable an autorecording or make adjustments to the
+channel, tag, or similar.
---
---
-####Menu Bar/Buttons
+###Menu Bar/Buttons
The following functions are available:
The main grid items have the following functions:
-**Item**
-: Description
+**ID**
+: Subscription ID.
-**Item**
-: Description
+**Hostname**
+: Hostname/IP address using the subscription.
-**Item**
-: Description
+**Username**
+: Username using the subscription - a blank cell indicates the
+subscriber didn't supply a username.
-**Item**
-: Description
+**Title**
+: Title of the application using the subscription - you will sometimes
+see "epggrab" here, this is an internal subscription used by tvheadend
+to grab EPG data.
+
+**Channel**
+: The name of the [channel](class/channel) the subscription is using -
+if the subscription is streaming a service/mux this cell will be blank.
+
+**Profile**
+: The name of the [profile](class/profile) the subscription is using.
+
+**Start**
+: The date (and time) the subscription was started.
+
+**State**
+: The status of the subscription
+
+State | Description
+--------------|-------------
+Running | The subscription is active - the stream is being sent.
+Idle | The subscription is idling, waiting for the subscriber.
+Testing | Tvheadend is testing the requested stream to see if it's available - if a subscription stays in this state too long it may indicate a signal issue.
+
+**Descramble**
+: The CAID used to descramble the stream.
+
+**Errors**
+: Number of errors occurred sending the stream.
+
+**Input**
+: The input data rate in kb/s.
+
+**Output**
+: The output data rate in kb/s.
return 0;
}
+CLASS_DOC(timeshift)
+
const idclass_t timeshift_conf_class = {
.ic_snode = ×hift_conf.idnode,
.ic_class = "timeshift",
.ic_caption = N_("Timeshift"),
+ .ic_doc = tvh_doc_timeshift_class,
.ic_event = "timeshift",
.ic_perm_def = ACCESS_ADMIN,
.ic_changed = timeshift_conf_class_changed,
.in_class = &tvhlog_conf_class
};
+CLASS_DOC(debugging)
+
const idclass_t tvhlog_conf_class = {
.ic_snode = &tvhlog_conf,
.ic_class = "tvhlog_conf",
.ic_caption = N_("Debugging"),
+ .ic_doc = tvh_doc_debugging_class,
.ic_event = "tvhlog_conf",
.ic_perm_def = ACCESS_ADMIN,
.ic_groups = (const property_group_t[]) {