diff options
-rw-r--r-- | CONTRIBUTORS | 1 | ||||
-rw-r--r-- | HISTORY | 3 | ||||
-rw-r--r-- | ci.c | 16 |
3 files changed, 13 insertions, 7 deletions
diff --git a/CONTRIBUTORS b/CONTRIBUTORS index d51508a6..d7011f00 100644 --- a/CONTRIBUTORS +++ b/CONTRIBUTORS @@ -1269,6 +1269,7 @@ Reinhard Nissl <rnissl@gmx.de> for fixing a buffer overflow in cFont::Bidi() for avoiding an unecessary call to Recordings.ResetResume() for debugging a problem in handling the bitmap color depth for scaled subtitles + for making subtitle PIDs be decrypted Richard Robson <richard_robson@beeb.net> for reporting freezing replay if a timer starts while in Transfer Mode from the @@ -6607,7 +6607,7 @@ Video Disk Recorder Revision History - Avoiding an unecessary call to Recordings.ResetResume() (thanks to Reinhard Nissl). -2011-05-15: Version 1.7.19 +2011-05-21: Version 1.7.19 - Fixed cString's operator=(const char *String) in case the given string is the same as the existing one (thanks to Dirk Leber). @@ -6620,3 +6620,4 @@ Video Disk Recorder Revision History Makefile accordingly by changing "$^" to "`ls $^`". - The primary device is now only avoided for recording if it is an old SD full featured card. This is done through the new function cDevice::AvoidRecording(). +- Subtitle PIDs are now also decrypted (thanks to Reinhard Nissl). @@ -4,7 +4,7 @@ * See the main source file 'vdr.c' for copyright information and * how to reach the author. * - * $Id: ci.c 2.6 2010/01/02 10:39:50 kls Exp $ + * $Id: ci.c 2.7 2011/05/21 15:21:33 kls Exp $ */ #include "ci.h" @@ -1894,9 +1894,9 @@ void cCamSlot::SetPid(int Pid, bool Active) } // see ISO/IEC 13818-1 -#define STREAM_TYPE_VIDEO 0x02 -#define STREAM_TYPE_AUDIO 0x04 -#define STREAM_TYPE_DOLBY 0x06 +#define STREAM_TYPE_VIDEO 0x02 +#define STREAM_TYPE_AUDIO 0x04 +#define STREAM_TYPE_PRIVATE 0x06 void cCamSlot::AddChannel(const cChannel *Channel) { @@ -1910,7 +1910,9 @@ void cCamSlot::AddChannel(const cChannel *Channel) for (const int *Apid = Channel->Apids(); *Apid; Apid++) AddPid(Channel->Sid(), *Apid, STREAM_TYPE_AUDIO); for (const int *Dpid = Channel->Dpids(); *Dpid; Dpid++) - AddPid(Channel->Sid(), *Dpid, STREAM_TYPE_DOLBY); + AddPid(Channel->Sid(), *Dpid, STREAM_TYPE_PRIVATE); + for (const int *Spid = Channel->Spids(); *Spid; Spid++) + AddPid(Channel->Sid(), *Spid, STREAM_TYPE_PRIVATE); } } @@ -1931,7 +1933,9 @@ bool cCamSlot::CanDecrypt(const cChannel *Channel) for (const int *Apid = Channel->Apids(); *Apid; Apid++) CaPmt.AddPid(*Apid, STREAM_TYPE_AUDIO); for (const int *Dpid = Channel->Dpids(); *Dpid; Dpid++) - CaPmt.AddPid(*Dpid, STREAM_TYPE_DOLBY); + CaPmt.AddPid(*Dpid, STREAM_TYPE_PRIVATE); + for (const int *Spid = Channel->Spids(); *Spid; Spid++) + CaPmt.AddPid(*Spid, STREAM_TYPE_PRIVATE); cas->SendPMT(&CaPmt); cTimeMs Timeout(QUERY_REPLY_TIMEOUT); do { |