diff -Naur vdr-1.5.8.org/recorder.c vdr-1.5.8/recorder.c --- vdr-1.5.8.org/recorder.c 2008-01-23 18:43:58.032691522 -0500 +++ vdr-1.5.8/recorder.c 2008-01-23 18:40:07.777114509 -0500 @@ -18,7 +18,7 @@ // The maximum time we wait before assuming that a recorded video data stream // is broken: -#define MAXBROKENTIMEOUT 30 // seconds +#define MAXBROKENTIMEOUT 900 // seconds #define MINFREEDISKSPACE (512) // MB #define DISKCHECKINTERVAL 100 // seconds @@ -136,6 +136,7 @@ } else if (!isLiveRec && time(NULL) - t > m) { esyslog("ERROR: video data stream broken"); + fprintf(stderr,"ERROR: video data stream broken"); ShutdownHandler.RequestEmergencyExit(); t = time(NULL); } @@ -164,7 +165,7 @@ ringBuffer = new cRingBufferLinear(RECORDERBUFSIZE, TS_SIZE * 2, true, "Recorder"); ringBuffer->SetTimeouts(0, 100); - remux = new cRemux(VPid, APids, Setup.DolbyInRecordings ? DPids : NULL, SPids, !isLiveRec); + remux = new cRemux(VPid, APids, Setup.DolbyInRecordings ? DPids : NULL, SPids, isLiveRec, true); oldRemux=NULL; writer = new cFileWriter(FileName, remux,IsLiveRec,IsBeginning); } diff -Naur vdr-1.5.8.org/remux.c vdr-1.5.8/remux.c --- vdr-1.5.8.org/remux.c 2008-01-23 18:43:58.046692530 -0500 +++ vdr-1.5.8/remux.c 2008-01-23 18:40:07.779114653 -0500 @@ -2011,7 +2011,7 @@ #define SC_GROUP 0xB8 // "group start code" #define SC_PICTURE 0x00 // "picture start code" -#define MAXNONUSEFULDATA (10*1024*1024) +#define MAXNONUSEFULDATA (200*1024*1024) #define MAXNUMUPTERRORS 10 class cTS2PES { @@ -2745,6 +2745,7 @@ if (!synced && skipped >= 0) { if (skipped > MAXNONUSEFULDATA) { esyslog("ERROR: no useful data seen within %d byte of video stream", skipped); + fprintf(stderr,"ERROR: no useful data seen within %d byte of video stream", skipped); skipped = -1; if (exitOnFailure) ShutdownHandler.RequestEmergencyExit();