Skip to content

Commit

Permalink
Version 1.1.19
Browse files Browse the repository at this point in the history
- The character '|' in description texts of EPG records is now interpreted as a
  newline character (suggested by Gerhard Steiner).
- Updated 'channels.conf.cable' (thanks to Andreas Kool).
- Improved handling of repeated remote keys.
- The RCU now only sets the channel number display when there are no incoming remote
  control keys, which improves reaction on repeated keys.
- The actual tuning is now done in a separate thread, which makes zapping through the
  channels a lot faster and no longer gets stuck on channels that don't broadcast.
  This also makes "Motor-DiSEqC" work (thanks to Reinhard Walter Buchner for his help
  in testing this). Since switching channels now no longer explicitly waits for a
  channel lock in the foreground thread, the "panic level" mechanism is no longer
  used (maybe we don't need it any more, anyway).
- The keyboard is now by default always active to control VDR. The 'make' option
  REMOTE=KBD is therefore obsolete. When compiling VDR with REMOTE=RCU or REMOTE=LIRC,
  the keyboard can thus now be active together with the remote control. If you want
  to build VDR _without_ keyboard support you can set NO_KBD=1 in the 'make' call.
  Since the keyboard codes are now different from the ones used previously (which
  were mapped by the 'ncurses' library) you will need to go through the "Learning
  keys" procedure again. To do so, either delete the file /video/remote.conf or
  remove the KBD.* entries from it before starting this version of VDR.
  (Thanks to Thomas Sailer for pointing out how to set the terminal parameters to
  read from the keyboard).
- The 'ncurses' library is now only necessary when compiling VDR with DEBUG_OSD=1.
  • Loading branch information
Klaus Schmidinger committed Dec 8, 2002
1 parent 96ebdbf commit 2b15337
Show file tree
Hide file tree
Showing 21 changed files with 383 additions and 249 deletions.
18 changes: 12 additions & 6 deletions CONTRIBUTORS
Original file line number Diff line number Diff line change
Expand Up @@ -322,8 +322,8 @@ Ruben Nunez Francisco <ruben.nunez@tang-it.com>
for translating OSD texts to the Spanish language

Mirko D�lle <mdoelle@linux-user.de>
for reporting a bug when a timer records over midnight of a day that had a
change in Daylight Saving Time
for reporting a bug when a timer records over midnight of a day that had a
change in Daylight Saving Time

Michael Rakowski <mrak@gmx.de>
for translating OSD texts to the Polish language
Expand Down Expand Up @@ -441,6 +441,7 @@ Oliver Endriss <o.endriss@gmx.de>

Reinhard Walter Buchner <rw.buchner@freenet.de>
for adding some satellites to 'sources.conf'
for his help in testing tuning with "Motor-DiSEqC"

Lauri Tischler <lauri.tischler@efore.fi>
for helping to test and debug the new channel source and DiSEqC handling
Expand All @@ -458,6 +459,8 @@ Gerhard Steiner <steiner@mail.austria.com>
the 'epg.data' file
for suggesting the new configuration file 'reccmds.conf' to define commands that
shall be executed from the "Recordings" menu
for suggesting to interpret the character '|' in the description texts of EPG
records as a newline character

Jaakko Hyv�tti <jaakko@hyvatti.iki.fi>
for translating OSD texts to the Finnish language
Expand All @@ -476,14 +479,14 @@ Stefan Schluenss <dxr3_osd@schluenss.de>
for reporting a bug where PID handles were not closed correctly

R�gis Bossut <rbossut@auchan.com>
for pointing out that with some providers the channels can only be distinguished
through the RID
for pointing out that with some providers the channels can only be distinguished
through the RID

Andreas Kool <akool@akool.de>
for pointing out problems with non-unique definitions in 'channels.conf.cable'
for his help in keeping 'channels.conf.cable' up to date

Guy Roussin <guy.roussin@teledetection.fr>
for suggesting not to display channel group delimiters without text
for suggesting not to display channel group delimiters without text

Georg Hitsch <georg@hitsch.at>
for his help in keeping 'channels.conf' up to date
Expand All @@ -498,3 +501,6 @@ Emil Naepflein <Emil.Naepflein@philosys.de>
Gerald Berwolf <genka@genka.de>
for suggesting to deactivate some templates in tools.h in case some plugin needs to
use the STL

Thomas Sailer <sailer@scs.ch>
for pointing out how to set the terminal parameters to read from the keyboard
26 changes: 26 additions & 0 deletions HISTORY
Original file line number Diff line number Diff line change
Expand Up @@ -1836,3 +1836,29 @@ Video Disk Recorder Revision History
function of a given plugin (see man vdr(5) for details).
- The new plugin 'sky' can be used to integrate a Sky Digibox into the VDR system,
using a Kfir MPEG2 encoder card (see PLUGINS/src/sky/README for details).

2002-12-08: Version 1.1.19

- The character '|' in description texts of EPG records is now interpreted as a
newline character (suggested by Gerhard Steiner).
- Updated 'channels.conf.cable' (thanks to Andreas Kool).
- Improved handling of repeated remote keys.
- The RCU now only sets the channel number display when there are no incoming remote
control keys, which improves reaction on repeated keys.
- The actual tuning is now done in a separate thread, which makes zapping through the
channels a lot faster and no longer gets stuck on channels that don't broadcast.
This also makes "Motor-DiSEqC" work (thanks to Reinhard Walter Buchner for his help
in testing this). Since switching channels now no longer explicitly waits for a
channel lock in the foreground thread, the "panic level" mechanism is no longer
used (maybe we don't need it nay more, anyway).
- The keyboard is now by default always active to control VDR. The 'make' option
REMOTE=KBD is therefore obsolete. When compiling VDR with REMOTE=RCU or REMOTE=LIRC,
the keyboard can thus now be active together with the remote control. If you want
to build VDR _without_ keyboard support you can set NO_KBD=1 in the 'make' call.
Since the keyboard codes are now different from the ones used previously (which
were mapped by the 'ncurses' library) you will need to go through the "Learning
keys" procedure again. To do so, either delete the file /video/remote.conf or
remove the KBD.* entries from it before starting this version of VDR.
(Thanks to Thomas Sailer for pointing out how to set the terminal parameters to
read from the keyboard).
- The 'ncurses' library is now only necessary when compiling VDR with DEBUG_OSD=1.
10 changes: 5 additions & 5 deletions INSTALL
Original file line number Diff line number Diff line change
Expand Up @@ -26,17 +26,17 @@ installed.
IMPORTANT: See "Configuration files" below for information on how
========= to set up the configuration files at the proper location!

The 'vdr' program can be controlled via the PC keyboard or
an infrared remote control unit. Define the REMOTE macro to one of the
following values 'make' call to activate the respective control mode:
By default the 'vdr' program can be controlled via the PC keyboard. If you have
an infrared remote control unit you can define the REMOTE macro to one of the
following values in the 'make' call to activate the respective control mode:

REMOTE=KBD control via the PC keyboard (default)
REMOTE=RCU control via the "Remote Control Unit" receiver
(see http://www.cadsoft.de/vdr/remote.htm)
REMOTE=LIRC control via the "Linux Infrared Remote Control"
(see http://www.lirc.org)
REMOTE=NONE no remote control (in case only SVDRP shall be used)

If you want to disable control via the PC keyboard, you can add NO_KBD=1
to the 'make' call.
Adding "DEBUG_OSD=1" will use the PC screen (or current window)
to display texts instead of the DVB card's on-screen display
interface. These modes are useful when testing new menus if you
Expand Down
10 changes: 3 additions & 7 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
# See the main source file 'vdr.c' for copyright information and
# how to reach the author.
#
# $Id: Makefile 1.52 2002/11/29 15:23:02 kls Exp $
# $Id: Makefile 1.53 2002/12/08 12:20:37 kls Exp $

.DELETE_ON_ERROR:

Expand Down Expand Up @@ -38,12 +38,8 @@ OBJS = audio.o channels.o config.o cutter.o device.o diseqc.o dvbdevice.o dvbosd
OSDFONT = -adobe-helvetica-medium-r-normal--23-*-100-100-p-*-iso8859-1
FIXFONT = -adobe-courier-bold-r-normal--25-*-100-100-m-*-iso8859-1

ifndef REMOTE
REMOTE = KBD
endif

ifeq ($(REMOTE), KBD)
NCURSESLIB = -lncurses
ifndef NO_KBD
DEFINES += -DREMOTE_KBD
endif

DEFINES += -DREMOTE_$(REMOTE)
Expand Down
5 changes: 5 additions & 0 deletions PLUGINS/src/sky/README
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,9 @@ illegal, like decrypting the Sky programme without a subscription. You
will need a Sky Digibox and a valid subscription in order to use this
plugin.

The 'kfir' module must be loaded with the option 'streamtype=4' to make it
produce a Transport Stream.

The Digibox is remotely controlled through VDR via LIRC (see lirc.org).
The file lircd.conf.sky contains the remote control codes necessary to
control the Digibox.
Expand All @@ -43,3 +46,5 @@ uses to generate the EPG pages are stored as the 'sid' parameter in
the channels.conf definitions of the Sky channels. You can keep your
EPG data up-to-date by entering a call to getskyepg.pl into your
/etc/crontab. Call 'getskyepg.pl -h' for a list of options.
The getskyepg.pl script requires the programs /usr/bin/wget and /usr/bin/logger
to be installed on your system.
10 changes: 2 additions & 8 deletions channels.conf.cable
Original file line number Diff line number Diff line change
Expand Up @@ -37,9 +37,9 @@ Premiere 7:370:M64:C:6900:1023:1024:0:101:20:0:0:0
Premiere SERIE:378:M64:C:6900:1023:1024:0:101:16:0:0:0
Premiere Nostalgie:378:M64:C:6900:2559:2560:0:101:516:0:0:0
13 TH STREET:354:M64:C:6900:2303:2304:0:101:42:0:0:0
Studio Universal:402:M64:C:6900:1050:1054:0:101:36:0:0:0
Studio Universal:354:M64:C:6900:2047:2048:0:101:36:0:0:0
Krimi & Co:378:M64:C:6900:1535:1536:0:101:23:0:0:0
Disney Channel:402:M64:C:6900:1030:1034:0:101:34:0:0:0
Disney Channel:354:M64:C:6900:2559:2560:0:101:34:0:0:0
Discovery Channel:378:M64:C:6900:1791:1792:0:101:14:0:0:0
PLANET:354:M64:C:6900:1791:1792:0:101:13:0:0:0
Fox Kids:354:M64:C:6900:1279:1280:0:101:28:0:0:0
Expand All @@ -48,12 +48,6 @@ K-TOON:354:M64:C:6900:511:512:0:101:12:0:0:0
HEIMATKANAL:354:M64:C:6900:1535:1536:0:101:22:0:0:0
GOLDSTAR TV:354:M64:C:6900:3839:3840:0:101:518:0:0:0
CLASSICA:354:M64:C:6900:767:768:0:101:15:0:0:0
:Mediavision
Bloomberg:346:M64:C:6900:811:812:0:101:50701:0:0:0
Fashion TV:346:M64:C:6900:821:822:0:101:50702:0:0:0
Einstein:346:M64:C:6900:623:624:0:101:50719:0:0:0
Extreme Sport:346:M64:C:6900:801:802:0:101:50700:0:0:0
LANDSCAPE:346:M64:C:6900:831:832:0:101:50703:0:0:0
:DIGIKABEL D
Avante:113:M64:C:6900:741:742,743:0:101:53404:0:0:0
BBC Prime:113:M64:C:6900:761:762:763:101:53406:0:0:0
Expand Down
4 changes: 2 additions & 2 deletions config.h
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
* $Id: config.h 1.142 2002/11/24 20:09:56 kls Exp $
* $Id: config.h 1.143 2002/12/06 14:17:55 kls Exp $
*/

#ifndef __CONFIG_H
Expand All @@ -19,7 +19,7 @@
#include "device.h"
#include "tools.h"

#define VDRVERSION "1.1.18"
#define VDRVERSION "1.1.19"

#define MAXPRIORITY 99
#define MAXLIFETIME 99
Expand Down
25 changes: 12 additions & 13 deletions diseqc.c
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
* $Id: diseqc.c 1.1 2002/10/05 13:54:32 kls Exp $
* $Id: diseqc.c 1.2 2002/12/07 13:44:56 kls Exp $
*/

#include "diseqc.h"
Expand All @@ -16,7 +16,6 @@
cDiseqc::cDiseqc(void)
{
commands = NULL;
currentAction = NULL;;
parsing = false;
numCodes = 0;
}
Expand All @@ -39,11 +38,11 @@ bool cDiseqc::Parse(const char *s)
polarization = toupper(polarization);
if (polarization == 'V' || polarization == 'H') {
parsing = true;
bool Start = true;
while (Execute(Start) != daNone)
Start = false;
char *CurrentAction = NULL;
while (Execute(&CurrentAction) != daNone)
;
parsing = false;
result = !commands || currentAction && !*currentAction;
result = !commands || !*CurrentAction;
}
else
esyslog("ERROR: unknown polarization '%c'", polarization);
Expand Down Expand Up @@ -101,21 +100,21 @@ char *cDiseqc::Codes(char *s)
return NULL;
}

cDiseqc::eDiseqcActions cDiseqc::Execute(bool Start)
cDiseqc::eDiseqcActions cDiseqc::Execute(char **CurrentAction)
{
if (Start)
currentAction = commands;
while (currentAction && *currentAction) {
switch (*currentAction++) {
if (!*CurrentAction)
*CurrentAction = commands;
while (*CurrentAction && **CurrentAction) {
switch (*(*CurrentAction)++) {
case ' ': break;
case 't': return daToneOff;
case 'T': return daToneOn;
case 'v': return daVoltage13;
case 'V': return daVoltage18;
case 'A': return daMiniA;
case 'B': return daMiniB;
case 'W': currentAction = Wait(currentAction); break;
case '[': currentAction = Codes(currentAction); return currentAction ? daCodes : daNone;
case 'W': *CurrentAction = Wait(*CurrentAction); break;
case '[': *CurrentAction = Codes(*CurrentAction); return *CurrentAction ? daCodes : daNone;
default: return daNone;
}
}
Expand Down
12 changes: 9 additions & 3 deletions diseqc.h
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
* $Id: diseqc.h 1.1 2002/10/05 13:02:52 kls Exp $
* $Id: diseqc.h 1.2 2002/12/07 13:54:02 kls Exp $
*/

#ifndef __DISEQC_H
Expand All @@ -31,7 +31,6 @@ class cDiseqc : public cListObject {
char polarization;
int lof;
char *commands;
char *currentAction;
bool parsing;
uchar codes[MaxDiseqcCodes];
int numCodes;
Expand All @@ -41,7 +40,14 @@ class cDiseqc : public cListObject {
cDiseqc(void);
~cDiseqc();
bool Parse(const char *s);
eDiseqcActions Execute(bool Start = false);
eDiseqcActions Execute(char **CurrentAction);
// Parses the DiSEqC commands and returns the appropriate action code
// with every call. CurrentAction must be the address of a character pointer,
// which is initialized to NULL. This pointer is used internally while parsing
// the commands and shall not be modified once Execute() has been called with
// it. Call Execute() repeatedly (always providing the same CurrentAction pointer)
// until it returns daNone. After a successful execution of all commands
// *CurrentAction points to the value 0x00.
int Source(void) const { return source; }
int Slof(void) const { return slof; }
char Polarization(void) const { return polarization; }
Expand Down
Loading

0 comments on commit 2b15337

Please sign in to comment.