char *dvr_charset_id;
char *dvr_postproc;
char *dvr_postremove;
+ uint32_t dvr_warm_time;
uint32_t dvr_extra_time_pre;
uint32_t dvr_extra_time_post;
uint32_t dvr_update_window;
/*
* Digital Video Recorder
* Copyright (C) 2008 Andreas Öman
+ * Copyright (C) 2014,2015 Jaroslav Kysela
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
cfg->dvr_tag_files = 1;
cfg->dvr_skip_commercials = 1;
dvr_charset_update(cfg, intlconv_filesystem_charset());
+ cfg->dvr_warm_time = 30;
cfg->dvr_update_window = 24 * 3600;
cfg->dvr_pathname = strdup("$t$n.$x");
.off = offsetof(dvr_config_t, dvr_rerecord_errors),
.group = 1,
},
+ {
+ .type = PT_U32,
+ .id = "warm-time",
+ .name = N_("Extra warming up time (seconds)"),
+ .off = offsetof(dvr_config_t, dvr_warm_time),
+ .group = 1,
+ .def.u32 = 30
+ },
{
.type = PT_U32,
.id = "pre-extra-time",
/*
* Digital Video Recorder
* Copyright (C) 2008 Andreas Öman
+ * Copyright (C) 2014,2015 Jaroslav Kysela
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
return extra != 0 && extra != (time_t)-1;
}
+static uint32_t
+dvr_entry_warm_time( dvr_entry_t *de )
+{
+ return MIN(de->de_config->dvr_warm_time, 240);
+}
+
time_t
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;
+ return de->de_start - (60 * dvr_entry_get_extra_time_pre(de)) -
+ dvr_entry_warm_time(de);
}
time_t
return 0;
e = NULL;
- pre = (60 * dvr_entry_get_extra_time_pre(de)) - 30;
+ pre = (60 * dvr_entry_get_extra_time_pre(de)) -
+ dvr_entry_warm_time(de);
RB_FOREACH(ev, &de->de_channel->ch_epg_schedule, sched_link) {
if (de->de_bcast == ev) continue;
if (ev->start - pre < dispatch_clock) continue;
/*
* Digital Video Recorder
* Copyright (C) 2008 Andreas Öman
+ * Copyright (C) 2014,2015 Jaroslav Kysela
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by