Commit 771986b8 authored by Klaus Schmidinger's avatar Klaus Schmidinger

Version 1.7.0

- Re-implemented handling of DVB-S2, which first appeared in version 1.5.14, but was
  revoked in version 1.5.15 in favor of making a stable version 1.6.0. VDR now
  requires the "multiproto" DVB driver, e.g. from http://jusst.de/hg/multiproto.
  Note that the channels.conf file now supports additional parameters, so you may
  want to make sure you have a backup of this file in case you need to go back to
  the previous version of VDR!
- Fixed displaying transponder data when it is modified (thanks to Reinhard Nissl).
- Fixed handling the counter in detection of pre 1.3.19 PS data (thanks to Reinhard
  Nissl).
- Improved logging system time changes to avoid problems on slow systems under
  heavy load (suggested by Helmut Auer).
- Now setting the thread name, so that it can be seen in 'top -H' (thanks to Rolf
  Ahrenberg).
- Fixed initializing the timer's flags in the cTimer copy constructor (thanks to
  Andreas Mair).
- Fixed setting the OSD level in the 'osddemo' example (thanks to Wolfgang Rohdewald).
- Increased the time between checking the CAM status to 500ms to avoid problems
  with some CAMs (reported by Arthur Konovalov).
parent fa56503b
......@@ -595,6 +595,8 @@ Helmut Auer <vdr@helmutauer.de>
not two hex digits after the '#'
for suggesting to suppress the automatic shutdown if the remote control is
currently disabled
for suggesting to improve logging system time changes to avoid problems on slow
systems under heavy load
Jeremy Hall <jhall@UU.NET>
for fixing an incomplete initialization of the filter parameters in eit.c
......@@ -958,6 +960,7 @@ Andreas Mair <andreas@vdr-developer.org>
for making the SVDRP command LSTC list the channels with group separators if the
option ':groups' is given
for fixing handling 3 and 4 byte UTF-8 symbols in Utf8CharGet()
for fixing initializing the timer's flags in the cTimer copy constructor
Olivier Jacques <jacquesolivier@hotmail.com>)
for translating OSD texts to the French language
......@@ -1050,6 +1053,7 @@ Rolf Ahrenberg <rahrenbe@cc.hut.fi>
language
for fixing displaying the free disk space when entering the recordings menu where
the last replayed recording was in a subdirectory, and pressing Back
for setting the thread name, so that it can be seen in 'top -H'
Ralf Klueber <ralf.klueber@vodafone.com>
for reporting a bug in cutting a recording if there is only a single editing mark
......@@ -1174,6 +1178,8 @@ Reinhard Nissl <rnissl@gmx.de>
for reporting an invalid access in the section handler when ending VDR
for pointing out that cDevice::Transferring() doesn't return the right value in the
early stage of channel switching
for fixing displaying transponder data when it is modified
for fixing handling the counter in detection of pre 1.3.19 PS data
Richard Robson <richard_robson@beeb.net>
for reporting freezing replay if a timer starts while in Transfer Mode from the
......@@ -1506,6 +1512,7 @@ Arthur Konovalov <kasjas@hot.ee>
for translating OSD texts to the Estonian language
for fixing a missing ',' in the Greek OSD texts
for fixing a missing ',' in the Swedish OSD texts
for reporting problems with CAMs when checking the CAM status too frequently
Milos Kapoun <m.kapoun@cra.cz>
for suggesting to skip code table info in SI data
......@@ -1702,6 +1709,7 @@ Wolfgang Rohdewald <wolfgang@rohdewald.de>
Channel+ or Channel- is pressed
for pointing out a possible problem with asprintf() if the return value is not
checked
for fixing setting the OSD level in the 'osddemo' example
Chad Flynt <hoochster@sofnet.com>
for suggestions and experiments regarding the buffer reserve in cTransfer
......
......@@ -5729,3 +5729,35 @@ Video Disk Recorder Revision History
- Added Chinese language texts (thanks to Nan Feng).
- Updated the Portuguese language texts.
- Added a note about VDR_CHARSET_OVERRIDE to the INSTALL file.
2008-04-13: Version 1.7.0
- Re-implemented handling of DVB-S2, which first appeared in version 1.5.14, but was
revoked in version 1.5.15 in favor of making a stable version 1.6.0. VDR now
requires the "multiproto" DVB driver, e.g. from http://jusst.de/hg/multiproto.
Note that the channels.conf file now supports additional parameters, so you may
want to make sure you have a backup of this file in case you need to go back to
the previous version of VDR!
- Fixed displaying transponder data when it is modified (thanks to Reinhard Nissl).
- Fixed handling the counter in detection of pre 1.3.19 PS data (thanks to Reinhard
Nissl).
- Improved logging system time changes to avoid problems on slow systems under
heavy load (suggested by Helmut Auer).
- Now setting the thread name, so that it can be seen in 'top -H' (thanks to Rolf
Ahrenberg).
- Fixed initializing the timer's flags in the cTimer copy constructor (thanks to
Andreas Mair).
- Fixed setting the OSD level in the 'osddemo' example (thanks to Wolfgang Rohdewald).
- Increased the time between checking the CAM status to 500ms to avoid problems
with some CAMs (reported by Arthur Konovalov).
2008-04-13: Version 1.6.0-1
- Fixed handling the counter in detection of pre 1.3.19 PS data (thanks to Reinhard
Nissl).
- Improved logging system time changes to avoid problems on slow systems under
heavy load (suggested by Helmut Auer).
- Fixed initializing the timer's flags in the cTimer copy constructor (thanks to
Andreas Mair).
- Increased the time between checking the CAM status to 500ms to avoid problems
with some CAMs (reported by Arthur Konovalov).
......@@ -6,7 +6,7 @@
# See the main source file 'vdr.c' for copyright information and
# how to reach the author.
#
# $Id: Make.config.template 1.16 2008/01/13 12:54:09 kls Exp $
# $Id: Make.config.template 2.0 2008/01/13 12:54:09 kls Exp $
### The C compiler and options:
......
......@@ -4,7 +4,7 @@
# See the main source file 'vdr.c' for copyright information and
# how to reach the author.
#
# $Id: Makefile 1.113 2008/02/29 21:43:03 kls Exp $
# $Id: Makefile 2.0 2008/02/29 21:43:03 kls Exp $
.DELETE_ON_ERROR:
......
#
# Makefile for a Video Disk Recorder plugin
#
# $Id: Makefile 1.22 2008/01/13 12:59:58 kls Exp $
# $Id: Makefile 2.0 2008/01/13 12:59:58 kls Exp $
# The official name of this plugin.
# This name will be used in the '-P...' option of VDR to load the plugin.
......
......@@ -3,7 +3,7 @@
*
* See the README file for copyright information and how to reach the author.
*
* $Id: hello.c 1.15 2008/03/18 17:13:25 kls Exp $
* $Id: hello.c 2.0 2008/03/18 17:13:25 kls Exp $
*/
#include <getopt.h>
......
......@@ -17,3 +17,7 @@ VDR Plugin 'osddemo' Revision History
- Moved the "all" target in the Makefile before the "Implicit rules",
so that a plain "make" will compile everything.
2008-04-13: Version 0.1.3
- Fixed setting the OSD level (thanks to Wolfgang Rohdewald).
#
# Makefile for a Video Disk Recorder plugin
#
# $Id: Makefile 1.11 2008/01/13 13:00:01 kls Exp $
# $Id: Makefile 2.0 2008/01/13 13:00:01 kls Exp $
# The official name of this plugin.
# This name will be used in the '-P...' option of VDR to load the plugin.
......
......@@ -3,12 +3,12 @@
*
* See the README file for copyright information and how to reach the author.
*
* $Id: osddemo.c 1.4 2007/08/15 13:17:55 kls Exp $
* $Id: osddemo.c 2.1 2008/04/13 12:59:57 kls Exp $
*/
#include <vdr/plugin.h>
static const char *VERSION = "0.1.2";
static const char *VERSION = "0.1.3";
static const char *DESCRIPTION = "Demo of arbitrary OSD setup";
static const char *MAINMENUENTRY = "Osd Demo";
......@@ -41,7 +41,7 @@ cLineGame::~cLineGame()
void cLineGame::Show(void)
{
osd = cOsdProvider::NewOsd(100, 50);
osd = cOsdProvider::NewOsd(100, 50, 50);
if (osd) {
tArea Area = { 0, 0, 99, 199, 4 };
osd->SetAreas(&Area, 1);
......
#
# Makefile for a Video Disk Recorder plugin
#
# $Id: Makefile 1.2 2008/01/13 13:00:04 kls Exp $
# $Id: Makefile 2.0 2008/01/13 13:00:04 kls Exp $
# The official name of this plugin.
# This name will be used in the '-P...' option of VDR to load the plugin.
......
......@@ -3,7 +3,7 @@
*
* See the README file for copyright information and how to reach the author.
*
* $Id: entry.c 1.3 2008/02/17 13:42:34 kls Exp $
* $Id: entry.c 2.0 2008/02/17 13:42:34 kls Exp $
*/
#include "entry.h"
......
......@@ -3,7 +3,7 @@
*
* See the README file for copyright information and how to reach the author.
*
* $Id: entry.h 1.1 2008/01/06 12:30:50 kls Exp $
* $Id: entry.h 2.0 2008/01/06 12:30:50 kls Exp $
*/
#ifndef _ENTRY_H
......
......@@ -3,7 +3,7 @@
*
* See the README file for copyright information and how to reach the author.
*
* $Id: menu.c 1.1 2008/01/13 11:35:18 kls Exp $
* $Id: menu.c 2.0 2008/01/13 11:35:18 kls Exp $
*/
#include "menu.h"
......
......@@ -3,7 +3,7 @@
*
* See the README file for copyright information and how to reach the author.
*
* $Id: menu.h 1.1 2008/01/12 11:22:52 kls Exp $
* $Id: menu.h 2.0 2008/01/12 11:22:52 kls Exp $
*/
#ifndef _MENU_H
......
......@@ -7,7 +7,7 @@
#
# See the README file for copyright information and how to reach the author.
#
# $Id: pic2mpg 1.4 2008/02/29 14:34:22 kls Exp $
# $Id: pic2mpg 2.0 2008/02/29 14:34:22 kls Exp $
## TODO implement HDTV (1920 x 1080)
......
......@@ -3,7 +3,7 @@
*
* See the README file for copyright information and how to reach the author.
*
* $Id: pictures.c 1.7 2008/03/14 12:57:19 kls Exp $
* $Id: pictures.c 2.0 2008/03/14 12:57:19 kls Exp $
*/
#include <getopt.h>
......
......@@ -3,7 +3,7 @@
*
* See the README file for copyright information and how to reach the author.
*
* $Id: player.c 1.3 2008/02/09 12:13:10 kls Exp $
* $Id: player.c 2.0 2008/02/09 12:13:10 kls Exp $
*/
#include "player.h"
......
......@@ -3,7 +3,7 @@
*
* See the README file for copyright information and how to reach the author.
*
* $Id: player.h 1.1 2008/01/12 16:21:57 kls Exp $
* $Id: player.h 2.0 2008/01/12 16:21:57 kls Exp $
*/
#ifndef _PLAYER_H
......
#
# Makefile for a Video Disk Recorder plugin
#
# $Id: Makefile 1.10 2008/01/13 13:00:07 kls Exp $
# $Id: Makefile 2.0 2008/01/13 13:00:07 kls Exp $
# The official name of this plugin.
# This name will be used in the '-P...' option of VDR to load the plugin.
......
......@@ -3,7 +3,7 @@
*
* See the README file for copyright information and how to reach the author.
*
* $Id: svccli.c 1.2 2007/08/15 13:18:08 kls Exp $
* $Id: svccli.c 2.0 2007/08/15 13:18:08 kls Exp $
*/
#include <stdlib.h>
......
......@@ -3,7 +3,7 @@
*
* See the README file for copyright information and how to reach the author.
*
* $Id: svcsvr.c 1.2 2007/08/15 13:18:59 kls Exp $
* $Id: svcsvr.c 2.0 2007/08/15 13:18:59 kls Exp $
*/
#include <stdlib.h>
......
#
# Makefile for a Video Disk Recorder plugin
#
# $Id: Makefile 1.15 2008/01/19 11:40:33 kls Exp $
# $Id: Makefile 2.0 2008/01/19 11:40:33 kls Exp $
# The official name of this plugin.
# This name will be used in the '-P...' option of VDR to load the plugin.
......
File mode changed from 100755 to 100644
......@@ -3,7 +3,7 @@
*
* See the README file for copyright information and how to reach the author.
*
* $Id: skincurses.c 1.23 2008/03/14 12:57:14 kls Exp $
* $Id: skincurses.c 2.0 2008/03/14 12:57:14 kls Exp $
*/
#include <ncurses.h>
......
#
# Makefile for a Video Disk Recorder plugin
#
# $Id: Makefile 1.11 2008/01/13 13:00:16 kls Exp $
# $Id: Makefile 2.0 2008/01/13 13:00:16 kls Exp $
# The official name of this plugin.
# This name will be used in the '-P...' option of VDR to load the plugin.
......
......@@ -8,7 +8,7 @@
#
# See the README file for copyright information and how to reach the author.
#
# $Id: getskyepg.pl 1.7 2008/03/22 10:17:42 kls Exp $
# $Id: getskyepg.pl 2.0 2008/03/22 10:17:42 kls Exp $
use Getopt::Std;
use Time::Local;
......
......@@ -3,7 +3,7 @@
*
* See the README file for copyright information and how to reach the author.
*
* $Id: sky.c 1.15 2008/03/22 10:19:32 kls Exp $
* $Id: sky.c 2.0 2008/03/22 10:19:32 kls Exp $
*/
#include <sys/socket.h>
......
#
# Makefile for a Video Disk Recorder plugin
#
# $Id: Makefile 1.15 2008/01/13 13:00:18 kls Exp $
# $Id: Makefile 2.0 2008/01/13 13:00:18 kls Exp $
# The official name of this plugin.
# This name will be used in the '-P...' option of VDR to load the plugin.
......
......@@ -3,7 +3,7 @@
*
* See the README file for copyright information and how to reach the author.
*
* $Id: status.c 1.10 2008/02/16 15:41:05 kls Exp $
* $Id: status.c 2.0 2008/02/16 15:41:05 kls Exp $
*/
#include <vdr/plugin.h>
......
#
# Makefile for a Video Disk Recorder plugin
#
# $Id: Makefile 1.9 2008/01/13 13:00:20 kls Exp $
# $Id: Makefile 2.0 2008/01/13 13:00:20 kls Exp $
# The official name of this plugin.
# This name will be used in the '-P...' option of VDR to load the plugin.
......
......@@ -3,7 +3,7 @@
*
* See the README file for copyright information and how to reach the author.
*
* $Id: svdrpdemo.c 1.3 2007/08/15 13:19:57 kls Exp $
* $Id: svdrpdemo.c 2.0 2007/08/15 13:19:57 kls Exp $
*/
#include <vdr/plugin.h>
......
......@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
* $Id: audio.c 1.5 2006/05/28 15:03:24 kls Exp $
* $Id: audio.c 2.0 2006/05/28 15:03:24 kls Exp $
*/
#include "audio.h"
......
......@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
* $Id: audio.h 1.3 2005/02/12 12:20:19 kls Exp $
* $Id: audio.h 2.0 2005/02/12 12:20:19 kls Exp $
*/
#ifndef __AUDIO_H
......
This diff is collapsed.
......@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
* $Id: channels.h 1.47 2008/02/08 13:48:31 kls Exp $
* $Id: channels.h 2.2 2008/04/12 13:46:50 kls Exp $
*/
#ifndef __CHANNELS_H
......@@ -50,10 +50,10 @@
struct tChannelParameterMap {
int userValue;
int driverValue;
const char *userString;
};
//XXX into cChannel???
int MapToUser(int Value, const tChannelParameterMap *Map);
int MapToUser(int Value, const tChannelParameterMap *Map, const char **String = NULL);
int MapToDriver(int Value, const tChannelParameterMap *Map);
int UserIndex(int Value, const tChannelParameterMap *Map);
int DriverIndex(int Value, const tChannelParameterMap *Map);
......@@ -62,9 +62,13 @@ extern const tChannelParameterMap InversionValues[];
extern const tChannelParameterMap BandwidthValues[];
extern const tChannelParameterMap CoderateValues[];
extern const tChannelParameterMap ModulationValues[];
extern const tChannelParameterMap SystemValues[];
extern const tChannelParameterMap TransmissionValues[];
extern const tChannelParameterMap GuardValues[];
extern const tChannelParameterMap HierarchyValues[];
extern const tChannelParameterMap AlphaValues[];
extern const tChannelParameterMap PriorityValues[];
extern const tChannelParameterMap RollOffValues[];
struct tChannelID {
private:
......@@ -140,14 +144,19 @@ private:
int coderateH;
int coderateL;
int modulation;
int system;
int transmission;
int guard;
int hierarchy;
int alpha;
int priority;
int rollOff;
int __EndData__;
int modification;
mutable const cSchedule *schedule;
cLinkChannels *linkChannels;
cChannel *refChannel;
cString TransponderDataToString(void) const;
cString ParametersToString(void) const;
bool StringToParameters(const char *s);
public:
......@@ -194,9 +203,13 @@ public:
int CoderateH(void) const { return coderateH; }
int CoderateL(void) const { return coderateL; }
int Modulation(void) const { return modulation; }
int System(void) const { return system; }
int Transmission(void) const { return transmission; }
int Guard(void) const { return guard; }
int Hierarchy(void) const { return hierarchy; }
int Alpha(void) const { return alpha; }
int Priority(void) const { return priority; }
int RollOff(void) const { return rollOff; }
const cLinkChannels* LinkChannels(void) const { return linkChannels; }
const cChannel *RefChannel(void) const { return refChannel; }
bool IsCable(void) const { return cSource::IsCable(source); }
......@@ -206,9 +219,9 @@ public:
bool HasTimer(void) const;
int Modification(int Mask = CHANNELMOD_ALL);
void CopyTransponderData(const cChannel *Channel);
bool SetSatTransponderData(int Source, int Frequency, char Polarization, int Srate, int CoderateH);
bool SetSatTransponderData(int Source, int Frequency, char Polarization, int Srate, int CoderateH, int Modulation, int System, int RollOff);
bool SetCableTransponderData(int Source, int Frequency, int Modulation, int Srate, int CoderateH);
bool SetTerrTransponderData(int Source, int Frequency, int Bandwidth, int Modulation, int Hierarchy, int CodeRateH, int CodeRateL, int Guard, int Transmission);
bool SetTerrTransponderData(int Source, int Frequency, int Bandwidth, int Modulation, int Hierarchy, int CodeRateH, int CodeRateL, int Guard, int Transmission, int Alpha, int Priority);
void SetId(int Nid, int Tid, int Sid, int Rid = 0);
void SetName(const char *Name, const char *ShortName, const char *Provider);
void SetPortalName(const char *PortalName);
......
......@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
* $Id: ci.c 1.48 2007/04/30 13:02:49 kls Exp $
* $Id: ci.c 2.1 2008/04/13 13:28:52 kls Exp $
*/
#include "ci.h"
......@@ -1525,7 +1525,7 @@ void cCiAdapter::Action(void)
cCamSlots CamSlots;
#define MODULE_CHECK_INTERVAL 100 // ms
#define MODULE_CHECK_INTERVAL 500 // ms
#define MODULE_RESET_TIMEOUT 2 // s
cCamSlot::cCamSlot(cCiAdapter *CiAdapter)
......
......@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
* $Id: ci.h 1.23 2007/01/03 12:49:10 kls Exp $
* $Id: ci.h 2.0 2007/01/03 12:49:10 kls Exp $
*/
#ifndef __CI_H
......
......@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
* $Id: config.c 1.161 2008/02/17 13:39:00 kls Exp $
* $Id: config.c 2.0 2008/02/17 13:39:00 kls Exp $
*/
#include "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.310 2008/03/23 10:26:10 kls Exp $
* $Id: config.h 2.1 2008/04/12 13:02:10 kls Exp $
*/
#ifndef __CONFIG_H
......@@ -22,13 +22,13 @@
// VDR's own version number:
#define VDRVERSION "1.6.0"
#define VDRVERSNUM 10600 // Version * 10000 + Major * 100 + Minor
#define VDRVERSION "1.7.0"
#define VDRVERSNUM 10700 // Version * 10000 + Major * 100 + Minor
// The plugin API's version number:
#define APIVERSION "1.6.0"
#define APIVERSNUM 10600 // Version * 10000 + Major * 100 + Minor
#define APIVERSION "1.7.0"
#define APIVERSNUM 10700 // 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,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
* $Id: cutter.c 1.18 2008/01/13 12:22:21 kls Exp $
* $Id: cutter.c 2.0 2008/01/13 12:22:21 kls Exp $
*/
#include "cutter.h"
......
......@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
* $Id: cutter.h 1.1 2002/06/22 10:03:15 kls Exp $
* $Id: cutter.h 2.0 2002/06/22 10:03:15 kls Exp $
*/
#ifndef __CUTTER_H
......
......@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
* $Id: device.c 1.157 2008/03/09 10:03:34 kls Exp $
* $Id: device.c 2.2 2008/04/12 14:12:14 kls Exp $
*/
#include "device.h"
......@@ -355,6 +355,21 @@ cDevice *cDevice::GetDevice(int Index)
return (0 <= Index && Index < numDevices) ? device[Index] : NULL;
}
static int GetClippedNumProvidedSystems(int AvailableBits, cDevice *Device)
{
int MaxNumProvidedSystems = 1 << AvailableBits;
int NumProvidedSystems = Device->NumProvidedSystems();
if (NumProvidedSystems > MaxNumProvidedSystems) {
esyslog("ERROR: device %d supports %d modulation systems but cDevice::GetDevice() currently only supports %d delivery systems which should be fixed", Device->CardIndex() + 1, NumProvidedSystems, MaxNumProvidedSystems);
NumProvidedSystems = MaxNumProvidedSystems;
}
else if (NumProvidedSystems <= 0) {
esyslog("ERROR: device %d reported an invalid number (%d) of supported delivery systems - assuming 1", Device->CardIndex() + 1, NumProvidedSystems);
NumProvidedSystems = 1;
}
return NumProvidedSystems;
}
cDevice *cDevice::GetDevice(const cChannel *Channel, int Priority, bool LiveView)
{
cDevice *AvoidDevice = avoidDevice;
......@@ -408,6 +423,7 @@ cDevice *cDevice::GetDevice(const cChannel *Channel, int Priority, bool LiveView
imp <<= 1; imp |= LiveView ? !device[i]->IsPrimaryDevice() || ndr : 0; // prefer the primary device for live viewing if we don't need to detach existing receivers
imp <<= 1; imp |= !device[i]->Receiving() && (device[i] != cTransferControl::ReceiverDevice() || device[i]->IsPrimaryDevice()) || ndr; // use receiving devices if we don't need to detach existing receivers, but avoid primary device in local transfer mode
imp <<= 1; imp |= device[i]->Receiving(); // avoid devices that are receiving
imp <<= 2; imp |= GetClippedNumProvidedSystems(2, device[i]) - 1; // avoid cards which support multiple delivery systems
imp <<= 1; imp |= device[i] == cTransferControl::ReceiverDevice(); // avoid the Transfer Mode receiver device
imp <<= 8; imp |= min(max(device[i]->Priority() + MAXPRIORITY, 0), 0xFF); // use the device with the lowest priority (+MAXPRIORITY to assure that values -99..99 can be used)
imp <<= 8; imp |= min(max((NumUsableSlots ? SlotPriority[j] : 0) + MAXPRIORITY, 0), 0xFF); // use the CAM slot with the lowest priority (+MAXPRIORITY to assure that values -99..99 can be used)
......@@ -712,6 +728,11 @@ bool cDevice::ProvidesChannel(const cChannel *Channel, int Priority, bool *Needs
return false;
}
int cDevice::NumProvidedSystems(void) const
{
return 0;
}
bool cDevice::IsTunedToTransponder(const cChannel *Channel)
{
return false;
......@@ -1273,7 +1294,7 @@ int cDevice::PlayPesPacket(const uchar *Data, int Length, bool VideoOnly)
uchar SubStreamIndex = SubStreamId & 0x1F;
// Compatibility mode for old VDR recordings, where 0xBD was only AC3:
pre_1_3_19_PrivateStreamDeteced:
pre_1_3_19_PrivateStreamDetected:
if (pre_1_3_19_PrivateStream > MIN_PRE_1_3_19_PRIVATESTREAM) {
SubStreamId = c;
SubStreamType = 0x80;
......@@ -1314,7 +1335,8 @@ pre_1_3_19_PrivateStreamDeteced:
if (pre_1_3_19_PrivateStream > MIN_PRE_1_3_19_PRIVATESTREAM) {
dsyslog("switching to pre 1.3.19 Dolby Digital compatibility mode - substream id = %02X", SubStreamId);
ClrAvailableTracks();
goto pre_1_3_19_PrivateStreamDeteced;
pre_1_3_19_PrivateStream = MIN_PRE_1_3_19_PRIVATESTREAM + 1;
goto pre_1_3_19_PrivateStreamDetected;
}
}
}
......
......@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
* $Id: device.h 1.91 2008/02/23 13:13:04 kls Exp $
* $Id: device.h 2.1 2008/04/12 11:11:23 kls Exp $
*/
#ifndef __DEVICE_H
......@@ -228,6 +228,12 @@ public:
///< function itself actually returns true.
///< The default implementation always returns false, so a derived cDevice
///< class that can provide channels must implement this function.
virtual int NumProvidedSystems(void) const;
///< Returns the number of individual "delivery systems" this device provides.
///< The default implementation returns 0, so any derived class that can
///< actually provide channels must implement this function.
///< The result of this function is used when selecting a device, in order
///< to avoid devices that provide more than one system.
virtual bool IsTunedToTransponder(const cChannel *Channel);
///< Returns true if this device is currently tuned to the given Channel's
///< transponder.
......
......@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
* $Id: diseqc.c 1.6 2008/02/10 14:09:27 kls Exp $
* $Id: diseqc.c 2.0 2008/02/10 14:09:27 kls Exp $
*/
#include "diseqc.h"
......
......@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
* $Id: diseqc.h 1.2 2002/12/07 13:54:02 kls Exp $
* $Id: diseqc.h 2.0 2002/12/07 13:54:02 kls Exp $
*/
#ifndef __DISEQC_H
......
......@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
* $Id: dvbci.c 1.1 2007/01/04 12:49:10 kls Exp $
* $Id: dvbci.c 2.0 2007/01/04 12:49:10 kls Exp $
*/
#include "dvbci.h"
......
......@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
* $Id: dvbci.h 1.1 2006/11/26 11:19:42 kls Exp $
* $Id: dvbci.h 2.0 2006/11/26 11:19:42 kls Exp $
*/
#ifndef __DVBCI_H
......
This diff is collapsed.
......@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
* $Id: dvbdevice.h 1.47 2008/02/08 13:48:31 kls Exp $
* $Id: dvbdevice.h 2.1 2008/04/12 11:20:48 kls Exp $
*/
#ifndef __DVBDEVICE_H
......@@ -15,8 +15,8 @@
#include "device.h"
#include "dvbspu.h"