Skip to content

Not finding PMT PID #30

@GoogleCodeExporter

Description

@GoogleCodeExporter
What steps will reproduce the problem?
1. playing a MPTS with other tables on the PMT PID 
2. type tsplay and it gets a PMT PID of 0x1fff which is invalid
3. na

What is the expected output? What do you see instead?
The PCR pid is not found so the video does not stream out

What version of the product are you using? On what operating system?
1.11

Please provide any additional information below.
Adding a check for the PMT table as the first byte of the PAT_data and 
discarding the file fixes this issue
before extract_pmt in find_PCR_PID in tsplay.c add this:



// We have seen MPTS with multiple tables in the PMT PID, so we know a real PMT 
table always starts with a table ID of 2 
      // so lets check and discard if its not a true PMT

      if (pmt_data[0] != 2) //its not a PMT table so continue looking Oh and free the packet
      {
         printf(" PMT does not have type 2 table so discard and try again\n");      
         if(pmt_data) free(pmt_data);
         pmt_data = NULL; pmt_data_len = 0; pmt_data_used = 0;
         continue;
      }


I've attached the tsplay.c

Original issue reported on code.google.com by andrewis...@googlemail.com on 31 Dec 2014 at 1:49

Attachments:

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions