[vdr] vdr-1.7.15 problem with live TV [1.7.11 or older OK] [PROGRESS :) ]

Simon Baxter linuxtv at nzbaxters.com
Fri Sep 3 22:12:21 CEST 2010


>>>  // Check whether the TS packets are scrambled:
>>>
>>> Maybe some packets have the TS_SCRAMBLING_CONTROL bits set here.
>>> This could be caused by recording the PCR packets since version 1.7.12.
>>> To debug this, just disable this check, and/or put in some debug 
>>> printouts.
>>
>
> Thanks Klaus
>
> I've commented out the below section in device.c, and I now get continuous 
> video, but some video skips and lots of:
> Sep  3 21:36:29 freddy vdr: [31301] cVideoRepacker: operating in MPEG1/2 
> mode
> Sep  3 21:36:29 freddy vdr: [31301] cVideoRepacker: switching to MPEG1/2 
> mode
> Sep  3 21:36:29 freddy vdr: [31301] cVideoRepacker: operating in MPEG1/2 
> mode

This cVideoRepacker problem has also been fixed with the attached patch.

So I've managed to get vdr-1.7.15 working just fine now, by disabling this 
scramble check in device.c.  Bit of a dirty hack!!!



> Here's what I changed in device.c
>
> void cDevice::Action(void)
> {
>  if (Running() && OpenDvr()) {
>     while (Running()) {
>           // Read data from the DVR device:
>           uchar *b = NULL;
>           if (GetTSPacket(b)) {
>              if (b) {
>                 int Pid = TsPid(b);
>                 // Check whether the TS packets are scrambled:
>                 bool DetachReceivers = false;
>                 bool DescramblingOk = false;
>                 int CamSlotNumber = 0;
>                 if (startScrambleDetection) {
>                   cCamSlot *cs = CamSlot();
>                    CamSlotNumber = cs ? cs->SlotNumber() : 0;
> //                    if (CamSlotNumber) {
> //                       bool Scrambled = b[3] & TS_SCRAMBLING_CONTROL;
> //                       int t = time(NULL) - startScrambleDetection;
> //                       if (Scrambled) {
> //                          if (t > TS_SCRAMBLING_TIMEOUT)
> //                             DetachReceivers = true;
> //                          }
> //                       else if (t > TS_SCRAMBLING_TIME_OK) {
> //                          DescramblingOk = true;
> //                          startScrambleDetection = 0;
> //                          }
> //                       }
>                 }
>                 // Distribute the packet to all attached receivers:
>                 Lock();
>
>
> Any ideas?
>
> _______________________________________________
> vdr mailing list
> vdr at linuxtv.org
> http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr
> 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: vdr-xine-0.9.3-1.7.12.diff
Type: application/octet-stream
Size: 740 bytes
Desc: not available
URL: <http://www.linuxtv.org/pipermail/vdr/attachments/20100904/8a170837/attachment-0001.obj>


More information about the vdr mailing list