Kodi Community Forum

Full Version: [PVR] How do I submit patches for PVR Addons?
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
I have a few patches I need to do for VDR-VNSI to work with a Hauppauge HDPVR and pvrinput. Also ATSC/QAM256 needs a little tweaking as Comcast (the largest cable company in the US) uses some interesting (read non standard) settings.

The problem with the HDPVR is that the audio is passed through from the cable box, therefore is signaled as AC-3 from ATSC, (ie, type 0x80), but this is excluded by the plugin.

Code:
diff -ur vdr-plugin-vnsiserver.patched-newgit/demuxer.h vdr-plugin-vnsiserver/demuxer.h
--- vdr-plugin-vnsiserver.patched-newgit/demuxer.h      2011-01-24 19:49:31.000000000 -0600
+++ vdr-plugin-vnsiserver/demuxer.h     2011-01-24 18:28:30.000000000 -0600
@@ -31,7 +31,6 @@
#define PRIVATE_STREAM1   0xBD
#define PADDING_STREAM    0xBE
#define PRIVATE_STREAM2   0xBF
-#define PRIVATE_STREAM3   0xFD
#define AUDIO_STREAM_S    0xC0      /* 1100 0000 */
#define AUDIO_STREAM_E    0xDF      /* 1101 1111 */
#define VIDEO_STREAM_S    0xE0      /* 1110 0000 */
@@ -70,7 +69,7 @@

inline bool PesIsPS1Packet(const uchar *p)
{
-  return ((p)[3] == PRIVATE_STREAM1 || (p)[3] == PRIVATE_STREAM3 );
+  return ((p)[3] == PRIVATE_STREAM1);
}

inline bool PesIsPaddingPacket(const uchar *p)
diff -ur vdr-plugin-vnsiserver.patched-newgit/receiver.c vdr-plugin-vnsiserver/receiver.c
--- vdr-plugin-vnsiserver.patched-newgit/receiver.c     2011-01-24 20:15:24.000000000 -0600
+++ vdr-plugin-vnsiserver/receiver.c    2011-01-24 18:28:30.000000000 -0600
@@ -171,7 +171,6 @@
   {
     case 0x01: // ISO/IEC 11172 Video
     case 0x02: // ISO/IEC 13818-2 Video
-    case 0x80: // ATSC Video MPEG2 (DigiCypher?)
       LOGCONSOLE("cStreamdevPatFilter PMT scanner adding PID %d (%s)\n", stream.getPid(), psStreamTypes[stream.getStreamType()]);
       *type = stMPEG2VIDEO;
       return stream.getPid();
@@ -277,7 +276,7 @@
        * we check the registration format identifier to see if it
        * holds "AC-3"
        */
-      if (stream.getStreamType() >= 0x81)
+      if (stream.getStreamType() >= 0x80)
       {
         bool found = false;
         for (SI::Loop::Iterator it; (d = stream.streamDescriptors.getNext(it)); )

I also needed to increase the timeout from 2s to 10seconds in PVRChannel.cpp as the HDPVR takes too long to start displaying a picture.
Best bet is to clone the appropriate repository and send pull requests.
already responded in your other thread before I noticed this post. as jmarshall said, please send pull requests.