Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
mdhelp: move a few long description values to markdown (added dvr_sto…
…p_extra and dvr_start_extra properties). mdhelp: cleaned up a few docs
  • Loading branch information
Mark Clarkstone authored and perexg committed Apr 10, 2016
1 parent fc37752 commit 15cf0e2
Show file tree
Hide file tree
Showing 8 changed files with 69 additions and 38 deletions.
11 changes: 5 additions & 6 deletions docs/class/dvrentry.md
Expand Up @@ -8,10 +8,13 @@ DVR entries are used by Tvheadend to keep track of upcoming, finished and failed

* When a recording fails or gets aborted the entry is moved to the [Failed Recordings](dvr_failed) tab.


**Note**: Some entry details are not available/incomplete until the recording
completes or fails, e.g. filesize, total data errors, etc.

---

The *Details* column gives a quick overview as to the status of each
entry:
**Details** : Gives a quick overview as to the status of each entry.

Icon | Description
-------------------------------------------|-------------
Expand All @@ -21,7 +24,3 @@ Icon | Description
![Exclamation icon](icons/exclamation.png) | the program failed to record
![Accept icon](icons/accept.png) | the program recorded successfully


**Note**: Some entry details are not available/incomplete until the recording
completes or fails, e.g. filesize, total data errors, etc.

10 changes: 5 additions & 5 deletions docs/markdown/dvr_failed.md
Expand Up @@ -10,31 +10,31 @@ information.

---

###1. Playing a Failed Recording
###Playing a Failed Recording

You can play a partial recording by clicking the *Play* link.

If your browser supports video playback it should automatically start
playing. Note, the *Play* links do not link to an actual file but to a m3u playlist.

###2. Downloading a Recording
###Downloading a Recording

Highlight the desired entry then press the *[Download]* button on the menu bar.

###3. Re-recording an Entry/Re-schedule a Failed Recording
###Re-recording an Entry/Re-schedule a Failed Recording

You can re-schedule an entry by pressing the *[Re-record]* button on the menu bar.

**Note**: Your EPG data must have another matching event to be able to re-schedule
the entry.

###4. Moving an Entry
###Moving an Entry

Failed recording can be moved to the [Finished Recordings](dvr_finished)
tab by highlighting the desired entry and then pressing the *[Move to finished]*
button from the menu bar.

###5. Deleting an Entry
###Deleting an Entry

Highlight the desired entry(s) then press the *[Delete]* button on the menu bar.

Expand Down
8 changes: 4 additions & 4 deletions docs/markdown/dvr_finished.md
Expand Up @@ -6,24 +6,24 @@ This tab shows all your finished recordings.

---

###1. Playing a Recording
###Playing a Recording

You can play a recording by clicking the *Play* link.

If your browser supports video playback it should automatically start
playing. Note, the *Play* links do not link to an actual file but to a m3u playlist.

###2. Downloading a Recording
###Downloading a Recording

Highlight the desired entry then press the *[Download]* button on the
menu bar.

###3. Editing an Entry
###Editing an Entry

You can edit an entry by clicking the *[Edit]* button on the menu bar,
note that not all [DVR Entry](class/dvrentry) fields can be edited.

###4. Deleting an Entry.
###Deleting an Entry.

Highlight the desired entry(s) then press the *[Delete]* button on the
menu bar.
Expand Down
10 changes: 5 additions & 5 deletions docs/markdown/dvr_upcoming.md
Expand Up @@ -6,9 +6,9 @@ This tab shows your all upcoming/current recordings.

---

###1. Adding and Editing an Entry
###Adding and Editing an Entry

####1.1. Adding an Entry Using the EPG
####Adding an Entry Using the EPG

Using the Electronic Program Guide search functionality, find the
program/event you would like to record. For full instructions on how to
Expand All @@ -23,7 +23,7 @@ using the resultant dialog you can:

**Tip**: You can quickly find all matching programs by clicking on the title.

####1.2. Adding an Entry Using Autorec Rules
####Adding an Entry Using Autorec Rules

Autorec rules allow you to match events using various options.

Expand All @@ -32,7 +32,7 @@ Autorec rules allow you to match events using various options.

Please see [Autorec](dvr_autorec) for more information.

####1.3. Manual Event Entry/Editing an Entry
####Manual Event Entry/Editing an Entry

Use the *[Add]* button to manually to add an entry. To edit an entry,
highlight the desired entry within the grid and then press the *[Edit]* button.
Expand All @@ -45,7 +45,7 @@ of which can also be seen in the grid view:
See the [DVR Entries](class/dvrentry) page for a more detailed look at
the various entry options.

###2. Deleting an Entry
###Deleting an Entry

You can delete or abort an upcoming entry (or an already in-progress recording) by pressing
the *[Delete]* or *[Abort]* buttons.
Expand Down
10 changes: 10 additions & 0 deletions docs/property/dvr_start_extra.md
@@ -0,0 +1,10 @@
:

For example, if a program is to start at 13:00 and you set a padding of
5 minutes, it will start recording at 12:54:30 (including a warm-up
time of 30 seconds (user configurable)). If this isn't
specified, any pre-recording padding as set in the channel or DVR
profile will be used.

Be sure to check you have enough free tuners available
to record all scheduled recordings if they overlap.
12 changes: 10 additions & 2 deletions docs/property/dvr_status.md
@@ -1,7 +1,15 @@
The *status* column indicates why an entry failed:
:

Status | Description
-----------------|----------------------------------------------------------
Aborted by user | The recording was interrupted by the user.
File missing | The associated file(s) cannot be found on disk.
Time missed | Indicates a recording failed due to one (or more) of the following: Tvheadend wasn't running when the entry/recording was scheduled to start; Tvheadend couldn't create the necessary file(s)/folder(s) to begin recording due to file system issues; The tuner returned no data indicating a signal/external problem; No free tuner was available for use;
Time missed | See below.

Time missed can be caused by one (or more) of the following:
* No free tuners - usually in-use by other subscription(s).
* No tuners are enabled and/or have no network assigned.
* All available tuners failed to tune (this can indicate a signal, driver or hardware problem).
* The underlying service for the channel is no longer available.
* Tvheadend wasn't running or crashed when a scheduled event/entry was to start.

6 changes: 6 additions & 0 deletions docs/property/dvr_stop_extra.md
@@ -0,0 +1,6 @@
:

This is extremely useful for those programs you think/know will overrun.
Any value selected here will keep a tuner busy for longer, so be sure
to check you have enough free tuners to record all scheduled recordings
if they overlap.
40 changes: 24 additions & 16 deletions src/dvr/dvr_db.c
Expand Up @@ -2816,12 +2816,27 @@ dvr_entry_prop_status_doc(const struct property *p, const char *lang)
return prop_md_doc(tvh_doc_dvr_status_property, lang);
}

static char *
dvr_entry_prop_start_extra_doc(const struct property *p, const char *lang)
{
extern const char *tvh_doc_dvr_start_extra_property[];
return prop_md_doc(tvh_doc_dvr_start_extra_property, lang);
}

static char *
dvr_entry_prop_dvr_stop_extra_doc(const struct property *p, const char *lang)
{
extern const char *tvh_doc_dvr_stop_extra_property[];
return prop_md_doc(tvh_doc_dvr_stop_extra_property, lang);
}

extern const char *tvh_doc_dvrentry_class[];

const idclass_t dvr_entry_class = {
.ic_class = "dvrentry",
.ic_caption = N_("DVR Entries"),
.ic_event = "dvrentry",
/*.ic_doc = tvh_doc_dvrentry_class,*/
.ic_doc = tvh_doc_dvrentry_class,
.ic_changed = dvr_entry_class_changed,
.ic_save = dvr_entry_class_save,
Expand Down Expand Up @@ -2851,13 +2866,8 @@ const idclass_t dvr_entry_class = {
.id = "start_extra",
.name = N_("Pre-recording padding"),
.desc = N_("Start recording earlier than the "
"EPG/timer-defined start time by x minutes: for "
"example, if a program is to start at 13:00 and "
"you set a padding of 5 minutes, it will start "
"recording at 12:54:30 (including a warm-up time "
"of 30 seconds). If this isn't specified, any "
"pre-recording padding as set in the channel or "
"DVR profile will be used."),
"EPG/timer-defined start time by x minutes."),
.doc = dvr_entry_prop_start_extra_doc,
.off = offsetof(dvr_entry_t, de_start_extra),
.set = dvr_entry_class_start_extra_set,
.list = dvr_entry_class_extra_list,
Expand All @@ -2867,17 +2877,16 @@ const idclass_t dvr_entry_class = {
.type = PT_TIME,
.id = "start_real",
.name = N_("Scheduled start time"),
.desc = N_("The scheduled start time, including any "
"pre-recording padding and a warm-up time of 30 "
"seconds."),
.desc = N_("The scheduled start time, including any padding."),
.get = dvr_entry_class_start_real_get,
.opts = PO_RDONLY | PO_NOSAVE,
},
{
.type = PT_TIME,
.id = "stop",
.name = N_("Stop time"),
.desc = N_("The time the entry stops/stopped being recorded."),
.desc = N_("The time the entry stops/stopped being recorded, "
"including any padding."),
.set = dvr_entry_class_stop_set,
.off = offsetof(dvr_entry_t, de_stop),
},
Expand All @@ -2887,6 +2896,7 @@ const idclass_t dvr_entry_class = {
.name = N_("Post-recording padding"),
.desc = N_("Continue recording for x minutes after scheduled "
"stop time."),
.doc = dvr_entry_prop_dvr_stop_extra_doc,
.off = offsetof(dvr_entry_t, de_stop_extra),
.list = dvr_entry_class_extra_list,
.opts = PO_SORTKEY | PO_ADVANCED | PO_DOC_NLIST,
Expand All @@ -2895,17 +2905,15 @@ const idclass_t dvr_entry_class = {
.type = PT_TIME,
.id = "stop_real",
.name = N_("Scheduled stop time"),
.desc = N_("The scheduled stop time including any post-recording "
"padding."),
.desc = N_("The scheduled stop time."),
.get = dvr_entry_class_stop_real_get,
.opts = PO_RDONLY | PO_NOSAVE,
},
{
.type = PT_TIME,
.id = "duration",
.name = N_("Duration"),
.desc = N_("The total recording time including pre- and post-"
"recording padding."),
.name = N_("Scheduled Duration"),
.desc = N_("The total scheduled duration."),
.get = dvr_entry_class_duration_get,
.opts = PO_RDONLY | PO_NOSAVE | PO_DURATION,
},
Expand Down

0 comments on commit 15cf0e2

Please sign in to comment.