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

Petri Helin phelin at googlemail.com
Thu Aug 30 19:44:27 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 now tested when there is a program running (I am even seeing the 
dvb-subtitles with xineliboutput), but still there are no "00 00 01" 
series in the sample.ts. Anything more I could test with?

-Petri



More information about the vdr mailing list