Version 1.1.28

- Using masks in EIT filtering to reduce the number of filters (thanks to Andreas
  Schultz).
- Fixed handling Ca descriptors (thanks to Stefan Huelswitt).
- Now only those Ca descriptors are sent to a CAM that are actually understood
  by that CAM.
- Re-enabled CAM communication during replay and on non-Ca channels. This requires
  a DVB driver with firmware version 2613 or later.
- It is now possible to do simultaneous recording and replay with a single DVB
  card, even with encrypted channels. This requires the use of the Link Layer
  firmware, version 2613 or higher; the -icam firmware is still limited to live
  encrypted channels only. Finally we have time shift for encrypted channels on
  single card systems!
- Enhanced detection of pending user I/O from CAMs to avoid sluggish reaction
  to remote control keypresses.
- Implemented "pause live video". You can now press "Menu/Yellow" or "Pause" on
  your remote control while watching live video to start an instant recording
  of the current programme and immediately start replaying that recording.
This commit is contained in:
Klaus Schmidinger
2003-04-21 18:00:00 +02:00
parent 9f91980146
commit 21a52ccb6d
15 changed files with 240 additions and 138 deletions

11
ci.h
View File

@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
* $Id: ci.h 1.4 2003/03/23 15:18:40 kls Exp $
* $Id: ci.h 1.7 2003/04/20 09:21:23 kls Exp $
*/
#ifndef __CI_H
@@ -80,7 +80,8 @@ class cCiHandler {
private:
cMutex mutex;
int numSlots;
bool enabled;
bool newCaSupport;
bool hasUserIO;
cCiSession *sessions[MAX_CI_SESSION];
cCiTransportLayer *tpl;
cCiTransportConnection *tc;
@@ -96,12 +97,14 @@ private:
public:
~cCiHandler();
static cCiHandler *CreateCiHandler(const char *FileName);
void SetEnabled(bool Enabled) { enabled = Enabled; }
int NumSlots(void) { return numSlots; }
bool Process(void);
bool HasUserIO(void) { return hasUserIO; }
bool EnterMenu(int Slot);
cCiMenu *GetMenu(void);
cCiEnquiry *GetEnquiry(void);
bool SetCaPmt(cCiCaPmt &CaPmt);
const unsigned short *GetCaSystemIds(int Slot);
bool SetCaPmt(cCiCaPmt &CaPmt, int Slot);
bool Reset(int Slot);
};