Re: [vdr] vdr-1.7.1 video stream format
On Monday 24 November 2008, Stefan Lucke wrote: Hi, using vdr-1.7.1 patched for S2API with vdr-1.7.1-s2api-07102008-vanilla.patch and DVB drivers from yesterday (via: hg clone http://linuxtv.org/hg/v4l-dvb). I've the following issues (tuned to ZDF): - playing with softdevice there is no video, but audio and subtile work. - dumping the data I got via PlayVideo() to a file neither ffplay nor mplayer can identify stream info from dumped data. But Xine can play PES dumped via PlayVideo(). There are a few visible decoding errors. whereas Xine has no problems decoding the TS stream dumped at the same time. If some with TS/PES stream knowledge wants to look at: http://www.lucke.in-berlin.de/test_streams/ vdr-171.zz.PES vdr-171.zzz.TS -- Stefan Lucke ___ vdr mailing list vdr@linuxtv.org http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr
Re: [vdr] vdr-1.7.1 video stream format
On Tuesday 25 November 2008, Frank Schmirler wrote: On Mon, 24 Nov 2008 17:42:28 +0100, Stefan Lucke wrote On Monday 24 November 2008, Frank Schmirler wrote: Unless I've overlooked some section repacker somewhere, there's a bug in cPatPmtGenerator. I've already sent the attached patch to Klaus, but he didn't have time to look at it yet. Thanks, but things went worse with that on my system: audio disappeared and nothing more to dump in PlayVideo() :-( . Problem seems to be that my patch fixes the generator, but the same mistake is made while parsing the TS packet. I attached an extended patch which fixes parsing, too. According to the dumps you sent me (thanks!), vdr-1.7.1 cPatPmtGenerator *is* broken. Sorry, but this version does not help much. Without patch ffplay mplayer can play dumped TS packets. With patch mplayer plays fine whereas ffplay only plays audio (no video), and softdevice only has some audible clicks. My main concern is that softdevice PlayTs*() never gets called and while writing these lines, I found the typo PlayTS vs PlayTs. -- Stefan Lucke ___ vdr mailing list vdr@linuxtv.org http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr
Re: [vdr] vdr-1.7.1 video stream format
On Mon, 24 Nov 2008 14:41:44 +0100, Stefan Lucke wrote - dumping the data I got via PlayVideo() to a file neither ffplay nor mplayer can identify stream info from dumped data. Unless I've overlooked some section repacker somewhere, there's a bug in cPatPmtGenerator. I've already sent the attached patch to Klaus, but he didn't have time to look at it yet. Frank --- remux.c.orig 2008-11-13 13:39:48.0 +0100 +++ remux.c 2008-11-13 16:32:57.0 +0100 @@ -2298,6 +2298,7 @@ p[i++] = 0x40; // flags (3), pid hi (5) p[i++] = 0x00; // pid lo p[i++] = 0x10; // flags (4), continuity counter (4) + p[i++] = 0x00; // pointer field (payload unit start indicator is set) int PayloadStart = i; p[i++] = 0x00; // table id p[i++] = 0xB0; // section syntax indicator (1), dummy (3), section length hi (4) @@ -2367,13 +2368,18 @@ MakeCRC(buf + i, buf, i); // split the PMT section into several TS packets: uchar *q = buf; + bool pusi = true; while (i 0) { uchar *p = pmt[numPmtPackets++]; int j = 0; p[j++] = 0x47; // TS indicator - p[j++] = 0x40 | (P_PNR 8); // flags (3), pid hi (5) + p[j++] = (pusi ? 0x40 : 0) | (P_PNR 8); // flags (3), pid hi (5) p[j++] = P_PNR 0xFF; // pid lo p[j++] = 0x10; // flags (4), continuity counter (4) + if (pusi) { + p[j++] = 0x00; // pointer field (payload unit start indicator is set) + pusi = false; + } int l = TS_SIZE - j; memcpy(p + j, q, l); q += l; ___ vdr mailing list vdr@linuxtv.org http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr
Re: [vdr] vdr-1.7.1 video stream format
On Monday 24 November 2008, Frank Schmirler wrote: On Mon, 24 Nov 2008 14:41:44 +0100, Stefan Lucke wrote - dumping the data I got via PlayVideo() to a file neither ffplay nor mplayer can identify stream info from dumped data. Unless I've overlooked some section repacker somewhere, there's a bug in cPatPmtGenerator. I've already sent the attached patch to Klaus, but he didn't have time to look at it yet. Thanks, but things went worse with that on my system: audio disappeared and nothing more to dump in PlayVideo() :-( . -- Stefan Lucke ___ vdr mailing list vdr@linuxtv.org http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr