freebsd-ports/multimedia/vdr/files/vdr-1.7.27-pat.diff
Juergen Lock 21694da2c5 - Update multimedia/vdr and multimedia/vdr-plugins to 1.7.27 .
- Update multimedia/vdr-plugin-epgsearch to 1.0.1s20120322 git snapshot.
- Update multimedia/vdr-plugin-femon to 1.7.15 .
- Update multimedia/vdr-plugin-iptv to 0.5.0 .
- Update multimedia/vdr-plugin-osdteletext to 0.9.2 .
- Update multimedia/vdr-plugin-streamdev to 0.5.1p20120311 git snapthot.
- Update multimedia/vdr-plugin-xineliboutput to 1.0.90s20111129.1002
  cvs snapshot.
- Bump PORTREVISION for all other plugins and add vdr 1.7.27
  compatibility/bugfix patches where necessary.
2012-04-21 14:10:58 +00:00

44 lines
2.4 KiB
Diff

--- pat.c 2012/03/02 10:56:45 2.17
+++ pat.c 2012/04/09 11:49:39 2.18
@@ -456,11 +456,28 @@
}
}
break;
- case 0x80: // STREAMTYPE_USER_PRIVATE - DigiCipher II VIDEO (ANSI/SCTE 57)
- Vpid = esPid;
- Ppid = pmt.getPCRPid();
- Vtype = 0x02; // compression based upon MPEG-2
- ProcessCaDescriptors = true;
+ // see http://www.smpte-ra.org/mpegreg/mpegreg.html for the codes used below
+ case 0x80: { // STREAMTYPE_USER_PRIVATE - DigiCipher II VIDEO (ANSI/SCTE 57)
+ SI::Descriptor *d;
+ for (SI::Loop::Iterator it; (d = stream.streamDescriptors.getNext(it)); ) {
+ switch (d->getDescriptorTag()) {
+ case SI::RegistrationDescriptorTag: {
+ SI::RegistrationDescriptor *rd = (SI::RegistrationDescriptor *)d;
+ switch (rd->getFormatIdentifier()) {
+ case 0x44434949: // 'DCII' aka. DigiCipher II
+ Vpid = esPid;
+ Ppid = pmt.getPCRPid();
+ Vtype = 0x02; // compression based upon MPEG-2
+ ProcessCaDescriptors = true;
+ break;
+ default: ;
+ }
+ }
+ break;
+ default: ;
+ }
+ }
+ }
break;
case 0x81: // STREAMTYPE_USER_PRIVATE - ATSC A/53 AUDIO (ANSI/SCTE 57)
{
@@ -495,7 +512,6 @@
switch (d->getDescriptorTag()) {
case SI::RegistrationDescriptorTag: {
SI::RegistrationDescriptor *rd = (SI::RegistrationDescriptor *)d;
- // http://www.smpte-ra.org/mpegreg/mpegreg.html
switch (rd->getFormatIdentifier()) {
case 0x41432D33: // 'AC-3'
IsAc3 = true;