[mythtv-users] Firewire troubles after upgrade. Is test-mepg2 mightier than MythTV?

J M@h$ jason.macpherson at gmail.com
Mon Feb 1 04:18:21 UTC 2010


> I'd have to guess it is a firewire header of some sort, given that its
> always 1394 -- ieee1394 == firewire.

Yeah, I thought that was a little too coincidental.   After analyzing
my ts dump, I think my cable box may also be transmitting .264 video
as well.


I've have a little C program here I use to dump the PAT  ( I didn't
trust what dbvsnoop was telling me )

#include<stdio.h>
#include<stdlib.h>

int main(int argc,char **argv)
{
  unsigned char pack[188];
  int pid;
  FILE *ts = fopen(argv[1],"rb");

  if(argc<2)
  {
    printf("usage: %s <TS file>\n", argv[0]);
    exit(0);
  }

  while( !feof(ts) )
  {
    fread(&pack,1,188,ts);

    pid=(pack[1]<<8|pack[2])&0x1fff;
    //printf("pid=0x%x\n", pid);
    if(pid == 0)
    {
      int length = (pack[6]<<8|pack[7])&0x0fff;
      if(length>188 || length < 13)
        continue;
      printf(" ---- PAT found (length=%d) ------ \n",length);
      int p = 12;
      while(p < length+13 && p < 188)
      {
         int program = (pack[++p]<<8|pack[++p])&0xffff;
         int pmt     = (pack[++p]<<8|pack[++p])&0x1fff;
         if(pmt != 0x1fff) // dont't print NULL packets
           printf("Program = 0x%x -> pmt = 0x%x\n", program, pmt);
      }
      printf("---- End PAT --------------------\n\n");
    }
  }
}



I ran this program on the mpeg-ts stream I dumped.  It appears that
there is a second stream coming from my cable box.   If the ID number
is any indication of the format, this second stream is probably x264
(or H.264) video.


myth at myth:~/mythdebug$ ./mtest tsCap.mpeg
 ---- PAT found (length=13) ------
Program = 0x1        -> pmt = 0x1394
Program = 0x14b2 -> pmt = 0x264
---- End PAT --------------------
<snip/>





Also another data point.....
Mplayer is able to play the file I dumped with test-mpeg2.   However,
VLC is not able to player this video.


myth at myth:~/mythdebug$ vlc tsCap.mpeg
libdvbpsi error (PSI decoder): TS discontinuity (received 12, expected
0) for PID 0
libdvbpsi error (PSI decoder): TS discontinuity (received 12, expected
0) for PID 5012  (that's decimal for 0x1394)


Mythtv also uses libdvbpsi.  Whatever issue I'm having with Mythtv may
stem from a problem in libdvbpsi.




J M@h$


More information about the mythtv-users mailing list