[vdr] PCR pid

André Weidemann Andre.Weidemann at web.de
Sun Jan 24 19:22:20 CET 2010


On 24.01.2010 18:14, Klaus Schmidinger wrote:
> On 24.01.2010 17:24, André Weidemann wrote:
>> Hi Klaus,
>>
>> On 24.01.2010 16:28, Klaus Schmidinger wrote:
>>> On 11.01.2010 06:19, VDR User wrote:
>>>> On Sun, Jan 10, 2010 at 12:30 AM, Giampaolo Sica<gpsica at tin.it>   wrote:
>>>>> My Samsung linux based TV set (http://samygo.sourceforge.net/) won't
>>>>> play
>>>>> .TS without PCR (both h.264 and mpeg2).
>>>>> Windows media player in windows 7 can play mpeg2 and H.264 .TS only
>>>>> with PCR
>>>>> pid.
>>>>> I haven't tried any other player.
>>>>
>>>> I would say your problem should be addressed within your hacked tv
>>>> firmware.  However, if there is a real need for PCR then I'm sure
>>>> Klaus will consider it.
>>>
>>> In an attempt to debug this I just made some recordings from channels
>>> with VPID==PPID and VPID!=PPID, namely
>>>
>>> RTL Television,RTL;RTL
>>> World:12187:hC34M2O0S0:S19.2E:27500:163=2:104=deu;106=deu:105:0:12003:1:1089:0
>>>
>>> BVN;CANALDIGITAAL:12574:hC56M2O0S0:S19.2E:22000:515+8190=2:96=dut:36:0:5025:53:1109:0
>>>
>>>
>>> Both recordings were replayed without problems using the Windows Media
>>> Player
>>> on Windows XP. It didn't even make a difference whether the PCR pid in
>>> the
>>> PMT was set to an actual value or to 0x1FFF.
>>>
>>> I was under the impression that the WMP was one of those players
>>> that have problems if there is no PCR, but apparently it plays just
>>> fine...
>>
>> Could you please do a quick test with VLC 1.0.3 under Windows? I cannot
>> replay any recordings made from AnixeHD recorded with vdr-1.7.11. Upon
>> replay I only get a still picture of the first recorded frame.
>
> Are you referring to
>
>    ANIXE HD;BetaDigital:10832:hC23M5O35S1:S19.2E:22000:767=27:0;771=deu:0:1:61202:1:1057:0

Yes, this is it.

> --- remux.c     2010/01/23 15:39:15     2.38
> +++ remux.c     2010/01/24 15:18:29     2.39
> @@ -295,7 +295,7 @@
>     numPmtPackets = 0;
>     if (Channel) {
>        int Vpid = Channel->Vpid();
> -     int Ppid = 0x1FFF; // no PCR pid
> +     int Ppid = Channel->Ppid();
>        uchar *p = buf;
>        int i = 0;
>        p[i++] = 0x02; // table id
>
> That should fix it - this channel doesn't have a separate PCR pid.

The above patch fixes the replay problem with VLC. Thank you.

Regards.
  André



More information about the vdr mailing list