Mailing List archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[vdr] master-timer skips overlapping timers
- To: vdr@linuxtv.org
- Subject: [vdr] master-timer skips overlapping timers
- From: Richard Cieply <richard.cieply@web.de>
- Date: Sun, 03 Mar 2002 02:24:27 +0100
- Content-Transfer-Encoding: 7bit
- Content-Type: text/plain; charset=us-ascii; format=flowed
- Delivered-To: mhonarc@limes.convergence.de
- Reply-to: vdr@linuxtv.org
- Sender: richard.cieply@web.de
- Sender: vdr-bounce@linuxtv.org
- User-Agent: Mozilla/5.0 (X11; U; Linux 2.2.16-22smp i686; en-US; m18) Gecko/20010110 Netscape6/6.5
Hi list,
recently I saw that master-timer skips timers if they overlap, i.e. if a
timer1 has starting time a and ending time b and timer2 would have
starting time c then the following applies:
if (c>=a && c<=b) then "do not program timer2".
This means that if the second timer would start in between of the
starting and end time of an existing timer, than it is not programmed.
I think this behaviour is not what one wants it to be.
Most of us seem to have at least 2 cards.
And even if one had only one card it would be even OK to program both
timers and let the priority field (say VDR) decide which one should
really be recorded.
Today, the user can't decide which one will be taken if timers overlap.
(OK, the timer entries are sorted, but...)
For me I disabled this check, so that all timer are programmed even if
they overlap.
Here is the little (let's call it) patch:
--- timer.pl.bak Sun Mar 3 02:07:23 2002
+++ timer.pl Sun Mar 3 02:04:04 2002
@@ -69,23 +69,27 @@
$temp = $num;
}
- foreach $time2 (sort keys %{$$rTimer{$temp}}) {
- foreach $channel2 (sort keys %{$$rTimer{$temp}{$time2}}) {
- if ($channel eq $channel2) {
- foreach $title2 (sort keys %{$$rTimer{$temp}{$time2}{$channel}}) {
- $rTEntry2 = $$rTimer{$temp}{$time2}{$channel}{$title2};
- $ctime = $time2 - $$rTEntry2{marginstart};
- $ctime2 = $time2 + $$rTEntry2{duration} +
$$rTEntry2{marginstop};
-
- if (!$$rTEntry2{nojoin}) {
- if (($time >= $ctime) && ($time <= $ctime2)) {
- next outer;
- }
- }
- }
- }
- }
- }
+# foreach $time2 (sort keys %{$$rTimer{$temp}}) {
+# foreach $channel2 (sort keys %{$$rTimer{$temp}{$time2}}) {
+# if ($channel eq $channel2) {
+# foreach $title2 (sort keys %{$$rTimer{$temp}{$time2}{$channel}}) {
+# $rTEntry2 =
$$rTimer{$temp}{$time2}{$channel}{$title2}{subtitle2};
+# $ctime = $time2 - $$rTEntry2{marginstart};
+# $ctime2 = $time2 + $$rTEntry2{duration} +
$$rTEntry2{marginstop};
+#
+# print "Entry2:" . $title2 . "-" . $$rTEntry2{subtitle}
. "\n";
+#
+# if (!$$rTEntry2{nojoin}) {
+# if (($time >= $ctime) && ($time <= $ctime2)) {
+# print "time:" . $time . " ctime:" . $ctime . "
ctime2:" . $ctime2 . " time2:" . $time2 . "\n";
+# print "skipped\n";
+# next outer;
+# }
+# }
+# }
+# }
+# }
+# }
$$rTimer{$temp}{$time}{$channel}{$title}{duration}=$duration;
$rTEntry = $$rTimer{$temp}{$time}{$channel}{$title}; # The
Tree-Node must exist, before aliasing it
What do you think about it?
Have fun.
Richard
Home |
Main Index |
Thread Index