[vdr] [ANNOUNCE] H.264 updates for VDR-1.5.9

Petri Helin phelin at googlemail.com
Thu Aug 30 07:38:04 CEST 2007

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...


More information about the vdr mailing list