summaryrefslogtreecommitdiff
path: root/Tools/master-timer/convert-DTV2VDR.pl
diff options
context:
space:
mode:
authorKlaus Schmidinger <kls (at) cadsoft (dot) de>2002-01-27 18:00:00 +0100
committerKlaus Schmidinger <kls (at) cadsoft (dot) de>2002-01-27 18:00:00 +0100
commit27919ee969866b68fc95b327a047a9989e4b4153 (patch)
tree1857862abf169ff6e9287152cd6fec6a1d9dbc41 /Tools/master-timer/convert-DTV2VDR.pl
parentb420457467ad0c8ae71f8b985914e85b7a0ff5aa (diff)
downloadvdr-patch-lnbsharing-27919ee969866b68fc95b327a047a9989e4b4153.tar.gz
vdr-patch-lnbsharing-27919ee969866b68fc95b327a047a9989e4b4153.tar.bz2
Version 0.99pre2vdr-0.99pre2
- Fixed setting the OSD size in the 'Confirm' interface call (thanks to Deti Fliegl). - Removed the 'read incomplete section...' error message in the EIT processor. - Fixed channel data for "DW TV" (thanks to Axel Gruber). - Added DPID to "PREMIERE MOVIE 1" in channels.conf.cable (thanks to Stephan Schreiber). - Prepared the OSD functions for multiple overlapping windows. - Removed the check to see whether the system time is running linearly. - Improved performance of SVDRP command entry. - Removed EPGBugfixLevel '3' - after more than a year Pro-7 finally managed to broadcast the correct timestamps for EPG events between 0:00 and 6:00! - Fixed failing watchdog timer if program hangs in OSD activities (thanks to Carsten Koch). - No longer requiring 'libncurses' if compiling without DEBUG_OSD=1 and REMOTE=KBD (thanks to Lauri Pesonen). - The "Recordings" menu now displays a hierarchical structure if there are subdirectories for the recordings. This can be controlled through the "RecordingDirs" parameter in the "Setup" menu. See "MANUAL/Replaying a Recording" for details. - Improved speed of setting the Help button texts. - Fixed handling file names that contain single quotes (') or dollar signs ($) in the call to the shutdown command (option '-s') and the recording command (option '-r'). - Improved error handling in the editing process; the resulting file will be deleted if an error occured. - A message is now prompted at the end of the editing process, indicating whether the process succeeded or failed. - Fixed setting the LastActivity timestamp after a shutdown prompt (thanks to Sergei Haller). - A message is now prompted if free disk space becomes low during recording. - The editing process now calls AssertFreeDiskSpace() to remove deleted recordings if the disk becomes full. - The "Main" menu now displays in its title the used disk space (in percent) and the estimated free disk space (in hh:mm), assuming a data rate of 30 MB per minute. - Activating the "Recordings" menu now displays "scanning recordings..." to give the user some feedback in case this takes longer. - Status messages are now displayed centered. - Removed the 'Tools' subdirectory from the VDR archive. All contributed tools can now be found at ftp://ftp.cadsoft.de/pub/people/kls/vdr/Tools.
Diffstat (limited to 'Tools/master-timer/convert-DTV2VDR.pl')
-rwxr-xr-xTools/master-timer/convert-DTV2VDR.pl151
1 files changed, 0 insertions, 151 deletions
diff --git a/Tools/master-timer/convert-DTV2VDR.pl b/Tools/master-timer/convert-DTV2VDR.pl
deleted file mode 100755
index fb2a783..0000000
--- a/Tools/master-timer/convert-DTV2VDR.pl
+++ /dev/null
@@ -1,151 +0,0 @@
-#!/usr/bin/perl -w
-
-use strict;
-
-# The EPG-Entrys
-my (%Entry, %channel, $mode);
-
-# 0 = VDR -> DTV
-# 1 = DTV -> VDR
-$mode = 0;
-
-read_channel_list();
-if ($mode) {
- &read_dtv();
- &read_epgdata();
-} else {
- &read_epgdata();
- &read_dtv();
-}
-&print_VDR();
-
-sub read_epgdata {
- my ($channel, $duration, $title, $subtitle, $description, $time);
- open (FI,"epg.data") or die ("Can't open file \"epg.data\"\n");
-
- while (<FI>) {
- # Begin Channel
- if (/^C\s(\d+)\s+(.+)/) {
- $channel=$2;
- while (<FI>) {
- # End Channel
- if (/^c$/) {
- last;
- }
- # Begin Timer
- elsif (/^E\s(\d+)\s+(\d+)\s+(\d+)$/) {
- # Undef this Variables because it is possibel that not every timer uses this values
- undef $duration;
- undef $subtitle;
- undef $description;
-
- $time=$2;
- $duration=$3;
- }
- # Title
- elsif (/^T\s(.*)/) {
- $title=$1;
- }
- # Subtitle
- elsif (/^S\s(.*)/) {
- $subtitle=$1;
- }
- # Description
- elsif (/^D\s(.*)/) {
- $description=$1;
- }
- # End Timer
- elsif (/^e$/) {
- if ($mode) {
- # DTV -> VDR
- $Entry{$channel}{$time}{subtitle}=$subtitle if ($subtitle);
- if ($description) {
- if ($Entry{$channel}{$time}{description}) {
- $Entry{$channel}{$time}{description} = "DTV: '$Entry{$channel}{$time}{description}' VDR: '$description'";
- } else {
- $Entry{$channel}{$time}{description} = "DTV: '' VDR: '$description'";
- }
- }
- } else {
- # VDR -> DTV
- $Entry{$channel}{$time}{title}=$title;
- $Entry{$channel}{$time}{duration}=$duration;
- $Entry{$channel}{$time}{subtitle}=$subtitle if ($subtitle);
- $Entry{$channel}{$time}{description}=$description if ($description);
- }
- }
- }
- }
- }
- close (FI);
-}
-
-sub read_dtv {
- my ($channel, $time, $duration, $title, $category, $subtitle, $description);
- open (FI,$ARGV[0]) or die "Can't open DTV-File";
-
- while (<FI>) {
- chomp;
- ($channel, $time, $duration, $title, $category, $subtitle, $description) = split (/\|/);
- if (!$channel{$channel}) {
- next;
- }
- $channel = $channel{$channel};
- if ($mode) {
- # DTV -> VDR
- if (!$subtitle && $description =~ /^\"(.*?)\"\:\s(.*)/) {
- $Entry{$channel}{$time}{subtitle} = $1;
- $description = $2;
- }
- $Entry{$channel}{$time}{title} = $title;
- $Entry{$channel}{$time}{duration} = $duration;
- $Entry{$channel}{$time}{subtitle} = $subtitle if ($subtitle);
- $Entry{$channel}{$time}{category} = $category if ($category);
- $Entry{$channel}{$time}{description} = $description if ($description);
- } else {
- # VDR -> DTV
- $Entry{$channel}{$time}{category} = $category if ($category);
- if ($description) {
- if (!$Entry{$channel}{$time}{subtitle} && $description =~ /^\"(.*?)\"\:\s(.*)/) {
- $Entry{$channel}{$time}{subtitle} = $1;
- $description = $2;
- }
- if ($Entry{$channel}{$time}{description}) {
- $Entry{$channel}{$time}{description} = "DTV: '$description' VDR: '$Entry{$channel}{$time}{description}'";
- } else {
- $Entry{$channel}{$time}{description} = "DTV: '$description' VDR: ''";
- }
- }
- }
- }
- close (FI);
-}
-
-sub read_channel_list {
- my ($old, $new);
- open (FI,"$ENV{HOME}/.master-timer/convert-channel-list") or die ("Can't read channel-List");
- while (<FI>) {
- chomp;
- ($old, $new) = split (/\|/);
- $channel{$old} = $new;
- }
- close (FI);
-}
-
-sub print_VDR() {
- my ($channel, $title, $time);
- foreach $channel (sort keys %Entry) {
- print "C 1 $channel\n";
- foreach $time (sort keys %{%Entry->{$channel}}) {
- if ($Entry{$channel}{$time}{duration}) {
- print "E 1 $time $Entry{$channel}{$time}{duration}\n";
- print "K $Entry{$channel}{$time}{category}\n" if ($Entry{$channel}{$time}{category});
- print "T $Entry{$channel}{$time}{title}\n";
- print "S $Entry{$channel}{$time}{subtitle}\n" if ($Entry{$channel}{$time}{subtitle});
- print "D $Entry{$channel}{$time}{description}\n" if ($Entry{$channel}{$time}{description});
- print "e\n";
- }
- }
- print "c\n";
- }
-}