Reinhard Nissl wrote: > Hi, > > Reinhard Nissl wrote: > >> The line will write the PES packet's content into file >> /video/sample.es.h264 when a h264parser exists. Then please send me some >> MB of the file. > > The file you've sent me doesn't contain any useful data. You can have a > look at it yourself: > > od -Ax -t x1 -v sample2.es.h264 | less -S > > You need to find at least the sequence 00 00 01. Otherwise it's garbage. > > I'll go to bed soon, so here's a quick description how to go on: > > - add this function to cRepacker > virtual void LogTS(const uint8_t *Buf) {} > - add this function to cVideoRepacker > virtual void LogTS(const uint8_t *Buf) { if (h264parser) { static FILE > *f = fopen("/video/sample.ts", "wb"); fwrite(Buf, 1, 188, f); fflush(f); } } > - change this area in ts_to_pes() like that: > > void cTS2PES::ts_to_pes(const uint8_t *Buf) // don't need count (=188) > { > if (!Buf) > return; > if (repacker) repacker->LogTS(Buf); > if (Buf[1] & TS_ERROR) > > Be careful to just have a single cVideoRepacker instance write into this > file, i. e. either activate transfer mode on this channel or make a > recording on this channel but not both at the same time. > > Have a look at this file with > > od -Ax -t x1 -v -w188 sample.ts | less -S > > and locate the sequence 00 00 01 multiple times. It should then be > possible to record this channel although it doesn't work for now, as > cVideoRepacker didn't find any startcode (00 00 01) in the > sample.es.h264 from above. > > Bye. I have made the changes and did some testing, but there are no "00 00 01" series in the data at all. Some strange patterns I can see, but mostly just garbage. I will try again this evening when I can be sure that there is a program running. Fortunately I remembered wrong the end date of my subscription, it is valid until the end of this month, so I have 24 hours more to test this... -Petri _______________________________________________ vdr mailing list vdr@xxxxxxxxxxx http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr