summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKlaus Schmidinger <vdr@tvdr.de>2003-12-23 10:34:51 +0100
committerKlaus Schmidinger <vdr@tvdr.de>2003-12-23 10:34:51 +0100
commit1d32f7c0597da0d773a8eb718a171ac6dacc73ad (patch)
treece7403f604dbc01eae283117d1d16a9bcc1cfbc0
parent5433caa4104cc33d6b8788058c1098cf9d47b04a (diff)
downloadvdr-1d32f7c0597da0d773a8eb718a171ac6dacc73ad.tar.gz
vdr-1d32f7c0597da0d773a8eb718a171ac6dacc73ad.tar.bz2
Added 'StreamType' setting to CAM communication
-rw-r--r--CONTRIBUTORS3
-rw-r--r--HISTORY4
-rw-r--r--ci.c6
-rw-r--r--ci.h4
-rw-r--r--dvbdevice.c10
5 files changed, 16 insertions, 11 deletions
diff --git a/CONTRIBUTORS b/CONTRIBUTORS
index 8066a4d2..66aae300 100644
--- a/CONTRIBUTORS
+++ b/CONTRIBUTORS
@@ -880,3 +880,6 @@ Alessio Sangalli <alesan@manoweb.com>
Pedro Miguel Sequeira de Justo Teixeira <pedro.miguel.teixeira@bigfoot.com>
for reporting a problem with crc32 in SI handling on 64bit systems
for reporting an alignment problem in CAM access on 64bit systems
+
+Antonino Sergi <voyaser@tiscalinet.it>
+ for adding 'StreamType' setting to CAM communication
diff --git a/HISTORY b/HISTORY
index af645997..43fa1b4d 100644
--- a/HISTORY
+++ b/HISTORY
@@ -2470,7 +2470,7 @@ Video Disk Recorder Revision History
- Final release of version 1.2.6.
-2003-12-22: Version 1.3.0
+2003-12-23: Version 1.3.0
- Changed thread handling to make it work with NPTL ("Native Posix Thread Library").
Thanks to Jon Burgess, Andreas Schultz, Werner Fink and Stefan Huelswitt.
@@ -2506,3 +2506,5 @@ Video Disk Recorder Revision History
Miguel Sequeira de Justo Teixeira for reporting this one).
- Fixed an alignment problem in CAM access on 64bit systems (thanks to Pedro
Miguel Sequeira de Justo Teixeira for reporting this one).
+- Added 'StreamType' setting to CAM communication, which is important for
+ Aston/SECA CAMs (thanks to Antonino Sergi).
diff --git a/ci.c b/ci.c
index 6ddd4768..d4477d55 100644
--- a/ci.c
+++ b/ci.c
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: ci.c 1.18 2003/12/22 15:52:31 kls Exp $
+ * $Id: ci.c 1.19 2003/12/23 10:19:56 kls Exp $
*/
/* XXX TODO
@@ -1278,10 +1278,10 @@ cCiCaPmt::cCiCaPmt(int ProgramNumber)
capmt[length++] = 0x00; // program_info_length L
}
-void cCiCaPmt::AddPid(int Pid)
+void cCiCaPmt::AddPid(int Pid, uint8_t StreamType)
{
//XXX buffer overflow check???
- capmt[length++] = 0x00; //XXX stream_type (apparently doesn't matter)
+ capmt[length++] = StreamType;
capmt[length++] = (Pid >> 8) & 0xFF;
capmt[length++] = Pid & 0xFF;
esInfoLengthPos = length;
diff --git a/ci.h b/ci.h
index 6b81a18c..e83deea0 100644
--- a/ci.h
+++ b/ci.h
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: ci.h 1.9 2003/10/26 12:22:09 kls Exp $
+ * $Id: ci.h 1.10 2003/12/23 10:20:59 kls Exp $
*/
#ifndef __CI_H
@@ -68,7 +68,7 @@ private:
uint8_t capmt[2048]; ///< XXX is there a specified maximum?
public:
cCiCaPmt(int ProgramNumber);
- void AddPid(int Pid);
+ void AddPid(int Pid, uint8_t StreamType);
void AddCaDescriptor(int Length, uint8_t *Data);
};
diff --git a/dvbdevice.c b/dvbdevice.c
index e456a916..25c5fd96 100644
--- a/dvbdevice.c
+++ b/dvbdevice.c
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: dvbdevice.c 1.73 2003/12/22 10:52:24 kls Exp $
+ * $Id: dvbdevice.c 1.74 2003/12/23 10:23:16 kls Exp $
*/
#include "dvbdevice.h"
@@ -279,13 +279,13 @@ void cDvbTuner::Action(void)
cCiCaPmt CaPmt(channel.Sid());
CaPmt.AddCaDescriptor(length, buffer);
if (channel.Vpid())
- CaPmt.AddPid(channel.Vpid());
+ CaPmt.AddPid(channel.Vpid(), 2);
if (channel.Apid1())
- CaPmt.AddPid(channel.Apid1());
+ CaPmt.AddPid(channel.Apid1(), 4);
if (channel.Apid2())
- CaPmt.AddPid(channel.Apid2());
+ CaPmt.AddPid(channel.Apid2(), 4);
if (channel.Dpid1())
- CaPmt.AddPid(channel.Dpid1());
+ CaPmt.AddPid(channel.Dpid1(), 0);
if (ciHandler->SetCaPmt(CaPmt, Slot)) {
tunerStatus = tsCam;
startTime = 0;