Hi, You can also add one more case :
case 0x19: // advanced codec HD digital television service Rgds, Alex Marek Hajduk wrote: > I made recording with vdr 1.7.7 and prewious patches. > I get picture with several errors. Here: > http://rapidshare.com/files/229350889/2009-05-05.10.45.1220-0.rec.tar.gz.html > > BR > > Marky > Marek Hajduk píše v Út 05. 05. 2009 v 10:41 +0200: > >> I have tu confirm, that I used both patches and it now works-I get >> picture. But picture has errors. >> >> BR >> >> Marky >> >> >> Ales Jurik píše v Út 05. 05. 2009 v 09:59 +0200: >> >>> On Tuesday 05 of May 2009, Klaus Schmidinger wrote: >>> >>>> On 05/05/09 00:04, Ales Jurik wrote: >>>> >>> ... >>> >>>>> Many thanks, it seems to works (with type of 2), but it is necessary to >>>>> set "Update channels" to "no". >>>>> >>>> Please try this: >>>> >>>> --- remux.c 2009/05/03 14:43:25 2.20 >>>> +++ remux.c 2009/05/05 07:27:21 >>>> @@ -795,6 +795,7 @@ >>>> scanner <<= 8; >>>> scanner |= Data[i]; >>>> switch (type) { >>>> + case 0x01: // MPEG 1 video >>>> case 0x02: // MPEG 2 video >>>> if (scanner == 0x00000100) { // Picture Start >>>> Code if (synced && Processed) >>>> >>>> With this you should be able to turn "Update channels" on again. >>>> >>>> Klaus >>>> >>> Thanks for pointing me to the problem. But for working it it was necessary >>> to >>> add these two changes more: >>> >>> --- remux.c 2009-05-05 09:44:01.000000000 +0200 >>> +++ remux.c 2009-05-05 09:50:56.854167360 +0200 >>> @@ -481,6 +481,7 @@ void cPatPmtParser::ParsePmt(const uchar >>> for (SI::Loop::Iterator it; Pmt.streamLoop.getNext(stream, it); ) { >>> dbgpatpmt(" stream type = %02X, pid = %d", >>> stream.getStreamType(), stream.getPid()); >>> switch (stream.getStreamType()) { >>> + case 0x01: // MPEG1 >>> case 0x02: // STREAMTYPE_13818_VIDEO >>> case 0x1B: // MPEG4 >>> vpid = stream.getPid(); >>> @@ -702,7 +703,7 @@ cFrameDetector::cFrameDetector(int Pid, >>> newFrame = independentFrame = false; >>> numPtsValues = 0; >>> numIFrames = 0; >>> - isVideo = type == 0x02 || type == 0x1B; // MPEG 2 or MPEG 4 >>> + isVideo = type == 0x01 || type == 0x02 || type == 0x1B; // MPEG 1,2 or 4 >>> frameDuration = 0; >>> framesInPayloadUnit = framesPerPayloadUnit = 0; >>> payloadUnitOfFrame = 0; >>> >>> Now it seems to works as on older vdr versions (with PES), but video >>> discontinuities are still present on Spektrum (as on many other channels >>> from >>> other providers). On STB's these discontinuities are not present in video. >>> >>> Thanks and BR, >>> >>> Ales >>> >>> _______________________________________________ >>> vdr mailing list >>> [email protected] >>> http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr >>> >> _______________________________________________ >> vdr mailing list >> [email protected] >> http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr >> > > > _______________________________________________ > vdr mailing list > [email protected] > http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr > _______________________________________________ vdr mailing list [email protected] http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr
