Digital program mapping
First Claim
Patent Images
1. A method for manipulating programs within one or more transport streams, said method comprising the steps of:
- assigning a first program to a first program entry (PE 1), said first program having a first input program map table (PMT 1) identifying a first service ID and a plurality of first PIDs associated with a first plurality of elementary streams of said first program;
assigning a second program to a second program entry (PE 2), said second program having a second input program map table (PMT 2) identifying a second service ID and a plurality of second PIDs associated with a second plurality of elementary streams of said second program;
providing an alternate program to said first program, said alternate program having a third input program map table (PMT 3) identifying a third service ID and a plurality of third PIDs associated with a third plurality of elementary streams of said alternate program;
discarding said first plurality of elementary streams of said first program and said plurality of first PIDs associated with said first program; and
remapping said alternate program such that said alternate program includes an output PMT identifying said first service ID of said first program and having said plurality of third PIDS referencing said third plurality of elementary streams of said alternate program.
4 Assignments
0 Petitions
Accused Products
Abstract
Rather than utilizing fixed point-to-point remapping of PIDS, the present invention utilizes the type of stream that the PIDS are associated with and the related program services IDs to specify the associations between input and output programs. This permits mapping at the program level and, therefore, allows dynamic responses to input program changes based upon the program mapping references. Resolving PID mapping based upon programs and the included services allows output PIDs to remain constant service-by-service even as the input programs change.
45 Citations
22 Claims
-
1. A method for manipulating programs within one or more transport streams, said method comprising the steps of:
-
assigning a first program to a first program entry (PE 1), said first program having a first input program map table (PMT 1) identifying a first service ID and a plurality of first PIDs associated with a first plurality of elementary streams of said first program;
assigning a second program to a second program entry (PE 2), said second program having a second input program map table (PMT 2) identifying a second service ID and a plurality of second PIDs associated with a second plurality of elementary streams of said second program;
providing an alternate program to said first program, said alternate program having a third input program map table (PMT 3) identifying a third service ID and a plurality of third PIDs associated with a third plurality of elementary streams of said alternate program;
discarding said first plurality of elementary streams of said first program and said plurality of first PIDs associated with said first program; and
remapping said alternate program such that said alternate program includes an output PMT identifying said first service ID of said first program and having said plurality of third PIDS referencing said third plurality of elementary streams of said alternate program. - View Dependent Claims (2, 3)
-
-
4. A method for manipulating programs within one or more transport streams, said method comprising the steps of:
-
assigning a first program to a first program entry (PE 1), said first program having a first input program map table (PMT 1) identifying a first service ID and a plurality of first PIDs associated with a first plurality of elementary streams of said first program;
assigning a second program to a second program entry (PE 2), said second program having a second input program map table (PMT 2) identifying a second service ID and a plurality of second PIDs associated with a second plurality of elementary streams of said second program;
providing an alternate program to said first program, said alternate program having a third input program map table (PMT 3) identifying a third service ID and a plurality of third PIDs associated with a third plurality of elementary streams of said alternate program;
discarding said first plurality of elementary streams of said first program and said plurality of first PIDs associated with said first program; and
remapping said third plurality of elementary stream of said alternate program to an output PMT identifying said first service ID of said first program assigned to said PE 1 and said plurality of first PIDS of said first program to have said plurality of third PIDs of said alternate program in order to reference said third plurality of elementary streams. - View Dependent Claims (5)
-
-
6. A method to automatically resolve output mapping collisions between PIDs of two or more programs following an input program change, said method comprising the steps of:
-
assigning a first program to a first program entry (PE 1), said first program having a first input program map table (PMT 1) identifying a first service ID and a plurality of first PIDs associated with a first plurality of elementary streams of said first program;
assigning a second program to a second program entry (PE 2), said second program having a second input program map table (PMT 2) identifying a second service ID and a plurality of second PIDs associated with a second plurality of elementary streams of said second program;
replacing said first program with a replacement program, said replacement program having a third input program map table (PMT 3) identifying a third service ID and a third plurality of PIDs associated with a third plurality of elementary streams of said alternate program, said second and third service IDS being identical and at least a portion of said second and third plurality of PIDs being identical to create said collision;
discarding said first plurality of elementary streams of said first program and said plurality of first PIDs associated with said first program;
remapping said replacement program such that said replacement program includes an output PMT identifying said first service ID of said first program and having said plurality of third PIDs referencing said third plurality of elementary streams of said alternate program; and
said second program having an output PMT retaining said second service ID and said second plurality of second PIDs associated with said second plurality of elementary streams, wherein said collision between said PIDs of said second program and said alternate program is reconciled.
-
-
7. A method to automatically resolve output mapping collisions between PIDs of two or more programs following an input program change, said method comprising the steps of:
-
remapping a first program having a first service ID such that a PMT 1 and first PIDs are modified for output;
dropping one of a plurality of elementary streams of said first program;
remapping a second program having a plurality of elementary streams such that a second service ID and second PIDs are modified for output; and
dropping at least one of said elementary streams of said second program.
-
-
8. A method to automatically resolve output mapping collisions between PIDs of two or more programs following an input program change, said method comprising the steps of:
-
assigning a first program to a first program entry (PE 1), said first program having a first input program map table (PMT 1) identifying a first service ID and a plurality of first PIDs associated with a first plurality of elementary streams of said first program;
assigning a second program to a second program entry (PE 2), said second program having a second input program map table (PMT 2) identifying a second service ID and a plurality of second PIDs associated with a second plurality of elementary streams of said second program;
providing an alternate program to said first program, said alternate program having a third input program map table (PMT 3) identifying a third service ID and a third plurality of PIDs associated with a third plurality of elementary streams of said alternate program, said second and third service IDS being identical and at least a portion of said second and third plurality of PIDs being identical to create said collision;
discarding said first plurality of elementary streams of said first program; and
copying said third plurality of elementary streams of said alternate program and remapping said copied third plurality of elementary streams to an output PMT identifying said service ID of said first program assigned to PE 1 and said plurality of first PIDs to reference said copies third plurality of elementary streams.
-
-
9. A method for manipulating programs within one or more transport streams, said method comprising the steps of:
-
assigning a first program to a program entry, said first program having an input program map table (PMT) identifying a first service ID and a plurality of first PIDs associated with a first plurality of elementary streams of said first program;
force tuning said program entry to a second program with a second service ID identified by said input PMT and a plurality of second PIDs associated with a second plurality of elementary streams; and
outputting said first program having an output PMT identifying said first service ID and said plurality of second PIDs associated with said second plurality of elementary streams.
-
-
10. A method of manipulating services within one or more transport streams comprising the steps of:
-
assigning a first program to a program entry, said first program having an input program map table (PMT) identifying a first service ID and a plurality of first PIDs associated with a first plurality of elementary streams of said first program;
losing a link to said transport stream having said first program and recovering a second program on a second transport stream assigned to said program entry;
inputting a second program of a second transport stream assigned to said program entry, said second program having an input program map table (PMT) identifying a second service ID and a plurality of second PIDs associated with a second plurality of elementary streams of said second program; and
outputting said second program having an output PMT identifying said first service ID and said plurality of second PIDs associated with said second plurality of elementary streams.
-
-
11. A method of manipulating services within one or more transport streams comprising the steps of:
-
inputting a first program assigned to a program entry, said first program having an input program map table (PMT) identifying a first service ID and a plurality of first PIDs associated with a first plurality of elementary streams of said first program;
inputting an alternate program assigned to a second program entry, said alternate program having an input program map table (PMT) identifying a second service ID and a plurality of second PIDs associated with a second plurality of elementary streams of said alternate program; and
outputting said alternate program having an output PMT identifying said first service ID and said plurality of second PIDs associated with said second plurality of elementary streams. - View Dependent Claims (12)
-
-
13. A method of manipulating services within one or more transport streams comprising the steps of:
-
inputting a first program assigned to a program entry, said first program having an input program map table (PMT) identifying a first service ID and a plurality of first PIDs associated with a first plurality of elementary streams of said first program;
force tuning said program entry to a second program with a second service ID identified by said input PMT and a plurality of second PIDs associated with a second plurality of elementary streams; and
outputting said first program having an output PMT identifying said first service ID and said plurality of first PIDs associated with said second plurality of elementary streams.
-
-
14. A method of manipulating services within one or more transport streams comprising the steps of:
-
inputting a first program assigned to a program entry, said first program having an input program map table (PMT) identifying a first service ID and a plurality of first PIDs associated with a first plurality of elementary streams of said first program;
losing a link to said transport stream having said first program and recovering a second program on a second transport stream assigned to said program entry;
inputing a second program of a second transport stream assigned to said program entry, said second program having an input program map table (PMT) identifying a second service ID and a plurality of second PIDs associated with a second plurality of elementary streams of said second program; and
outputting said second program having an output PMT identifying said first service ID and said plurality of first PIDs associated with said second plurality of elementary streams.
-
-
15. A method of mixing services within one or more transport streams comprising the steps of:
-
inputting a first program assigned to a program entry, said first program having an input program map table (PMT) identifying a first service ID and a plurality of first PIDs associated with a first plurality of elementary streams of said first program;
inputting an alternate program assigned to a second program entry, said alternate program having an input program map table (PMT) identifying a second service ID and a plurality of second PIDs associated with a second plurality of elementary streams of said alternate program; and
outputting said alternate program having an output PMT identifying said first service ID and said plurality of first PIDs associated with said second plurality of elementary streams. - View Dependent Claims (16)
-
-
17. A method for manipulating programs within one or more transport streams, said method comprising the steps of:
-
inputting a first program assigned to a first program entry, said first program having a first input program map table (PMT) identifying a first service ID and a plurality of first PIDs associated with a first plurality of elementary streams of said first program and said first program also having a first output PMT identifying said first service ID and said plurality of first PIDs associated with said first plurality of elementary streams of said first program;
modifying said first program entry to select another service ID;
remapping said output PMT to reference another plurality of PIDs associated with another plurality of elementary streams; and
retaining said first service ID as part of said output PMT of said first program assigned to said first program entry. - View Dependent Claims (18)
-
-
19. A method for manipulating programs within one or more transport streams, said method comprising the steps of:
-
inputting a first program assigned to a first program entry, said first program having a first input program map table (PMT) identifying a first service ID and a plurality of first PIDs associated with a first plurality of elementary streams of said first program and said first program also having a first output PMT identifying said first service ID and said plurality of first PIDs associated with said first plurality of elementary streams of said first program;
modifying said first program entry to select another service ID;
remapping said output PMT to have said other plurality of elementary streams; and
retaining said first service ID and said first plurality of PIDs for referencing said other plurality of elementary streams as part of said output PMT of said first program assigned to said first program entry. - View Dependent Claims (20)
-
-
21. A method for manipulating programs within one or more transport stream, said method comprising the following steps:
-
identifying as input at least one elementary stream within a program of said one or more transport streams, said one elementary stream being defined as a particular type of elementary stream and associated with a service ID; and
mapping another elementary stream of said one or more transport streams as output based upon said type of said one elementary stream and said service ID of said one elementary stream. - View Dependent Claims (22)
-
Specification