This is a "plugin" for the Video Disk Recorder (VDR). Written by: Dino Kern Project's homepage: www.troodon.org Latest version available at: www.troodon.org/vdr See the file COPYING for license information. Description: ------------ This plugin scans the EPG data of the VDR continuously in background and can program timer events automatically by means of regular expresions. This means you enter your favorite movie name in one of the Epgtimer's search fields and will never miss your recording again, independent of the EPG data was already updated or the sender shifted the start time, epgtimer takes care of the recording. This gives you a lot more flexibility than using a repeating timer function. This timer programming won't conflict with the manual timers because it identifies itself by an event_id entry in the summary field. After changing a automatic timer manually, it will be treathed as an manual timer, and epgtimer won't update or delete it any more. The background scanning is called by the VDR's Housekeeping function, in a minimum time of 10 minutes. If you have heavy load, (recordings or playback) the time can be longer. To keep the MainMenu clear, the epgtimer entry has been removed from there. The scan can be triggered manually by closing the configuration page. VDR's MarginStart and MarginEnd settings will be applied to all recordings. Internals: ---------- In contrast to most other VDR-Plugins, most of the Epgtimer plugin is written in Perl. The main work is done by the epgtimer.pl perl script which is called from within the plugin. The C-part just provides the setup topics and wrappers. The main intention of the project was to implement a totally independent perl interpreter inside a VDR-Plugin which enables any perl script to have full access to all VDR functions and variables. This might extremely speed up Plugin-development. However alhough the interpreter had already been compiled in, I decided to call the script by forc and exec, because there were a lot difficulties with functions containing C or XS code, invoked by 'use' statements. This means from Epgtimer version 0.1.0 on, you don't need the perl development libraries for translation any more. Installation: ------------- Please read the INSTALL file for how to make it run! Operation: ------------- Go to the plugin's setup menu. Max timer entries:Lets you select how many independent timer events Epgtimer will be allowed to add in the timer list. Channel range: If you've stored the most popular programs at the beginning of the channels list you can set this value to the last channel you want recordings from. This way you can exlude decrypted channels which send valid EPG data but can't be recieved. 0 will search on all available channels. Duplicate delay: Some series seem to be repeated on the same channel in a certain time later. You can set the delay to avoid double recording. A 1 hour safety gap is included to make sure a single broadcast with two EPG entries will be detected properly, so set this value to 2 hours or more. 0 disables duplication checking. Below this item there are 6 different search fields all consisting of: Search pattern: Enter a search pattern with regular expressions (see below) Searach depth: Select to seach just in Title or in Subtitle and Description as well. Search channel: Search only on a specific channel number. (0= search in all channels) Activity: Enable or disable this search item. If you disable it the timers for this search will be removed during the next scan. Regular Expressions: Title, subtitle and description are scanned as a long string. All Perl regular expressions are allowed, but note: '$' was replaced by '#' and aAll the search is case INSENSITIVE ! ^ Matching at beginning of the line # Matching at the end of the line (usually $) /b Block search Examples: ^big# will only find "Big" or "big" or "BIG". ^big\b will find "Big Brother" ^big will find "Bigfoot" and "Big Brother" \bbig\b will find "More than Big", "Big Brother" but not "Bigfoot" So, be aware of the power of the Regex! HISTORY - See also the file HISTORY: ------------------------------------ - Scan only channels which can be received. I.e. don't scan Preimiere if there is no Abo. Done 13.06.04 - 0.0.2 Only channels in the channels list are scanned. If you don't have a Premiere Abo, you should remove these channels out of the channels list or set the "Channels range" (see below) - Add a preferred channel area to be recorded from. Done 20.06.04 - 0.0.3 New field "Channel range" added. Place your favorite channels at the beginning of the channels list and set "Channel range" to the last channel which should be scanned by epgtimer. - Adjust the start- and endtime of a timer in case the broadcast is delayed. Done 20.06.04 - 0.0.3 EPG start-time is being compared with timer start-time. The timer will be updated unless someone changed it manually. - Avoid duplicated recordings due to repeated broadcasts Done 12.07.04 - 0.0.4 Duplications can be avoided by setting the Duplicate delay to value 2 hours or greater +++++ - Project renamed from "Epgscan" to "Epgtimer" due to some misunderstandings. Starting with Epgtimer Version 0.1.0 Done 12.02.2005 - 0.1.0 The Perl development liebraries and header files are not necessary for comiling any more. Search fiels extended, totally 9 search orders can be active. ToDo: ------- - Missing translations in file i18n.c (only German and English is available).