Patent ID: 8514893

Claim:
An apparatus for multiplexing a plurality of single program transport streams into a multiple program transport stream, wherein each single program transport stream (SPTS) is formed by a series of groups each having a predefined plurality of data packets, each data packet contains a packet identifier, each single program transport stream carries a program map table that identifies packet identifiers associated with that respective single program transport stream, the multiple program transport stream carries a program association table that identifies the program map tables for the plurality of single program transport streams that are multiplexed onto the multiple program transport stream, said apparatus comprising: an input buffer for receiving data packets of the plurality of single program transport streams and configured to hold only the predefined plurality of data packets at any point in time; an MPTS table builder that receives data packets from the input buffer and reassigns a set of unique packet identifiers to the data packets from each single program transport stream, reconfigures each program map table in the data packets with the set of unique packet identifiers for the respective single program transport stream, and generates a program association table that identifies the program map tables for the plurality of single program transport streams, wherein the MPTS table builder retains unaltered the program clock reference in the data packets; and a first-in, first-out buffer operably connected to combine data packets received from the MPTS table builder into a multiple program transport stream.