mirror of
https://github.com/vdr-projects/vdr.git
synced 2025-03-01 10:50:46 +00:00
Version 1.4.4-1
- Some improvements to the man pages (thanks to Ville Skyttä). - Fixed a possible segfault in cSkins::Message() (thanks to Udo Richter). - Made the getskyepg.pl script of the 'sky' plugin send a user agent message to the server, according to the rules at http://bleb.org/tv/data/listings. If your version of 'wget' doesn't support the -U option to set the user agent, use the new option -U of getskyepg.pl to have the information added to the URL as a query string. - The getskyepg.pl script now replaces "&" with "&". - Fixed a possible crash in remux.c on 64-bit machines (thanks to Reinhard Nissl). - Fixed a typo in the change to the "Use small font" setup option in version 1.3.47 in the HISTORY and CONTRIBUTORS file (reported by Andreas Brugger). - Added a missing 'const' to cRecordingInfo::ChannelID() (reported by Andreas Brugger). This required the APIVERSION to be increased, so plugins will have to be recompiled. - Now calling cPluginManager::Active() only if VDR is really trying to shut down, and waiting for 5 minutes before calling it again (thanks to Jörg Wendel for reporting that cPlugin::Active() was called too often, and to Udo Richter for some hints on how to improve this). - Replaced 'unsigned long' with 'uint32_t' and 'uint64' with 'uint64_t' to avoid problems on 64-bit machines.
This commit is contained in:
parent
bc67a03157
commit
287cd613a1
12
CONTRIBUTORS
12
CONTRIBUTORS
@ -1113,6 +1113,7 @@ Reinhard Nissl <rnissl@gmx.de>
|
||||
for implementing cDevice::ForceTransferMode()
|
||||
for changing the behaviour when hitting the end of a recording in fast forward mode
|
||||
for suggesting to give the cRemote::CallPlugin() function a boolean return value
|
||||
for fixing a possible crash in remux.c on 64-bit machines
|
||||
|
||||
Richard Robson <richard_robson@beeb.net>
|
||||
for reporting freezing replay if a timer starts while in Transfer Mode from the
|
||||
@ -1474,6 +1475,8 @@ Udo Richter <udo_richter@gmx.de>
|
||||
for reporting that an assignment in svdrp.c didn't use the cTimer::operator=())
|
||||
for suggesting that the function cThread::Cancel() should only set 'running' to
|
||||
false and not actually kill the thread if the special value -1 is given
|
||||
or fixing a possible segfault in cSkins::Message()
|
||||
for some hints on how to improve handling cPluginManager::Active()
|
||||
|
||||
Sven Kreiensen <svenk@kammer.uni-hannover.de>
|
||||
for his help in keeping 'channels.conf.terr' up to date
|
||||
@ -1521,6 +1524,9 @@ Andreas Brugger <brougs78@gmx.net>
|
||||
cStatus::Replaying(), so that they can provide the full file name of the recording
|
||||
for suggesting that externally provided EPG data (with table ID 0x00) shall get its
|
||||
component descriptors set from the broadcast data
|
||||
for reporting a typo in the change to the "Use small font" setup option in version
|
||||
1.3.47 in the HISTORY and CONTRIBUTORS file
|
||||
for reporting a missing 'const' in cRecordingInfo::ChannelID()
|
||||
|
||||
Dino Ravnic <dino.ravnic@fer.hr>
|
||||
for fixing some characters in the iso8859-2 font file
|
||||
@ -1638,6 +1644,7 @@ Ville Skytt
|
||||
for fixing converting the port number in the "connect from..." log message of SVDRP
|
||||
for reporting that there are places where ntohs() is assigned to different types
|
||||
for adapting cThread::ThreadId() to recent kernels
|
||||
for some improvements to the man pages
|
||||
|
||||
Steffen Beyer <cpunk@reactor.de>
|
||||
for fixing setting the colored button help after deleting a recording in case the next
|
||||
@ -1903,7 +1910,7 @@ Suur Karu <suurkaru@fastmail.fm>
|
||||
Ronny Kornexl <ronny.kornexl@online.de>
|
||||
for reporting a problem with setting "No title" for broken event data
|
||||
for suggesting to make the "Use small font" setup option *always* use the small
|
||||
font if set to '3' - even if it would have been a fixed font
|
||||
font if set to '2' - even if it would have been a fixed font
|
||||
for reporting a bug in initializing 'noapiv' in the Makefile
|
||||
|
||||
Vladimír Bárta <vladimir.barta@k2atmitec.cz>
|
||||
@ -2032,3 +2039,6 @@ Boguslaw Juza <bogdan@uci.agh.edu.pl>
|
||||
Ulf Kiener <webmaster@ulf-kiener.de>
|
||||
for reporting a problem with audio track descriptions in the DVD plugin after a
|
||||
replay has been stopped
|
||||
|
||||
Jörg Wendel <vdr-ml@jwendel.de>
|
||||
for reporting that cPlugin::Active() was called too often
|
||||
|
25
HISTORY
25
HISTORY
@ -4611,7 +4611,7 @@ Video Disk Recorder Revision History
|
||||
(since version 1.3.38 disk access is done in a separate thread, so the watchdog
|
||||
timer won't hit).
|
||||
- Changed the behaviour of the "Use small font" setup option to *always* use the small
|
||||
font if set to '3' - even if it would have been a fixed font (suggested by Ronny
|
||||
font if set to '2' - even if it would have been a fixed font (suggested by Ronny
|
||||
Kornexl).
|
||||
- No longer using characters 0x01 and 0x02 for mapping single quote and slash in
|
||||
recording names (thanks to Patrick Fischer for reporting that this was a problem
|
||||
@ -4985,3 +4985,26 @@ Video Disk Recorder Revision History
|
||||
|
||||
- Fixed displaying the replay mode symbol in case of "Multi speed mode" (reported
|
||||
by Marco Schlüßler).
|
||||
|
||||
2006-12-03: Version 1.4.4-1
|
||||
|
||||
- Some improvements to the man pages (thanks to Ville Skyttä).
|
||||
- Fixed a possible segfault in cSkins::Message() (thanks to Udo Richter).
|
||||
- Made the getskyepg.pl script of the 'sky' plugin send a user agent message to
|
||||
the server, according to the rules at http://bleb.org/tv/data/listings.
|
||||
If your version of 'wget' doesn't support the -U option to set the user agent,
|
||||
use the new option -U of getskyepg.pl to have the information added to the URL
|
||||
as a query string.
|
||||
- The getskyepg.pl script now replaces "&" with "&".
|
||||
- Fixed a possible crash in remux.c on 64-bit machines (thanks to Reinhard Nissl).
|
||||
- Fixed a typo in the change to the "Use small font" setup option in version 1.3.47
|
||||
in the HISTORY and CONTRIBUTORS file (reported by Andreas Brugger).
|
||||
- Added a missing 'const' to cRecordingInfo::ChannelID() (reported by Andreas
|
||||
Brugger). This required the APIVERSION to be increased, so plugins will have to
|
||||
be recompiled.
|
||||
- Now calling cPluginManager::Active() only if VDR is really trying to shut down,
|
||||
and waiting for 5 minutes before calling it again (thanks to Jörg Wendel for
|
||||
reporting that cPlugin::Active() was called too often, and to Udo Richter for
|
||||
some hints on how to improve this).
|
||||
- Replaced 'unsigned long long' with 'uint32_t' and 'uint64' with 'uint64_t' to
|
||||
avoid problems on 64-bit machines.
|
||||
|
@ -45,3 +45,12 @@ VDR Plugin 'sky' Revision History
|
||||
2006-03-26: Version 0.3.5
|
||||
|
||||
- Fixed format string handling.
|
||||
|
||||
2006-12-02: Version 0.3.5 (version number not increased)
|
||||
|
||||
- Made the getskyepg.pl script send a user agent message to
|
||||
the server, according to the rules at http://bleb.org/tv/data/listings.
|
||||
If your version of 'wget' doesn't support the -U option to set the user agent,
|
||||
use the new option -U of getskyepg.pl to have the information added to the URL
|
||||
as a query string.
|
||||
- The getskyepg.pl script now replaces "&" with "&".
|
||||
|
@ -8,7 +8,7 @@
|
||||
#
|
||||
# See the README file for copyright information and how to reach the author.
|
||||
#
|
||||
# $Id: getskyepg.pl 1.4 2006/01/08 10:21:32 kls Exp $
|
||||
# $Id: getskyepg.pl 1.6 2006/12/02 09:52:49 kls Exp $
|
||||
|
||||
use Getopt::Std;
|
||||
use Time::Local;
|
||||
@ -21,18 +21,29 @@ Options: -c filename channel config file name (default: channels.conf.sky
|
||||
-p port SVDRP port number (default: 2001)
|
||||
-S source channel source (default: S28.2E)
|
||||
-D days days to get EPG for (1..7, default: 2)
|
||||
-U use this if your version of 'wget' doesn't support -U
|
||||
};
|
||||
|
||||
die $Usage if (!getopts("c:d:D:hp:S:") || $opt_h);
|
||||
die $Usage if (!getopts("c:d:D:hp:S:U") || $opt_h);
|
||||
|
||||
$Conf = $opt_c || "channels.conf.sky";
|
||||
$Dest = $opt_d || "localhost";
|
||||
$Port = $opt_p || 2001;
|
||||
$Source = $opt_S || "S28.2E";
|
||||
$Days = $opt_D || 2;
|
||||
$User = $opt_U;
|
||||
|
||||
# See "Rules for using this data" on http://bleb.org/tv/data/listings.
|
||||
# In case you modify this script in a way that changes its behavior
|
||||
# towards the www.bleb.org website, please replace 'vdrbugs@cadsoft.de'
|
||||
# with your own email address! That way Andrew Flegg <andrew@bleb.org>,
|
||||
# who runs that web site, can contact you in case of problems.
|
||||
$IDENT = "VDR::getskyepg.pl, http://www.cadsoft.de/vdr - vdrbugs\@cadsoft.de";
|
||||
$GAP = 2;
|
||||
|
||||
$SkyWebPage = "www.bleb.org/tv/data/listings";
|
||||
$WGET = "/usr/bin/wget -q -O-";
|
||||
$WGET .= " -U '$IDENT'" unless $User;
|
||||
$LOGGER = "/usr/bin/logger -t SKYEPG";
|
||||
|
||||
$DST = -3600; # Daylight Saving Time offset
|
||||
@ -76,13 +87,21 @@ sub GetPage
|
||||
my $channel = shift;
|
||||
my $day = shift;
|
||||
$day--;
|
||||
my $url = "$SkyWebPage/$day/$channel.xml";
|
||||
my $url = "http://$SkyWebPage/$day/$channel.xml";
|
||||
$url .= "?$IDENT" if $User;
|
||||
Log("reading $url");
|
||||
my @page = split("\n", `$WGET '$url'`);
|
||||
Log("received " . ($#page + 1) . " lines");
|
||||
return @page;
|
||||
}
|
||||
|
||||
sub ReplaceTags
|
||||
{
|
||||
my $s = shift;
|
||||
$s =~ s/&/&/g;
|
||||
return $s;
|
||||
}
|
||||
|
||||
sub StripWhitespace
|
||||
{
|
||||
my $s = shift;
|
||||
@ -96,7 +115,7 @@ sub Extract
|
||||
my $s = shift;
|
||||
my $t = shift;
|
||||
$s =~ /<$t>([^<]*)<\/$t>/;
|
||||
return StripWhitespace($1);
|
||||
return ReplaceTags(StripWhitespace($1));
|
||||
}
|
||||
|
||||
# In order to get the duration we need to buffer the last event:
|
||||
@ -174,6 +193,7 @@ sub GetEpgData
|
||||
$data .= $line;
|
||||
}
|
||||
}
|
||||
sleep($GAP);
|
||||
}
|
||||
SVDRPsend("c");
|
||||
Log("generated $numEvents EPG events");
|
||||
|
8
config.h
8
config.h
@ -4,7 +4,7 @@
|
||||
* See the main source file 'vdr.c' for copyright information and
|
||||
* how to reach the author.
|
||||
*
|
||||
* $Id: config.h 1.277 2006/11/04 13:19:31 kls Exp $
|
||||
* $Id: config.h 1.279 2006/12/01 15:08:43 kls Exp $
|
||||
*/
|
||||
|
||||
#ifndef __CONFIG_H
|
||||
@ -21,13 +21,13 @@
|
||||
|
||||
// VDR's own version number:
|
||||
|
||||
#define VDRVERSION "1.4.4"
|
||||
#define VDRVERSION "1.4.4-1"
|
||||
#define VDRVERSNUM 10404 // Version * 10000 + Major * 100 + Minor
|
||||
|
||||
// The plugin API's version number:
|
||||
|
||||
#define APIVERSION "1.4.4"
|
||||
#define APIVERSNUM 10404 // Version * 10000 + Major * 100 + Minor
|
||||
#define APIVERSION "1.4.5"
|
||||
#define APIVERSNUM 10405 // Version * 10000 + Major * 100 + Minor
|
||||
|
||||
// When loading plugins, VDR searches them by their APIVERSION, which
|
||||
// may be smaller than VDRVERSION in case there have been no changes to
|
||||
|
4
font.h
4
font.h
@ -4,7 +4,7 @@
|
||||
* See the main source file 'vdr.c' for copyright information and
|
||||
* how to reach the author.
|
||||
*
|
||||
* $Id: font.h 1.12 2006/02/05 13:46:36 kls Exp $
|
||||
* $Id: font.h 1.13 2006/12/02 11:11:48 kls Exp $
|
||||
*/
|
||||
|
||||
#ifndef __FONT_H
|
||||
@ -32,7 +32,7 @@ enum eDvbCode {
|
||||
class cFont {
|
||||
public:
|
||||
enum { NUMCHARS = 256 };
|
||||
typedef unsigned long tPixelData;
|
||||
typedef uint32_t tPixelData;
|
||||
struct tCharData {
|
||||
tPixelData width, height;
|
||||
tPixelData lines[1];
|
||||
|
4
menu.c
4
menu.c
@ -4,7 +4,7 @@
|
||||
* See the main source file 'vdr.c' for copyright information and
|
||||
* how to reach the author.
|
||||
*
|
||||
* $Id: menu.c 1.445 2006/11/04 13:13:18 kls Exp $
|
||||
* $Id: menu.c 1.446 2006/12/02 11:12:02 kls Exp $
|
||||
*/
|
||||
|
||||
#include "menu.h"
|
||||
@ -3280,7 +3280,7 @@ eOSState cDisplayChannel::ProcessKey(eKeys Key)
|
||||
return osEnd;
|
||||
}
|
||||
};
|
||||
if (!timeout || lastTime.Elapsed() < (uint64)(Setup.ChannelInfoTime * 1000)) {
|
||||
if (!timeout || lastTime.Elapsed() < (uint64_t)(Setup.ChannelInfoTime * 1000)) {
|
||||
if (Key == kNone && !number && group < 0 && !NewChannel && channel && channel->Number() != cDevice::CurrentChannel()) {
|
||||
// makes sure a channel switch through the SVDRP CHAN command is displayed
|
||||
channel = Channels.GetByNumber(cDevice::CurrentChannel());
|
||||
|
8
rcu.c
8
rcu.c
@ -4,7 +4,7 @@
|
||||
* See the main source file 'vdr.c' for copyright information and
|
||||
* how to reach the author.
|
||||
*
|
||||
* $Id: rcu.c 1.14 2006/06/16 09:29:24 kls Exp $
|
||||
* $Id: rcu.c 1.15 2006/12/02 11:12:28 kls Exp $
|
||||
*/
|
||||
|
||||
#include "rcu.h"
|
||||
@ -97,7 +97,7 @@ void cRcuRemote::Action(void)
|
||||
time_t LastCodeRefresh = 0;
|
||||
cTimeMs FirstTime;
|
||||
unsigned char LastCode = 0, LastMode = 0;
|
||||
uint64 LastCommand = ~0; // 0x00 might be a valid command
|
||||
uint64_t LastCommand = ~0; // 0x00 might be a valid command
|
||||
unsigned int LastData = 0;
|
||||
bool repeat = false;
|
||||
|
||||
@ -109,13 +109,13 @@ void cRcuRemote::Action(void)
|
||||
buffer.raw[i] = b;
|
||||
if (i == 5) {
|
||||
unsigned short Address = ntohs(buffer.data.address); // the PIC sends bytes in "network order"
|
||||
uint64 Command = ntohl(buffer.data.command);
|
||||
uint64_t Command = ntohl(buffer.data.command);
|
||||
if (code == 'B' && Address == 0x0000 && Command == 0x00004000)
|
||||
// Well, well, if it isn't the "d-box"...
|
||||
// This remote control sends the above command before and after
|
||||
// each keypress - let's just drop this:
|
||||
break;
|
||||
Command |= uint64(Address) << 32;
|
||||
Command |= uint64_t(Address) << 32;
|
||||
if (Command != LastCommand) {
|
||||
LastCommand = Command;
|
||||
repeat = false;
|
||||
|
@ -4,7 +4,7 @@
|
||||
* See the main source file 'vdr.c' for copyright information and
|
||||
* how to reach the author.
|
||||
*
|
||||
* $Id: recording.h 1.55 2006/07/30 10:24:07 kls Exp $
|
||||
* $Id: recording.h 1.56 2006/12/01 15:06:07 kls Exp $
|
||||
*/
|
||||
|
||||
#ifndef __RECORDING_H
|
||||
@ -50,7 +50,7 @@ private:
|
||||
void SetAux(const char *Aux);
|
||||
public:
|
||||
~cRecordingInfo();
|
||||
tChannelID ChannelID(void) { return channelID; }
|
||||
tChannelID ChannelID(void) const { return channelID; }
|
||||
const char *Title(void) const { return event->Title(); }
|
||||
const char *ShortText(void) const { return event->ShortText(); }
|
||||
const char *Description(void) const { return event->Description(); }
|
||||
|
16
remote.c
16
remote.c
@ -4,7 +4,7 @@
|
||||
* See the main source file 'vdr.c' for copyright information and
|
||||
* how to reach the author.
|
||||
*
|
||||
* $Id: remote.c 1.54 2006/10/14 11:05:57 kls Exp $
|
||||
* $Id: remote.c 1.55 2006/12/02 11:12:42 kls Exp $
|
||||
*/
|
||||
|
||||
#include "remote.h"
|
||||
@ -116,7 +116,7 @@ bool cRemote::PutMacro(eKeys Key)
|
||||
return true;
|
||||
}
|
||||
|
||||
bool cRemote::Put(uint64 Code, bool Repeat, bool Release)
|
||||
bool cRemote::Put(uint64_t Code, bool Repeat, bool Release)
|
||||
{
|
||||
char buffer[32];
|
||||
snprintf(buffer, sizeof(buffer), "%016LX", Code);
|
||||
@ -203,7 +203,7 @@ cRemotes Remotes;
|
||||
|
||||
struct tKbdMap {
|
||||
eKbdFunc func;
|
||||
uint64 code;
|
||||
uint64_t code;
|
||||
};
|
||||
|
||||
static tKbdMap KbdMap[] = {
|
||||
@ -264,7 +264,7 @@ void cKbdRemote::SetRawMode(bool RawMode)
|
||||
rawMode = RawMode;
|
||||
}
|
||||
|
||||
uint64 cKbdRemote::MapFuncToCode(int Func)
|
||||
uint64_t cKbdRemote::MapFuncToCode(int Func)
|
||||
{
|
||||
for (tKbdMap *p = KbdMap; p->func != kfNone; p++) {
|
||||
if (p->func == Func)
|
||||
@ -273,7 +273,7 @@ uint64 cKbdRemote::MapFuncToCode(int Func)
|
||||
return (Func <= 0xFF) ? Func : 0;
|
||||
}
|
||||
|
||||
int cKbdRemote::MapCodeToFunc(uint64 Code)
|
||||
int cKbdRemote::MapCodeToFunc(uint64_t Code)
|
||||
{
|
||||
for (tKbdMap *p = KbdMap; p->func != kfNone; p++) {
|
||||
if (p->code == Code)
|
||||
@ -296,9 +296,9 @@ int cKbdRemote::ReadKey(void)
|
||||
return -1;
|
||||
}
|
||||
|
||||
uint64 cKbdRemote::ReadKeySequence(void)
|
||||
uint64_t cKbdRemote::ReadKeySequence(void)
|
||||
{
|
||||
uint64 k = 0;
|
||||
uint64_t k = 0;
|
||||
int key1;
|
||||
|
||||
if ((key1 = ReadKey()) >= 0) {
|
||||
@ -342,7 +342,7 @@ uint64 cKbdRemote::ReadKeySequence(void)
|
||||
void cKbdRemote::Action(void)
|
||||
{
|
||||
while (Running()) {
|
||||
uint64 Command = ReadKeySequence();
|
||||
uint64_t Command = ReadKeySequence();
|
||||
if (Command) {
|
||||
if (rawMode || !Put(Command)) {
|
||||
int func = MapCodeToFunc(Command);
|
||||
|
10
remote.h
10
remote.h
@ -4,7 +4,7 @@
|
||||
* See the main source file 'vdr.c' for copyright information and
|
||||
* how to reach the author.
|
||||
*
|
||||
* $Id: remote.h 1.37 2006/10/14 11:46:58 kls Exp $
|
||||
* $Id: remote.h 1.38 2006/12/02 11:12:49 kls Exp $
|
||||
*/
|
||||
|
||||
#ifndef __REMOTE_H
|
||||
@ -35,7 +35,7 @@ protected:
|
||||
cRemote(const char *Name);
|
||||
const char *GetSetup(void);
|
||||
void PutSetup(const char *Setup);
|
||||
bool Put(uint64 Code, bool Repeat = false, bool Release = false);
|
||||
bool Put(uint64_t Code, bool Repeat = false, bool Release = false);
|
||||
bool Put(const char *Code, bool Repeat = false, bool Release = false);
|
||||
public:
|
||||
virtual ~cRemote();
|
||||
@ -100,13 +100,13 @@ private:
|
||||
struct termios savedTm;
|
||||
virtual void Action(void);
|
||||
int ReadKey(void);
|
||||
uint64 ReadKeySequence(void);
|
||||
int MapCodeToFunc(uint64 Code);
|
||||
uint64_t ReadKeySequence(void);
|
||||
int MapCodeToFunc(uint64_t Code);
|
||||
public:
|
||||
cKbdRemote(void);
|
||||
virtual ~cKbdRemote();
|
||||
static bool KbdAvailable(void) { return kbdAvailable; }
|
||||
static uint64 MapFuncToCode(int Func);
|
||||
static uint64_t MapFuncToCode(int Func);
|
||||
static void SetRawMode(bool RawMode);
|
||||
};
|
||||
|
||||
|
6
remux.c
6
remux.c
@ -11,7 +11,7 @@
|
||||
* The cRepacker family's code was originally written by Reinhard Nissl <rnissl@gmx.de>,
|
||||
* and adapted to the VDR coding style by Klaus.Schmidinger@cadsoft.de.
|
||||
*
|
||||
* $Id: remux.c 1.56 2006/04/17 12:48:12 kls Exp $
|
||||
* $Id: remux.c 1.57 2006/12/01 14:46:25 kls Exp $
|
||||
*/
|
||||
|
||||
#include "remux.h"
|
||||
@ -389,7 +389,7 @@ bool cVideoRepacker::ScanDataForStartCodeFast(const uchar *&Data, const uchar *L
|
||||
}
|
||||
|
||||
Data = Limit;
|
||||
unsigned long *Scanner = (unsigned long *)(Data - 3);
|
||||
uint32_t *Scanner = (uint32_t *)(Data - 3);
|
||||
scanner = ntohl(*Scanner);
|
||||
return false;
|
||||
}
|
||||
@ -615,7 +615,7 @@ bool cVideoRepacker::ScanForEndOfPictureFast(const uchar *&Data, const uchar *Li
|
||||
}
|
||||
|
||||
Data = Limit + 1;
|
||||
unsigned long *LocalScanner = (unsigned long *)(Data - 4);
|
||||
uint32_t *LocalScanner = (uint32_t *)(Data - 4);
|
||||
localScanner = ntohl(*LocalScanner);
|
||||
return false;
|
||||
}
|
||||
|
7
skins.c
7
skins.c
@ -4,7 +4,7 @@
|
||||
* See the main source file 'vdr.c' for copyright information and
|
||||
* how to reach the author.
|
||||
*
|
||||
* $Id: skins.c 1.11 2006/06/03 14:39:14 kls Exp $
|
||||
* $Id: skins.c 1.12 2006/12/01 13:32:37 kls Exp $
|
||||
*/
|
||||
|
||||
#include "skins.h"
|
||||
@ -226,8 +226,11 @@ eKeys cSkins::Message(eMessageType Type, const char *s, int Seconds)
|
||||
}
|
||||
if (!Current())
|
||||
return kNone;
|
||||
if (!cSkinDisplay::Current() && !displayMessage)
|
||||
if (!cSkinDisplay::Current()) {
|
||||
if (displayMessage)
|
||||
delete displayMessage;
|
||||
displayMessage = Current()->DisplayMessage();
|
||||
}
|
||||
cSkinDisplay::Current()->SetMessage(Type, s);
|
||||
cSkinDisplay::Current()->Flush();
|
||||
cStatus::MsgOsdStatusMessage(s);
|
||||
|
8
tools.c
8
tools.c
@ -4,7 +4,7 @@
|
||||
* See the main source file 'vdr.c' for copyright information and
|
||||
* how to reach the author.
|
||||
*
|
||||
* $Id: tools.c 1.120 2006/08/12 13:30:07 kls Exp $
|
||||
* $Id: tools.c 1.121 2006/12/02 11:12:59 kls Exp $
|
||||
*/
|
||||
|
||||
#include "tools.h"
|
||||
@ -547,11 +547,11 @@ cTimeMs::cTimeMs(void)
|
||||
Set();
|
||||
}
|
||||
|
||||
uint64 cTimeMs::Now(void)
|
||||
uint64_t cTimeMs::Now(void)
|
||||
{
|
||||
struct timeval t;
|
||||
if (gettimeofday(&t, NULL) == 0)
|
||||
return (uint64(t.tv_sec)) * 1000 + t.tv_usec / 1000;
|
||||
return (uint64_t(t.tv_sec)) * 1000 + t.tv_usec / 1000;
|
||||
return 0;
|
||||
}
|
||||
|
||||
@ -565,7 +565,7 @@ bool cTimeMs::TimedOut(void)
|
||||
return Now() >= begin;
|
||||
}
|
||||
|
||||
uint64 cTimeMs::Elapsed(void)
|
||||
uint64_t cTimeMs::Elapsed(void)
|
||||
{
|
||||
return Now() - begin;
|
||||
}
|
||||
|
10
tools.h
10
tools.h
@ -4,7 +4,7 @@
|
||||
* See the main source file 'vdr.c' for copyright information and
|
||||
* how to reach the author.
|
||||
*
|
||||
* $Id: tools.h 1.93 2006/04/16 10:40:45 kls Exp $
|
||||
* $Id: tools.h 1.94 2006/12/02 11:14:14 kls Exp $
|
||||
*/
|
||||
|
||||
#ifndef __TOOLS_H
|
||||
@ -15,6 +15,7 @@
|
||||
#include <fcntl.h>
|
||||
#include <poll.h>
|
||||
#include <stddef.h>
|
||||
#include <stdint.h>
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#include <syslog.h>
|
||||
@ -22,7 +23,6 @@
|
||||
#include <sys/types.h>
|
||||
|
||||
typedef unsigned char uchar;
|
||||
typedef unsigned long long int uint64;
|
||||
|
||||
extern int SysLogLevel;
|
||||
|
||||
@ -159,13 +159,13 @@ public:
|
||||
|
||||
class cTimeMs {
|
||||
private:
|
||||
uint64 begin;
|
||||
uint64_t begin;
|
||||
public:
|
||||
cTimeMs(void);
|
||||
static uint64 Now(void);
|
||||
static uint64_t Now(void);
|
||||
void Set(int Ms = 0);
|
||||
bool TimedOut(void);
|
||||
uint64 Elapsed(void);
|
||||
uint64_t Elapsed(void);
|
||||
};
|
||||
|
||||
class cReadLine {
|
||||
|
14
vdr.1
14
vdr.1
@ -8,7 +8,7 @@
|
||||
.\" License as specified in the file COPYING that comes with the
|
||||
.\" vdr distribution.
|
||||
.\"
|
||||
.\" $Id: vdr.1 1.26 2006/06/24 10:07:16 kls Exp $
|
||||
.\" $Id: vdr.1 1.27 2006/11/19 10:02:31 kls Exp $
|
||||
.\"
|
||||
.TH vdr 1 "30 Apr 2006" "1.4.0" "Video Disk Recorder"
|
||||
.SH NAME
|
||||
@ -23,12 +23,12 @@ It can work with signals received from satellites (DVB-S) as
|
||||
well as cable (DVB-C) and terrestrial (DVB-T) signals.
|
||||
|
||||
At least one DVB card is required to run \fBvdr\fR. With it you can watch
|
||||
live tv while recording one or more other broadcasts from the same transponder.
|
||||
live TV while recording one or more other broadcasts from the same transponder.
|
||||
It is also possible to start watching a recorded programme before the live
|
||||
broadcast has ended (\fBtime shifting\fR). In order to record from different
|
||||
transponders simultaneously two or more DVB cards are necessary.
|
||||
By default \fBvdr\fR can support up to four
|
||||
DVB cards. The primary DVB card (the one your tv set is connected to) has
|
||||
DVB cards. The primary DVB card (the one your TV set is connected to) has
|
||||
to be a "full featured" card, which means it must contain an MPEG decoder
|
||||
and provide audio and video signal outputs.
|
||||
|
||||
@ -76,7 +76,7 @@ Set logging to \fIlevel\fR.
|
||||
\fB0\fR\ =\ no logging, \fB1\fR\ =\ errors only,
|
||||
\fB2\fR\ =\ errors and info, \fB3\fR\ =\ errors, info and debug.
|
||||
The default logging level is \fB3\fR.
|
||||
If logging should be done to LOG_LOCALn instead of
|
||||
If logging should be done to LOG_LOCAL\fIn\fR instead of
|
||||
LOG_USER, add '.n' to LEVEL, as in 3.7 (n=0..7).
|
||||
.TP
|
||||
.BI \-L\ dir ,\ \-\-lib= dir
|
||||
@ -122,10 +122,12 @@ Use a serial port remote control device.
|
||||
If \fIpath\fR is omitted, vdr uses \fI/dev/ttyS1\fR.
|
||||
.TP
|
||||
.BI \-r\ cmd ,\ \-\-record= cmd
|
||||
Call \fIcmd\fR before and after a recording.
|
||||
Call \fIcmd\fR before and after a recording. See the file \fIINSTALL\fR for
|
||||
more information.
|
||||
.TP
|
||||
.BI \-s\ cmd ,\ \-\-shutdown= cmd
|
||||
Call \fIcmd\fR to shutdown the computer.
|
||||
Call \fIcmd\fR to shutdown the computer. See the file \fIINSTALL\fR for more
|
||||
information.
|
||||
.TP
|
||||
.BI \-t\ tty ,\ \-\-terminal= tty
|
||||
Set the controlling terminal.
|
||||
|
8
vdr.5
8
vdr.5
@ -8,7 +8,7 @@
|
||||
.\" License as specified in the file COPYING that comes with the
|
||||
.\" vdr distribution.
|
||||
.\"
|
||||
.\" $Id: vdr.5 1.59 2006/04/30 08:55:16 kls Exp $
|
||||
.\" $Id: vdr.5 1.60 2006/11/19 10:02:33 kls Exp $
|
||||
.\"
|
||||
.TH vdr 5 "30 Apr 2006" "1.4.0" "Video Disk Recorder Files"
|
||||
.SH NAME
|
||||
@ -57,7 +57,7 @@ to right):
|
||||
.B Name
|
||||
The channel's name (if the name originally contains a ':' character
|
||||
it has to be replaced by '|').
|
||||
Some tv stations provide a way of deriving a "short name" from the
|
||||
Some TV stations provide a way of deriving a "short name" from the
|
||||
channel name, which can be used in situations where there is not
|
||||
much space for displaying a long name. If a short name is available
|
||||
for this channel, it follows the full name and is delimited by a comma,
|
||||
@ -248,7 +248,7 @@ cause the timer to record on that day. Example:
|
||||
|
||||
.B MTWTF\-\-
|
||||
|
||||
will define a timer that records on Monday thru Friday and does not record
|
||||
will define a timer that records on Monday through Friday and does not record
|
||||
on weekends. The same result could be achieved with \fBABCDE\-\-\fR (this is
|
||||
used to allow setting the days with language specific characters).
|
||||
Note that only letters may be used here, no digits.
|
||||
@ -259,7 +259,7 @@ so a complete definition could look like this:
|
||||
|
||||
\fBMTWTF\-\-@2002\-02\-18\fR
|
||||
|
||||
which would implement a timer that records Monday thru Friday, and will hit
|
||||
which would implement a timer that records Monday through Friday, and will hit
|
||||
for the first time on or after February 18, 2002.
|
||||
This \fBfirst day\fR feature can be used to disable a repeating timer for a couple
|
||||
of days, or for instance to define a new Mon...Fri timer on Wednesday, which
|
||||
|
8
vdr.c
8
vdr.c
@ -22,7 +22,7 @@
|
||||
*
|
||||
* The project's page is at http://www.cadsoft.de/vdr
|
||||
*
|
||||
* $Id: vdr.c 1.280 2006/10/14 10:01:32 kls Exp $
|
||||
* $Id: vdr.c 1.282 2006/12/02 16:22:12 kls Exp $
|
||||
*/
|
||||
|
||||
#include <getopt.h>
|
||||
@ -1154,7 +1154,7 @@ int main(int argc, char *argv[])
|
||||
Skins.Message(mtInfo, tr("Editing process finished"));
|
||||
}
|
||||
}
|
||||
if (!Interact && ((!cRecordControls::Active() && !cCutter::Active() && !cPluginManager::Active() && (!Interface->HasSVDRPConnection() || UserShutdown)) || ForceShutdown)) {
|
||||
if (!Interact && ((!cRecordControls::Active() && !cCutter::Active() && (!Interface->HasSVDRPConnection() || UserShutdown)) || ForceShutdown)) {
|
||||
time_t Now = time(NULL);
|
||||
if (Now - LastActivity > ACTIVITYTIMEOUT) {
|
||||
// Shutdown:
|
||||
@ -1178,6 +1178,10 @@ int main(int argc, char *argv[])
|
||||
timer = NULL;
|
||||
dsyslog("reboot at %s", *TimeToString(Next));
|
||||
}
|
||||
if (!ForceShutdown && cPluginManager::Active()) {
|
||||
LastActivity = Now - Setup.MinUserInactivity * 60 + SHUTDOWNRETRY; // try again later
|
||||
continue;
|
||||
}
|
||||
if (!Next || Delta > Setup.MinEventTimeout * 60 || ForceShutdown) {
|
||||
ForceShutdown = false;
|
||||
if (timer)
|
||||
|
Loading…
x
Reference in New Issue
Block a user