Hi, Am 08.02.2010 22:29, schrieb Klaus Schmidinger: >> I can only reproduce this issue on channels with separate PCR >> pid. I'll have to investigate further to find a solution. > > As of version 1.7.12 VDR records the PCR pid if it is different > than the video PID. For lack of better knowledge I made cDevice::PlayTs() > send the PCR packets to PlayTsVideo(). The FF cards don't have a problem > with that, but maybe xine or the cVideoRepacker does. > Maybe VDR shouldn't even "replay" the PCR data - please advise. As it is possible to access cPatPmtParser since a few releases, I've changed vdr-xine to pull VPID from there instead of picking it from packets passed to PlayTsVideo. Bye. -- Dipl.-Inform. (FH) Reinhard Nissl mailto:rnissl@xxxxxx
--- ../xine-0.9.3/xineDevice.c 2009-06-17 20:06:35.000000000 +0200 +++ xineDevice.c 2010-02-08 22:54:00.000000000 +0100 @@ -1539,7 +1546,13 @@ fclose(ff); { #if APIVERSNUM >= 10701 if (Length >= TS_SIZE) - m_tsVideoPid = TsPid(Data); + { +#if APIVERSNUM >= 10712 + m_tsVideoPid = PatPmtParser()->Vpid(); +#else + m_tsVideoPid = TsPid(Data); +#endif + } #endif return Length; } @@ -4119,6 +4132,8 @@ store_frame(jumboPESdata, todo, __LINE__ void cXineDevice::MakePrimaryDevice(bool On) { + cDevice::MakePrimaryDevice(On); + xfprintf(stderr, "-------------------------\n"); xfprintf(stderr, "MakePrimaryDevice: %d\n", On); xfprintf(stderr, "=========================\n");
_______________________________________________ vdr mailing list vdr@xxxxxxxxxxx http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr