]> git.ipfire.org Git - thirdparty/tvheadend.git/commitdiff
[htsp] send actual pre/post times and retention
authorGlenn-1990 <g_christiaensen@msn.com>
Sat, 13 Sep 2014 19:48:17 +0000 (21:48 +0200)
committerJaroslav Kysela <perex@perex.cz>
Sun, 14 Sep 2014 16:28:49 +0000 (18:28 +0200)
src/dvr/dvr.h
src/dvr/dvr_db.c
src/htsp_server.c

index 1d2260204ab0204b7880c2365f76b3c9b4b5dd81..2f518c50532566eed7493659eeb8b5321c4c2b1e 100644 (file)
@@ -311,6 +311,10 @@ int dvr_entry_get_mc(dvr_entry_t *de);
 
 int dvr_entry_get_retention( dvr_entry_t *de );
 
+int dvr_entry_get_extra_time_post( dvr_entry_t *de );
+
+int dvr_entry_get_extra_time_pre( dvr_entry_t *de );
+
 void dvr_entry_save(dvr_entry_t *de);
 
 const char *dvr_entry_status(dvr_entry_t *de);
index db50c0b408257ac9da19d693477d559fe16e72c7..4ad1b5f12d3ffe910923e7e7193dfe0ed63c093a 100644 (file)
@@ -58,6 +58,19 @@ static inline int extra_valid(time_t extra)
 
 static int
 dvr_entry_get_start_time( dvr_entry_t *de )
+{
+  /* Note 30 seconds might not be enough (rotors) */
+  return de->de_start - (60 * dvr_entry_get_extra_time_pre(de)) - 30;
+}
+
+static int
+dvr_entry_get_stop_time( dvr_entry_t *de )
+{
+  return de->de_stop + (60 * dvr_entry_get_extra_time_post(de));
+}
+
+int
+dvr_entry_get_extra_time_pre( dvr_entry_t *de )
 {
   time_t extra = de->de_start_extra;
 
@@ -67,12 +80,11 @@ dvr_entry_get_start_time( dvr_entry_t *de )
     if (!extra_valid(extra))
       extra = de->de_config->dvr_extra_time_pre;
   }
-  /* Note 30 seconds might not be enough (rotors) */
-  return de->de_start - (60 * extra) - 30;
+  return extra;
 }
 
-static int
-dvr_entry_get_stop_time( dvr_entry_t *de )
+int
+dvr_entry_get_extra_time_post( dvr_entry_t *de )
 {
   time_t extra = de->de_stop_extra;
 
@@ -82,7 +94,7 @@ dvr_entry_get_stop_time( dvr_entry_t *de )
     if (!extra_valid(extra))
       extra = de->de_config->dvr_extra_time_post;
   }
-  return de->de_stop + (60 * extra);
+  return extra;
 }
 
 int
index b639f62b76846a2cbff043020fff03c52f2e6e64..94c33d252c667948ef790356d8f3bbf184450b86 100644 (file)
@@ -665,10 +665,10 @@ htsp_build_dvrentry(dvr_entry_t *de, const char *method)
 
   htsmsg_add_s64(out, "start",       de->de_start);
   htsmsg_add_s64(out, "stop",        de->de_stop);
-  htsmsg_add_s64(out, "startExtra",  de->de_start_extra);
-  htsmsg_add_s64(out, "stopExtra",   de->de_stop_extra);
+  htsmsg_add_s64(out, "startExtra",  dvr_entry_get_extra_time_pre(de));
+  htsmsg_add_s64(out, "stopExtra",   dvr_entry_get_extra_time_post(de));
+  htsmsg_add_u32(out, "retention",   dvr_entry_get_retention(de));
   htsmsg_add_u32(out, "priority",    de->de_pri);
-  htsmsg_add_u32(out, "retention",   de->de_retention);
   htsmsg_add_u32(out, "contentType", de->de_content_type);
 
   if( de->de_title && (s = lang_str_get(de->de_title, NULL)))