System and method for multiplexing a plurality of digital program services for transmission to remote locations
First Claim
1. A method of combining a plurality of digital programs into a multiplex data stream for transmitting said programs from an origination point to at least one remote location, wherein each program comprises a single bit stream containing a combination of related digital services, said method comprising the steps of:
- a) multiplexing selected ones of the digital programs to generate a subframe data stream having a format comprising a continuous sequence of subframes different portions of each subframe being allocated to different ones of said digital programs;
b) generating for each subframe a subframe multiplex map that at least indirectly specifies which portions of that subframe are allocated to which of said selected digital programs, and inserting the subframe multiplex map in the subframe;
c) repeating step (a) and (b) a selected number of times, each time for different selected ones of said digital programs, thereby generating a plurality of subframe data streams each containing different ones of said digital programs and each comprising a continuous sequence of subframes;
d) multiplexing selected ones of the subframe data streams to generate said multiplex data stream, said multiplex data stream having a format comprising a continuous sequence of superframes, each superframe containing at least one subframe from at least one of said selected subframe data streams; and
e) generating, for each superframe in the multiplex data stream, a superframe map that specifies the location of each subframe within that superframe, and inserting the superframe map in that superframe.
3 Assignments
0 Petitions
Accused Products
Abstract
A system and method for multiplexing a plurality of digital programs for transmission to a plurality of remote locations is claimed. An encoder is provided that first generates a plurality of subframe data streams each comprising a continuous sequence of subframes. Each subframe in each subframe data stream comprises at least a transport layer region and a program data region. For each subframe data stream, portions of the program data region of each of the subframes in that subframe data stream are allocated to selected ones of the plurality of programs. Mapping information is provided in the transport layer region of each subframe for use by a decoder in extracting a selected program from each subframe. A multiplex data stream is then generated at the encoder that comprises a continuous sequence of superframes. Each superframe comprises a superframe transport layer region and a subframe data region. A portion of the subframe data region of each superframe is allocated to at least one subframe from each of the plurality of subframe data streams. A superframe map is then generated and transmitted with each superframe that specifies at least the location of each subframe within the superframe. The multiplex data stream is then transmitted to the plurality of remote locations. According to one embodiment, at an intermediate location, subframe data streams may be extracted from one multiplex data stream for re-routing within other multiplex data streams.
-
Citations
55 Claims
-
1. A method of combining a plurality of digital programs into a multiplex data stream for transmitting said programs from an origination point to at least one remote location, wherein each program comprises a single bit stream containing a combination of related digital services, said method comprising the steps of:
-
a) multiplexing selected ones of the digital programs to generate a subframe data stream having a format comprising a continuous sequence of subframes different portions of each subframe being allocated to different ones of said digital programs; b) generating for each subframe a subframe multiplex map that at least indirectly specifies which portions of that subframe are allocated to which of said selected digital programs, and inserting the subframe multiplex map in the subframe; c) repeating step (a) and (b) a selected number of times, each time for different selected ones of said digital programs, thereby generating a plurality of subframe data streams each containing different ones of said digital programs and each comprising a continuous sequence of subframes; d) multiplexing selected ones of the subframe data streams to generate said multiplex data stream, said multiplex data stream having a format comprising a continuous sequence of superframes, each superframe containing at least one subframe from at least one of said selected subframe data streams; and e) generating, for each superframe in the multiplex data stream, a superframe map that specifies the location of each subframe within that superframe, and inserting the superframe map in that superframe. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
-
-
16. An encoder apparatus for combining a plurality of digital programs into a multiplex data stream, wherein each program comprises a single bit stream containing a combination of related digital services, said encoder comprising:
-
a control computer for controlling the operation of the encoder; a plurality of subframe multiplexers, each coupled to the control computer and each being coupled to receive a respective group of said programs, each subframe multiplexer being operative to multiplex its respective group of programs to form a subframe data stream having a format comprising a continuous sequence of subframes wherein different portions of each subframe are allocated to different ones of said respective group of programs, each subframe multiplexer being further operative to insert, in each subframe, a subframe multiplex map that specifies, at least indirectly, which portions of each subframe are allocated to which programs; and a superframe multiplexer coupled to each of said subframe multiplexers for receiving said subframe data streams and for multiplexing selected ones of said subframe data streams to generate said multiplex data stream, said multiplex data stream having a format comprising a continuous sequence of superframes, each superframe containing at least one subframe from at least one of said selected subframe data streams, said superframe multiplexer being further operative to generate, for each superframe in the multiplex data stream, a superframe map that specifies the location of each subframe contained in that superframe, and to insert the superframe map in that superframe. - View Dependent Claims (17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27)
-
-
28. A decoder for use at a remote location to decode a multiplex data stream received at that location, said received multiplex data stream containing a multiplexed combination of digital programs and having a format comprising a continuous sequence of superframes each comprising a predetermined number of blocks, a first group of blocks in each superframe defining a transport layer region of that superframe and a second group of blocks defining a subframe data region, the subframe data region of each superframe comprising a multiplexed combination of subframes, different portions of each subframe being allocated to different ones of said digital programs and at least one subframe in each superframe containing data for a different group of said programs than another subframe in that superframe, said decoder comprising:
-
a receiver for receiving successive superframes of the multiplex data stream; a selector for selecting at least one of said digital programs for extraction from said received multiplexed data stream; a superframe demultiplexer comprising; a superframe map extractor for locating and extracting a superframe map from a received superframe of the received multiplex data stream, said superframe map specifying the location of each subframe contained within that superframe; and a subframe extractor at least indirectly responsive to the extracted superframe map for identifying which subframe in the received superframe contains data for the selected program and for extracting that subframe from the received superframe; and a subframe demultiplexer coupled to the superframe demultiplexer for receiving the extracted subframe from the superframe demultiplexer, said subframe demultiplexer comprising; a subframe multiplex map extractor for extracting a subframe multiplex map from the extracted subframe that specifies, at least indirectly, which portions of the subframe are allocated to which digital programs; and a program extractor responsive to the extracted subframe multiplex map for identifying, based at least in-part upon information contained in the subframe multiplex map, which portion of the subframe is allocated to the selected program, and for extracting the identified portion from the subframe. - View Dependent Claims (29)
-
-
30. A decoder for use at a remote location to decode a multiplex data stream received at that location, said received multiplex data stream containing a multiplexed combination of digital programs and having a format comprising a continuous sequence of superframes each containing a multiplexed combination of subframes, each subframe comprising a transport layer region and a program data region, the program data region of each subframe being partitioned into a plurality of program data packets, different portions of each program data packet being allocated to different ones of said digital programs, at least one subframe in each superframe containing data for a different group of said programs than another subframe in that superframe, the transport layer region of each subframe containing a program multiplex control packet that specifies, for each program data packet within that subframe, which portions of each program data packet are allocated to which programs, the transport layer region of each subframe further containing a subframe multiplex map which specifies, for that subframe, the location of the program multiplex control packet contained in the transport layer region of that subframe, said decoder comprising:
-
a receiver for receiving successive superframes of the multiplex data stream; a selector for selecting at least one of said digital programs for extraction from said received multiplexed data stream; a superframe demultiplexer comprising; a superframe map extractor for locating and extracting a superframe map from a received superframe of the received multiplex data stream, said superframe map specifying the location of each subframe contained within that superframe; and a subframe extractor at least indirectly responsive to the extracted superframe map for identifying which subframe in the received superframe contains data for the selected program and for extracting that subframe from the received superframe; and a subframe demultiplexer coupled to the superframe demultiplexer for receiving the extracted subframe from the superframe demultiplexer, said subframe demultiplexer comprising; a subframe multiplex map extractor for extracting the subframe multiplex map from the received subframe and for identifying therefrom the location of the program multiplex control packet within the transport layer region of that subframe; means for extracting the program multiplex control packet from the transport layer region of the received subframe; and a program extractor responsive to the extracted program multiplex control packet for identifying, based upon information contained in the extracted program multiplex control packet, which portion of each program data packet in the received subframe is allocated to the selected program, and for extracting the identified portion from each program data packet. - View Dependent Claims (31)
-
-
32. A method comprising the steps of:
-
a) receiving a plurality of multiplex data streams, each multiplex data stream containing a multiplexed combination of subframe data streams wherein each subframe data stream comprises a continuous sequence of subframes, said received multiplex data streams each having a format comprising a continuous sequence of superframes, each superframe in a particular multiplex data stream containing at least one subframe from at least one of the subframe data streams contained in that multiplex data stream and each superframe further containing a superframe map that specifies the location of each subframe within that superframe; b) for each received multiplex data stream, demultiplexing and separating the subframe data streams contained in that multiplex data stream and providing each subframe data stream in a separate channel; c) selecting a plurality of said demultiplexed and separated subframe data streams, at least one of said selected subframe data streams having been demultiplexed and separated from a different multiplex data stream than others of said selected subframe data streams; d) multiplexing said selected subframe data streams to generate a new multiplex data stream having a format comprising a continuous sequence of superframes wherein each superframe comprises at least one subframe from at least one of said selected subframe data streams; e) generating, for each superframe in the new multiplex data stream, a superframe map that specifies the location of each subframe within that superframe, and inserting the superframe map in that superframe; and f) transmitting the new multiplex data stream to at least one reception site. - View Dependent Claims (33, 34, 35, 36, 37, 38)
-
-
39. A headend installation comprising:
-
a plurality of receivers each tuned to receive a different one of a plurality of multiplex data streams transmitted from at least one encoder site, each multiplex data stream containing a multiplexed combination of subframe data streams wherein each subframe data stream comprises a continuous sequence of subframes, said received multiplex data streams each having a format comprising a continuous sequence of superframes, each superframe in a particular multiplex data stream containing at least one subframe from at least one of the subframe data streams contained in that multiplex data stream and each superframe further containing a superframe map that specifies the location of each subframe within that superframe; a plurality of superframe demultiplexers each coupled to a respective one of said receivers for demultiplexing and separating the subframe data streams contained in the multiplex data streams received by that receiver and for providing each of the separated subframe data stream on a separate channel; re-routing means for selecting a plurality of said demultiplexed and separated subframe data streams, at least one of said selected subframe data streams having been demultiplexed and separated from a different multiplex data stream than others of said selected subframe data streams; and a superframe multiplexer coupled to receive each of said selected subframe data streams for multiplexing said selected subframe data streams to generate a new multiplex data stream, said new multiplex data stream having a format comprising a continuous sequence of superframes, each superframe containing at least one subframe from each of said selected subframe data streams, said superframe multiplexer being further operative to generate, for each superframe in the multiplex data stream, a superframe map that specifies the location of each subframe contained in that superframe, and to insert the superframe map in that superframe. - View Dependent Claims (40, 41, 42, 43, 44, 45, 46)
-
-
47. A digital data stream containing a multiplexed combination of digital programs wherein each program comprises a combination of related digital services, said data stream comprising a continuous sequence of superframes,
each superframe containing a plurality of subframes, and each superframe containing a superframe map that specifies for that superframe the location of each of the subframes in that superframe, each subframe in each superframe containing a multiplexed combination of data from a subset of said digital programs wherein different portions of each subframe are allocated to different ones of said programs of said subset, at least one of the subframes in a particular superframe containing a multiplexed combination of digital programs from a different subset than another subframe in that superframe, each subframe further containing a subframe multiplex map that at least indirectly specifies which portions of that subframe are allocated to which programs of said subset.
Specification