VDR 1.7.0 & S2API - Channels not Available

Message ID 200902041518.39678.ajurik@quick.cz
State New
Headers

Commit Message

Ales Jurik Feb. 4, 2009, 2:18 p.m. UTC
  On Wednesday 04 of February 2009, Morfsta wrote:
> On Wed, Feb 4, 2009 at 10:58 AM, Klaus Schmidinger
>
> <Klaus.Schmidinger@cadsoft.de> wrote:
> > Well, even using *any* version 1.7.x in a productive environment
> > is a risk ;-)
>
> [SNIP]
>
> > S2API was necessary for HDTV channels, and recording HDTV channels
> > only makes sense in TS. The PES recording of HDTV broadcasts was never
> > officially supported by VDR.
>
> The other problem is that I don't think anyone has got VDR 1.7.4
> working with the eHD yet, which is my output device... :-( So it seems
> everywhere I look at the moment I am stuck. :-(
>

Here are patches for eHD and vdr-1.7.4. I've tested it only for a little time 
as I didn't have enough time (now I revert back to vdr-1.7.0 with 
multiproto).

Included are two patches - first is for reelbox plugin. In file 
ReelBoxDevice.c patch solves the audio problem (vdr is sending audio with 
zero trackid and reelbox plugin cancel such streams). In setupmenu.c is 
solved the problem with saving config and in VideoPlayerPipHd.c the include 
solves for me compile problem in amd64 linux.

In the patch for vdr in part of device.c is patch from Klaus for subtitles and 
rest is very quick and dirty patch for osd to compile with reelbox plugin. It 
mostly revert the vdr osd to 1.7.0 version of files, but it seems to be 
working at minimum with default STTNG skin, other skins are not tested.

Enjoy,

BR,

Ales
  

Patch

diff -ru reelbox-3.10388.orig/ReelBoxDevice.c reelbox-3.10388/ReelBoxDevice.c
--- reelbox-3.10388.orig/ReelBoxDevice.c	2009-01-19 13:22:30.000000000 +0100
+++ reelbox-3.10388/ReelBoxDevice.c	2009-02-01 21:17:12.647764560 +0100
@@ -568,10 +568,10 @@ 
         CHECK_CONCURRENCY;
 
         const tTrackId *trackId = GetTrack(GetCurrentAudioTrack());
-        if (!trackId || trackId->id != id)
-        {
-            return length;
-        }
+//         if (!trackId || trackId->id != id)
+//         {
+//             return length;
+//         }
 
 
 
diff -ru reelbox-3.10388.orig/setupmenu.c reelbox-3.10388/setupmenu.c
--- reelbox-3.10388.orig/setupmenu.c	2009-01-19 13:22:30.000000000 +0100
+++ reelbox-3.10388/setupmenu.c	2009-01-19 17:10:08.000000000 +0100
@@ -27,6 +27,7 @@ 
 
     if (state == osUnknown && key == kOk)
     {
+        if (HasSubMenu()) return cMenuSetupPage::ProcessKey(key);
         const char *text = Get(Current())->Text();
 
         if ( text && strstr(text, tr("Video Settings")) )
diff -ru reelbox-3.10388.orig/VideoPlayerPipHd.c reelbox-3.10388/VideoPlayerPipHd.c
--- reelbox-3.10388.orig/VideoPlayerPipHd.c	2009-01-19 13:22:30.000000000 +0100
+++ reelbox-3.10388/VideoPlayerPipHd.c	2009-01-19 17:03:12.000000000 +0100
@@ -39,6 +39,8 @@ 
 // I like standards...
 typedef unsigned char uchar;
 
+#include <stdlib.h>
+
 #define PICS_BUF 16
 #define HDFB_DEVICE "/dev/fb0"
 #define ES_BUFFER_SIZE (262144)