From 27919ee969866b68fc95b327a047a9989e4b4153 Mon Sep 17 00:00:00 2001 From: Klaus Schmidinger Date: Sun, 27 Jan 2002 18:00:00 +0100 Subject: Version 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. --- Tools/master-timer/convert-DTV2VDR.pl | 151 ---------------------------------- 1 file changed, 151 deletions(-) delete mode 100755 Tools/master-timer/convert-DTV2VDR.pl (limited to 'Tools/master-timer/convert-DTV2VDR.pl') 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 () { - # Begin Channel - if (/^C\s(\d+)\s+(.+)/) { - $channel=$2; - while () { - # 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 () { - 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 () { - 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"; - } -} -- cgit v1.2.3