CA2247450C - Fast extraction of program specific information from multiple transport streams - Google Patents
Fast extraction of program specific information from multiple transport streams Download PDFInfo
- Publication number
- CA2247450C CA2247450C CA002247450A CA2247450A CA2247450C CA 2247450 C CA2247450 C CA 2247450C CA 002247450 A CA002247450 A CA 002247450A CA 2247450 A CA2247450 A CA 2247450A CA 2247450 C CA2247450 C CA 2247450C
- Authority
- CA
- Canada
- Prior art keywords
- transport
- specific information
- program specific
- predecoder
- map
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/434—Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
- H04N21/4345—Extraction or processing of SI, e.g. extracting service information from an MPEG stream
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/44—Receiver circuitry for the reception of television signals according to analogue transmission standards
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/41—Structure of client; Structure of client peripherals
- H04N21/426—Internal components of the client ; Characteristics thereof
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/438—Interfacing the downstream path of the transmission network originating from a server, e.g. retrieving MPEG packets from an IP network
- H04N21/4383—Accessing a communication channel
- H04N21/4384—Accessing a communication channel involving operations to reduce the access time, e.g. fast-tuning for reducing channel switching latency
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Circuits Of Receivers In General (AREA)
- Television Systems (AREA)
Abstract
A digital TV receiver suffers from latency when a channel change is made to a program in an other than the currently accessed transport stream (TS). That is because the transport decoder (202) must first acquire and decode the Program Specific Information (PSI) from the transport stream, such as the Program Association Table and Program Map Table. In accordance with the invention, a pre-decoder (203) is successively coupled to the other transport streams through a cross bar switch (204) to extract the PSI from said other streams and create a map of channels.
Description
WO 98/30023 PCT/1'B97lOI599 FAST EXTRACTION OF PROGRAM SPECIFIC INFORMATION FROM MULTIPLE
TRANSPORT STREAMS
BACKGROUND OF THE INVENTION
1. Field of the Invention The present invention relates to decoding systems for multiple transport streams, such as MPEG-2 (an international standard originated by the Moving Picture Experts Group) encoded data steams. In its particular respects, the present invention is directed. to extraction of program specific information (PSI) from the multiple transport streams, to enable a so-called "channel change" .
Z. Description of the Related Art As described in ISO/IEC 13818, a decoding system consisting of an MPEG-2 transport decoder, and elementary stream decoders including at least one MPEG-2 audio decoder and MPEG-2 video decoder may receive MPEG-2 transport streams (bitstreams) from multiple source types and/or multiple service providers. Any one MPEG-2 transport stream may contain multiple programs for presentation to the user.
Thus, the action of switching from one program (or "channel") to another (usually described as a "channel change") may or may not necessitate switching from one transport stream source to another.
In the case where the data for the desired new channel is in the transport stream currently being received by the system decoder, the latency between selecting a new channel and displaying the new data to the user is limited only by the ability of the transport decoder and elementary stream decoders to resynchronize to the new data (which can be on a new time base as described in the ISO/IEC 13818 docurnent). This latency should be rather small.
However, where a channel change requires selecting data that is not in the currently used transport stream, but in another transport stream, the latency is much greater.
In such a case, the transport stream being fed to the transport decoder must be switched to a new transport stream. When this is done, the transport decoder cannot begin to parse and decode the program from the new transport stream until it bas recovered program specific information (PSI) tables from the new stream. Since these tables are not sent frequently in any one transport stream, there can be a large delay in time before PSI table information arrives at the transport decoder for extraction. During this delay, no other decoding can be performed since basic information (such as where data is stored in the new stream, and what type of data is present) about the stream is not available.
Thus, a large channel change delay is incurred, which may be long enough to become annoying to the user.
SUMMARY OF THE INVENTION
It is an object of the present invention to provide a decoding system and method in which the latency or delay of a channel change necessitating a change in which transport stream is decoded by the transport decoder is substantially reduced.
According to another aspect the invention provides a decoding system for a plurality of transport streams comprising: a transport decoder for de-multiplexing data for at least one elementary stream corresponding to a program from a currently accessed transport stream of said plurality of transport streams and decoding the de-multiplexed data; a predecoder for extracting program specific information from another transport stream of said plurality of transport streams during said de-multiplexing of the data from the currently accessed transport stream by the transport decoder, said program specific information indicating a correspondence between packet ID numbers and data for programs in said another transport stream; means for coupling a selected one of said plurality of transport streams to said transport decoder and another of said plurality of transport streams to said predecoder; and means for providing the transport decoder with the program specific information extracted by the predecoder for use in an event of a channel change necessitating the coupling means coupling said another of said plurality of transport streams to said transport decoder.
In accordance with one embodiment of the present invention, in order to provide for the selection of the transport stream being fed to the transport decoder and to successively feed the various transport streams to the predecoder (at least those streams not currently being fed to the transport decoder), the transport stream sources are connected to separate inputs of a coupling means, implemented as a fully populated crossbar switch, that can be dynamically reconfigured by a micro-controller connected to a control input thereof. The coupling means has one output connected to the predecoder and one output connected to the transport decoder.
In accordance with another embodiment of the present invention, the mapping function (or map means) of the decoder system is augmented to use the PSI information extracted by the predecoder to construct a PSI and channel map for the superset of all transport stream sources connected to the system.
According to another aspect the invention provides a method of decoding a plurality of transport streams comprising: de-multiplexing data for at least one elementary stream corresponding to a program from a currently accessed first transport stream of said plurality of transport streams and decoding the de-multiplexed data;
during said de-multiplexing, accessing and extracting program specific information from a second transport stream of said plurality of transport streams, indicating a correspondence between packet ID numbers and data for programs in said second transport stream; and using the extracted program specific information in an event of a channel change necessitating that data for at least one elementary data stream corresponding to a program in said second transport stream be de-multiplexed.
3a Other objects, features and advantages of the present invention will become apparent upon perusal of the following detailed description when taken in conjunction with the appended drawing, wherein:
BRIEF DESCRIPTION OF THE DRAWING
Figure 1 is a block diagram of a known decoding system for multiple transport streams;
Figure 2 is a block diagram of a decoding system for multiple transport streams in accordance with the invention;
Figure 3 illustrates the structure of a packet within a transport stream; and Figure 4 is a chart illustrating steps in obtaining program information from packets of a transport stream.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
Referring first to Figure 1 of the drawing, a known decoding system 100 is illustrated for multiple MPEG-2 transport streams TSl-TSn (ISO/IEC 13818-1 bitstreams).
These transport streams may be supplied from different source types such as modems, asynchronous transfer mode (ATM) networks, and digital storage media (DSM) (or multiples of each) and/or from different service providers.
Further, any one of MPEG-2 encoded transport stream may contain multiple programs for presentation to the consumer.
In accordance with the MPEG-2 standard (ISO/IEC 13818), decoding system 100 comprises a transport decoder 102 having an output fed to elementary stream decoders (not shown) including at least one MPEG-2 audio 3b decoder and MPEG-2 video decoder. In the known decoding system 100, transport streams TS1-TSn are applied to respective bitstream inputs of a multiplexer 104 which in response to a control signal applied to its control input 104a couples a selected one of the transport streams TSl-TSn to the input of transport decoder 102. Control input 104a is fed from a mapping function 106 of the host processor of decoding system 100 (riot shown) which maps channel number to transport stream source. Mapping function 106 is accessed in response to a channel change request issued from a user interface function 107 of the host processor. When the data for the new channel is located in the same transport stream as currently fed to the transport decoder 102, no change is made in the signal coupling state of the multiplexer 104.
However, when data for the new channel is in another transport stream, the control signal applied to control input 104a causes multiplexer 104 to assume a different signal coupling state so that the new transport stream is input to transport decoder 102. At this point, the action of the decoder requires the extraction of program specific information (PSI) from the transport stream newly applied to the transport decoder. In order to understand the nature and time delay inherent in this extraction, the structure of packets in the transport stream will now be discussed.
As shown in Figure 3, each transport packet P in an MPEG-2 transport stream is 188 bytes in length and is composed of a packet header PH and a packet payload PP. When no adaptation field is present in the packet header PH, it is 4 bytes in length and the packet payload PP is I84 bytes in length. Within each header PH is a 13 hit packet identification number or PID. Packets containing data for a desired elementary stream or streams corresponding to a channel will have a unique PID which the transport decoder must demultiplex from the transport stream. However, a priori, the transport decoder has no knowledge of the specific PIDs it needs to read in the newly inputted transport stream to demultiplex the desired channel. It obtains this knowledge by extracting program specific information from the transport stream, which can involve a significant delay, on the order of seconds, which may be annoying to the user.
The cause for this delay will be understood with reference to Figure 4 which illustrates in a simplified form the steps for extraction of program specific information. As shown therein, the transport decoder must first wait for a transport packet P 1 having the reserved PID 0x0000 for a packet which contains the Program Association Table (PAT). This table essentially relates program number to PIDs of packets containing a Program Map Table (PMT) for that program. A Program Map Table essentially relates the elementary stream types (video, audio, data etc.) in a program to PIDs of packets containing data for that stream type. Once the PID of the desired PMT is known, the transport decoder must wait for a packet P2 having that PID. Then, packet P2 is read to determine the PIDs of the desired stream types. Thereafter, with the acquired knowledge of the PIDs for the desired program elementary stream or streams, the data is demultiplexed and supplied to the elementary stream decoders.
WO 98!30023 PCT/IB97/01599 It should further be understood that the Program Association Table and the Program Map Table are not necessarily wholly contained in single transport packets. In fact, they may be spread over multiple packets. Further, the transport packets containing table sections of the PAT and the PMT are typically spread over the transport stream; i. e.
TRANSPORT STREAMS
BACKGROUND OF THE INVENTION
1. Field of the Invention The present invention relates to decoding systems for multiple transport streams, such as MPEG-2 (an international standard originated by the Moving Picture Experts Group) encoded data steams. In its particular respects, the present invention is directed. to extraction of program specific information (PSI) from the multiple transport streams, to enable a so-called "channel change" .
Z. Description of the Related Art As described in ISO/IEC 13818, a decoding system consisting of an MPEG-2 transport decoder, and elementary stream decoders including at least one MPEG-2 audio decoder and MPEG-2 video decoder may receive MPEG-2 transport streams (bitstreams) from multiple source types and/or multiple service providers. Any one MPEG-2 transport stream may contain multiple programs for presentation to the user.
Thus, the action of switching from one program (or "channel") to another (usually described as a "channel change") may or may not necessitate switching from one transport stream source to another.
In the case where the data for the desired new channel is in the transport stream currently being received by the system decoder, the latency between selecting a new channel and displaying the new data to the user is limited only by the ability of the transport decoder and elementary stream decoders to resynchronize to the new data (which can be on a new time base as described in the ISO/IEC 13818 docurnent). This latency should be rather small.
However, where a channel change requires selecting data that is not in the currently used transport stream, but in another transport stream, the latency is much greater.
In such a case, the transport stream being fed to the transport decoder must be switched to a new transport stream. When this is done, the transport decoder cannot begin to parse and decode the program from the new transport stream until it bas recovered program specific information (PSI) tables from the new stream. Since these tables are not sent frequently in any one transport stream, there can be a large delay in time before PSI table information arrives at the transport decoder for extraction. During this delay, no other decoding can be performed since basic information (such as where data is stored in the new stream, and what type of data is present) about the stream is not available.
Thus, a large channel change delay is incurred, which may be long enough to become annoying to the user.
SUMMARY OF THE INVENTION
It is an object of the present invention to provide a decoding system and method in which the latency or delay of a channel change necessitating a change in which transport stream is decoded by the transport decoder is substantially reduced.
According to another aspect the invention provides a decoding system for a plurality of transport streams comprising: a transport decoder for de-multiplexing data for at least one elementary stream corresponding to a program from a currently accessed transport stream of said plurality of transport streams and decoding the de-multiplexed data; a predecoder for extracting program specific information from another transport stream of said plurality of transport streams during said de-multiplexing of the data from the currently accessed transport stream by the transport decoder, said program specific information indicating a correspondence between packet ID numbers and data for programs in said another transport stream; means for coupling a selected one of said plurality of transport streams to said transport decoder and another of said plurality of transport streams to said predecoder; and means for providing the transport decoder with the program specific information extracted by the predecoder for use in an event of a channel change necessitating the coupling means coupling said another of said plurality of transport streams to said transport decoder.
In accordance with one embodiment of the present invention, in order to provide for the selection of the transport stream being fed to the transport decoder and to successively feed the various transport streams to the predecoder (at least those streams not currently being fed to the transport decoder), the transport stream sources are connected to separate inputs of a coupling means, implemented as a fully populated crossbar switch, that can be dynamically reconfigured by a micro-controller connected to a control input thereof. The coupling means has one output connected to the predecoder and one output connected to the transport decoder.
In accordance with another embodiment of the present invention, the mapping function (or map means) of the decoder system is augmented to use the PSI information extracted by the predecoder to construct a PSI and channel map for the superset of all transport stream sources connected to the system.
According to another aspect the invention provides a method of decoding a plurality of transport streams comprising: de-multiplexing data for at least one elementary stream corresponding to a program from a currently accessed first transport stream of said plurality of transport streams and decoding the de-multiplexed data;
during said de-multiplexing, accessing and extracting program specific information from a second transport stream of said plurality of transport streams, indicating a correspondence between packet ID numbers and data for programs in said second transport stream; and using the extracted program specific information in an event of a channel change necessitating that data for at least one elementary data stream corresponding to a program in said second transport stream be de-multiplexed.
3a Other objects, features and advantages of the present invention will become apparent upon perusal of the following detailed description when taken in conjunction with the appended drawing, wherein:
BRIEF DESCRIPTION OF THE DRAWING
Figure 1 is a block diagram of a known decoding system for multiple transport streams;
Figure 2 is a block diagram of a decoding system for multiple transport streams in accordance with the invention;
Figure 3 illustrates the structure of a packet within a transport stream; and Figure 4 is a chart illustrating steps in obtaining program information from packets of a transport stream.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
Referring first to Figure 1 of the drawing, a known decoding system 100 is illustrated for multiple MPEG-2 transport streams TSl-TSn (ISO/IEC 13818-1 bitstreams).
These transport streams may be supplied from different source types such as modems, asynchronous transfer mode (ATM) networks, and digital storage media (DSM) (or multiples of each) and/or from different service providers.
Further, any one of MPEG-2 encoded transport stream may contain multiple programs for presentation to the consumer.
In accordance with the MPEG-2 standard (ISO/IEC 13818), decoding system 100 comprises a transport decoder 102 having an output fed to elementary stream decoders (not shown) including at least one MPEG-2 audio 3b decoder and MPEG-2 video decoder. In the known decoding system 100, transport streams TS1-TSn are applied to respective bitstream inputs of a multiplexer 104 which in response to a control signal applied to its control input 104a couples a selected one of the transport streams TSl-TSn to the input of transport decoder 102. Control input 104a is fed from a mapping function 106 of the host processor of decoding system 100 (riot shown) which maps channel number to transport stream source. Mapping function 106 is accessed in response to a channel change request issued from a user interface function 107 of the host processor. When the data for the new channel is located in the same transport stream as currently fed to the transport decoder 102, no change is made in the signal coupling state of the multiplexer 104.
However, when data for the new channel is in another transport stream, the control signal applied to control input 104a causes multiplexer 104 to assume a different signal coupling state so that the new transport stream is input to transport decoder 102. At this point, the action of the decoder requires the extraction of program specific information (PSI) from the transport stream newly applied to the transport decoder. In order to understand the nature and time delay inherent in this extraction, the structure of packets in the transport stream will now be discussed.
As shown in Figure 3, each transport packet P in an MPEG-2 transport stream is 188 bytes in length and is composed of a packet header PH and a packet payload PP. When no adaptation field is present in the packet header PH, it is 4 bytes in length and the packet payload PP is I84 bytes in length. Within each header PH is a 13 hit packet identification number or PID. Packets containing data for a desired elementary stream or streams corresponding to a channel will have a unique PID which the transport decoder must demultiplex from the transport stream. However, a priori, the transport decoder has no knowledge of the specific PIDs it needs to read in the newly inputted transport stream to demultiplex the desired channel. It obtains this knowledge by extracting program specific information from the transport stream, which can involve a significant delay, on the order of seconds, which may be annoying to the user.
The cause for this delay will be understood with reference to Figure 4 which illustrates in a simplified form the steps for extraction of program specific information. As shown therein, the transport decoder must first wait for a transport packet P 1 having the reserved PID 0x0000 for a packet which contains the Program Association Table (PAT). This table essentially relates program number to PIDs of packets containing a Program Map Table (PMT) for that program. A Program Map Table essentially relates the elementary stream types (video, audio, data etc.) in a program to PIDs of packets containing data for that stream type. Once the PID of the desired PMT is known, the transport decoder must wait for a packet P2 having that PID. Then, packet P2 is read to determine the PIDs of the desired stream types. Thereafter, with the acquired knowledge of the PIDs for the desired program elementary stream or streams, the data is demultiplexed and supplied to the elementary stream decoders.
WO 98!30023 PCT/IB97/01599 It should further be understood that the Program Association Table and the Program Map Table are not necessarily wholly contained in single transport packets. In fact, they may be spread over multiple packets. Further, the transport packets containing table sections of the PAT and the PMT are typically spread over the transport stream; i. e.
5 the transport packets containing these table sections do not arrive at the transport decoder immediately following one another, but rather arrive with many transport packets between successive PAT and PMT packets. In the worst case the PAT and then the PMT
must be extracted and completely assembled from their respective sections spread over multiple packets before the desired program elementary streams can be accessed, resulting in excessive delay on the order of seconds in response to a channel change request necessitating a change in transport stream to be applied to the transport decoder.
In accordance with the present invention, as illustrated in Figure 2, a decoding system 200 is provided in which the delay in obtaining program specific information upon a channel change necessitating a change In transport stream is avoided.
Therein, in addition to a transport decoder 202, a predecoder 203 is provided for extracting program specific information PSI from the transport streams TS1-TSn, and at least from all of the transport streams thereof not currently coupled to the transport decoder 202. The program specific information extracted by the predecoder 203 is then immediately made available to the transport decoder 202 via an interconnection 208 between them in the event of a channel change request from user interface 207 necessitating a change of the transport stream fed to transport decoder 202 Both the coupling of a selected one of transport streams TS 1-TSn to the input of transport decoder 202 and the successive coupling of the transport streams TS 1-TSn to the input of predecoder 203 is preferably effected by a fully populated crossbar switch 204 which is dynamically reconfigurable in response to a control signal on its control input 204a from an 8-bit micro-controller 205. Crossbar switch 204 has inputs for the respective transport streams TS 1-TSn and outputs to the transport decoder 202 and the predecoder 203.
It should be understood that any dynamically reconfigurable one or more switch means which can attain the requisite signal coupling states can be used.
Predecoder 203 and micro-controller 205 are coupled by a bidirectional signal path 2I0 so that the micro-controller can inform the predecoder 203 which transport stream it has commanded the crossbar switch to convey to the predecoder and so that the predecoder can signal the micro-controller when it has completed extraction of program specific information from the newly coupled transport stream. Then, the micro-controller WO 98/30023 PCT/iB97/01599 commands the crossbar switch 204 to feed a different transport stream to the predecoder for the purpose of extraction of PSI. The changing of transport streams in this manner is repeated in "round robin" fashion so that the entire plurality of transport streams TS 1 - TSn are successively applied to predecoder 203, enabling continual extracting and updating of S program specific information for all transport streams. The signal paths 210 and 208 are also used for the micro-controller 20S to inform the predecoder 203 and the predecoder to inform the transport decoder 202 which transport stream is currently being supplied to the transport decoder.
The predecoder may itself store program specific information for the plurality of transport streams TS 1-TSn or that information may be conveyed for storage to other elements, e. g. micro-controller 20S or transport decoder 202. In an interesting case, the extracted PSI is conveyed via micro-controller 20S to the mapping function 206 of the host processor of decoding system 200 where it is used to store and maintain a global map of channel numbers to transport stream and associated PSI. Then, when a channel change request is issued from the user interface function 207 of the host processor, the applicable program specific information can be read from mapping function 206 and conveyed to transport decoder either via micro-controller 20S and predecoder 203 or directly via path 212.
While the present invention has been described in particular detail, it should also be appreciated that numerous modifications axe possible within the intended spirit and scope of the invention. For example, elements of decoding system 200 may be integrated in a variety of ways with each other and communication between these elements may take various direct or indirect routes.
must be extracted and completely assembled from their respective sections spread over multiple packets before the desired program elementary streams can be accessed, resulting in excessive delay on the order of seconds in response to a channel change request necessitating a change in transport stream to be applied to the transport decoder.
In accordance with the present invention, as illustrated in Figure 2, a decoding system 200 is provided in which the delay in obtaining program specific information upon a channel change necessitating a change In transport stream is avoided.
Therein, in addition to a transport decoder 202, a predecoder 203 is provided for extracting program specific information PSI from the transport streams TS1-TSn, and at least from all of the transport streams thereof not currently coupled to the transport decoder 202. The program specific information extracted by the predecoder 203 is then immediately made available to the transport decoder 202 via an interconnection 208 between them in the event of a channel change request from user interface 207 necessitating a change of the transport stream fed to transport decoder 202 Both the coupling of a selected one of transport streams TS 1-TSn to the input of transport decoder 202 and the successive coupling of the transport streams TS 1-TSn to the input of predecoder 203 is preferably effected by a fully populated crossbar switch 204 which is dynamically reconfigurable in response to a control signal on its control input 204a from an 8-bit micro-controller 205. Crossbar switch 204 has inputs for the respective transport streams TS 1-TSn and outputs to the transport decoder 202 and the predecoder 203.
It should be understood that any dynamically reconfigurable one or more switch means which can attain the requisite signal coupling states can be used.
Predecoder 203 and micro-controller 205 are coupled by a bidirectional signal path 2I0 so that the micro-controller can inform the predecoder 203 which transport stream it has commanded the crossbar switch to convey to the predecoder and so that the predecoder can signal the micro-controller when it has completed extraction of program specific information from the newly coupled transport stream. Then, the micro-controller WO 98/30023 PCT/iB97/01599 commands the crossbar switch 204 to feed a different transport stream to the predecoder for the purpose of extraction of PSI. The changing of transport streams in this manner is repeated in "round robin" fashion so that the entire plurality of transport streams TS 1 - TSn are successively applied to predecoder 203, enabling continual extracting and updating of S program specific information for all transport streams. The signal paths 210 and 208 are also used for the micro-controller 20S to inform the predecoder 203 and the predecoder to inform the transport decoder 202 which transport stream is currently being supplied to the transport decoder.
The predecoder may itself store program specific information for the plurality of transport streams TS 1-TSn or that information may be conveyed for storage to other elements, e. g. micro-controller 20S or transport decoder 202. In an interesting case, the extracted PSI is conveyed via micro-controller 20S to the mapping function 206 of the host processor of decoding system 200 where it is used to store and maintain a global map of channel numbers to transport stream and associated PSI. Then, when a channel change request is issued from the user interface function 207 of the host processor, the applicable program specific information can be read from mapping function 206 and conveyed to transport decoder either via micro-controller 20S and predecoder 203 or directly via path 212.
While the present invention has been described in particular detail, it should also be appreciated that numerous modifications axe possible within the intended spirit and scope of the invention. For example, elements of decoding system 200 may be integrated in a variety of ways with each other and communication between these elements may take various direct or indirect routes.
Claims (20)
1. A decoding system for a plurality of transport streams comprising:
a transport decoder for de-multiplexing data for at least one elementary stream corresponding to a program from a currently accessed transport stream of said plurality of transport streams and decoding the de-multiplexed data;
a predecoder for extracting program specific information from another transport stream of said plurality of transport streams during said de-multiplexing of the data from the currently accessed transport stream by the transport decoder, said program specific information indicating a correspondence between packet ID numbers and data for programs in said another transport stream;
means for coupling a selected one of said plurality of transport streams to said transport decoder and another of said plurality of transport streams to said predecoder; and means for providing the transport decoder with the program specific information extracted by the predecoder for use in an event of a channel change necessitating the coupling means coupling said another of said plurality of transport streams to said transport decoder.
a transport decoder for de-multiplexing data for at least one elementary stream corresponding to a program from a currently accessed transport stream of said plurality of transport streams and decoding the de-multiplexed data;
a predecoder for extracting program specific information from another transport stream of said plurality of transport streams during said de-multiplexing of the data from the currently accessed transport stream by the transport decoder, said program specific information indicating a correspondence between packet ID numbers and data for programs in said another transport stream;
means for coupling a selected one of said plurality of transport streams to said transport decoder and another of said plurality of transport streams to said predecoder; and means for providing the transport decoder with the program specific information extracted by the predecoder for use in an event of a channel change necessitating the coupling means coupling said another of said plurality of transport streams to said transport decoder.
2. A decoding system as claimed in claim 1, wherein said coupling means has a plurality of inputs, each for a different one of said plurality of transport streams, and two outputs, one coupled to the transport decoder and the other coupled to the predecoder.
3. A decoding system as claimed in claim 2, wherein said coupling means is configured for successively coupling at least all other of said transport streams to said predecoder.
4. A decoding system as claimed in claim 2, wherein said coupling means is a fully populated cross bar switch having a control input, and further comprising a control means coupled to said control input.
5. A decoding system as claimed in claim 1, further comprising means for constructing a map of channels and program specific information associated with channels using the program specific information extracted by said predecoder.
6. A decoding system as claimed in claim 2, further comprising map means for maintaining a map of channels and program specific information associated with channels using the program specific information extracted by said predecoder.
7. A decoding system as claimed in claim 3, further comprising map means for maintaining a map of channels and program specific information associated with channels using the program specific information extracted by said predecoder.
8. A decoding system as claimed in claim 4, further comprising map means for maintaining a map of channels and program specific information associated with channels using the program specific information extracted by said predecoder.
9. A decoding system as claimed in claim 1, wherein said means for providing the transport decoder with the program specific information extracted by the predecoder includes said map means.
10. A decoding system as claimed in claim 6, wherein said means for providing the transport decoder with the program specific information extracted by the predecoder includes said map means.
11. A decoding system as claimed in claim 7, wherein said means for providing the transport decoder with the program specific information extracted by the predecoder includes said map means.
12. A decoding system as claimed in claim 4, wherein said means for providing the transport decoder with the program specific information extracted by the predecoder includes said map means.
13. A decoding system as claimed in claim 5, wherein said means for providing the transport decoder with the program specific information extracted by the predecoder includes said map means.
14. A decoding system as claimed in claim 6, wherein said means for providing the transport decoder with the program specific information extracted by the predecoder includes said map means.
15. A decoding system as claimed in claim 7, wherein said means for providing the transport decoder with the program specific information extracted by the predecoder includes said map means.
16. A decoding system as claimed in claim 8, wherein said means for providing the transport decoder with the program specific information extracted by the predecoder includes said map means.
17. A method of decoding a plurality of transport streams comprising:
de-multiplexing data for at least one elementary stream corresponding to a program from a currently accessed first transport stream of said plurality of transport streams and decoding the de-multiplexed data;
during said de-multiplexing, accessing and extracting program specific information from a second transport stream of said plurality of transport streams, indicating a correspondence between packet ID numbers and data for programs in said second transport stream; and using the extracted program specific information in an event of a channel change necessitating that data for at least one elementary data stream corresponding to a program in said second transport stream be de-multiplexed.
de-multiplexing data for at least one elementary stream corresponding to a program from a currently accessed first transport stream of said plurality of transport streams and decoding the de-multiplexed data;
during said de-multiplexing, accessing and extracting program specific information from a second transport stream of said plurality of transport streams, indicating a correspondence between packet ID numbers and data for programs in said second transport stream; and using the extracted program specific information in an event of a channel change necessitating that data for at least one elementary data stream corresponding to a program in said second transport stream be de-multiplexed.
18. A method of decoding as claimed in claim 17, further comprising:
extracting program specific information from a third transport stream of said plurality of transport streams during the decoding of the first transport stream;
and using the extracted program specific information in the event of a channel change necessitating that said third transport stream be decoded.
extracting program specific information from a third transport stream of said plurality of transport streams during the decoding of the first transport stream;
and using the extracted program specific information in the event of a channel change necessitating that said third transport stream be decoded.
19. A method of decoding as claimed in claim 17, further comprising maintaining a map of channels and program specific information for the plurality of transport streams using the extracted program specific information.
20. A method of decoding as claimed in claim 18, further comprising maintaining a map of channels and program specific information for the plurality of transport streams using the extracted program specific information.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US08/773,156 US6157673A (en) | 1996-12-26 | 1996-12-26 | Fast extraction of program specific information from multiple transport streams |
US08/773,156 | 1996-12-26 | ||
PCT/IB1997/001599 WO1998030023A2 (en) | 1996-12-26 | 1997-12-24 | Fast extraction of program specific information from multiple transport streams |
Publications (2)
Publication Number | Publication Date |
---|---|
CA2247450A1 CA2247450A1 (en) | 1998-07-09 |
CA2247450C true CA2247450C (en) | 2005-04-26 |
Family
ID=25097380
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CA002247450A Expired - Fee Related CA2247450C (en) | 1996-12-26 | 1997-12-24 | Fast extraction of program specific information from multiple transport streams |
Country Status (10)
Country | Link |
---|---|
US (1) | US6157673A (en) |
EP (1) | EP1027802B1 (en) |
JP (1) | JP2000505988A (en) |
KR (1) | KR100528277B1 (en) |
CN (1) | CN1130072C (en) |
CA (1) | CA2247450C (en) |
DE (1) | DE69735379T2 (en) |
ES (1) | ES2258285T3 (en) |
MY (1) | MY132986A (en) |
WO (1) | WO1998030023A2 (en) |
Families Citing this family (57)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7168084B1 (en) | 1992-12-09 | 2007-01-23 | Sedna Patent Services, Llc | Method and apparatus for targeting virtual objects |
US9286294B2 (en) | 1992-12-09 | 2016-03-15 | Comcast Ip Holdings I, Llc | Video and digital multimedia aggregator content suggestion engine |
US6588014B1 (en) | 1997-09-26 | 2003-07-01 | Matsushita Electric Industrial Co., Ltd. | System and method for digital communication |
US8286207B1 (en) | 1998-07-13 | 2012-10-09 | Thomson Licensing | System for processing programs and system timing information derived from multiple broadcast sources |
US6754905B2 (en) | 1998-07-23 | 2004-06-22 | Diva Systems Corporation | Data structure and methods for providing an interactive program guide |
US9924234B2 (en) | 1998-07-23 | 2018-03-20 | Comcast Ip Holdings I, Llc | Data structure and methods for providing an interactive program |
EP1097587A1 (en) | 1998-07-23 | 2001-05-09 | Diva Systems Corporation | Interactive user interface |
US6483543B1 (en) | 1998-07-27 | 2002-11-19 | Cisco Technology, Inc. | System and method for transcoding multiple channels of compressed video streams using a self-contained data unit |
EP0989743A1 (en) * | 1998-09-25 | 2000-03-29 | CANAL+ Société Anonyme | Application data table for a multiservice digital transmission system |
US6591013B1 (en) * | 1999-03-22 | 2003-07-08 | Broadcom Corporation | Switching between decoded image channels |
US6704359B1 (en) * | 1999-04-15 | 2004-03-09 | Diva Systems Corp. | Efficient encoding algorithms for delivery of server-centric interactive program guide |
US6904610B1 (en) | 1999-04-15 | 2005-06-07 | Sedna Patent Services, Llc | Server-centric customized interactive program guide in an interactive television environment |
US6754271B1 (en) | 1999-04-15 | 2004-06-22 | Diva Systems Corporation | Temporal slice persistence method and apparatus for delivery of interactive program guide |
US7096487B1 (en) | 1999-10-27 | 2006-08-22 | Sedna Patent Services, Llc | Apparatus and method for combining realtime and non-realtime encoded content |
EP1113609A4 (en) * | 1999-05-19 | 2008-08-06 | Sony Corp | Broadcasting apparatus and method, receiving apparatus and method, and medium |
WO2000076212A1 (en) * | 1999-06-07 | 2000-12-14 | Matsushita Electric Industrial Co., Ltd. | Recording/reproducing device, mpeg video stream recording/reproducing device, and medium |
US7668189B1 (en) * | 1999-07-08 | 2010-02-23 | Thomson Licensing | Adaptive transport protocol |
KR100311479B1 (en) | 1999-10-06 | 2001-10-18 | 구자홍 | Method and apparatus for controlling channel of digital TV |
CA2388606C (en) | 1999-10-27 | 2009-12-29 | Diva Systems Corporation | Picture-in-picture and multiple video streams using slice-based encoding |
US6628891B1 (en) * | 1999-11-19 | 2003-09-30 | Scm Microsystems, Inc. | Signal filtering mechanism for a multi-purpose digital television receiver |
US6654389B1 (en) * | 1999-11-23 | 2003-11-25 | International Business Machines Corporation | System and method for searching patterns in real-time over a shared media |
US6643298B1 (en) * | 1999-11-23 | 2003-11-04 | International Business Machines Corporation | Method and apparatus for MPEG-2 program ID re-mapping for multiplexing several programs into a single transport stream |
JP2001326875A (en) * | 2000-05-16 | 2001-11-22 | Sony Corp | Image processing unit and image processing method, and recording medium |
JP4915026B2 (en) * | 2000-05-17 | 2012-04-11 | ソニー株式会社 | Video processing apparatus, video processing method, and recording medium |
US6704060B2 (en) * | 2001-03-15 | 2004-03-09 | Matsushita Electric Industrial Co., Ltd. | Method and apparatus for viewing two independent channels using one integrated receiver/decoder |
US20090031419A1 (en) | 2001-05-24 | 2009-01-29 | Indra Laksono | Multimedia system and server and methods for use therewith |
US7099951B2 (en) * | 2001-05-24 | 2006-08-29 | Vixs, Inc. | Method and apparatus for multimedia system |
US8291457B2 (en) | 2001-05-24 | 2012-10-16 | Vixs Systems, Inc. | Channel selection in a multimedia system |
US7793326B2 (en) | 2001-08-03 | 2010-09-07 | Comcast Ip Holdings I, Llc | Video and digital multimedia aggregator |
US7908628B2 (en) | 2001-08-03 | 2011-03-15 | Comcast Ip Holdings I, Llc | Video and digital multimedia aggregator content coding and formatting |
US20030093800A1 (en) * | 2001-09-12 | 2003-05-15 | Jason Demas | Command packets for personal video recorder |
US20030079035A1 (en) * | 2001-10-18 | 2003-04-24 | Yazaki North America, Inc. | Multi-format media decoder and method of using same as an interface with a digital network |
EP1311115A1 (en) * | 2001-11-08 | 2003-05-14 | Deutsche Thomson-Brandt Gmbh | Method for recording digital video broadcast data, and digital video recorder |
FI20012245A (en) * | 2001-11-19 | 2003-05-20 | Nokia Corp | Method and system for reporting the service |
US6868125B2 (en) * | 2001-11-29 | 2005-03-15 | Thomson Licensing S.A. | Transport stream to program stream conversion |
CN1636387A (en) * | 2002-02-20 | 2005-07-06 | 皇家飞利浦电子股份有限公司 | Video information stream distribution unit |
MXPA04009782A (en) | 2002-04-08 | 2004-12-13 | Thomson Licensing Sa | Apparatus and method for data caching to reduce channel change delay. |
AU2003268017A1 (en) * | 2002-07-24 | 2004-02-09 | General Instrument Corporation | Method and apparatus for rapid capture of program identifier data in a broadband transcoder multiplexer |
JP3717880B2 (en) * | 2002-10-01 | 2005-11-16 | パイオニア株式会社 | Information recording medium, information recording apparatus and method, information reproducing apparatus and method, information recording / reproducing apparatus and method, computer program for recording or reproduction control, and data structure including control signal |
FR2851396A1 (en) * | 2003-02-17 | 2004-08-20 | Thomson Licensing Sa | METHOD FOR INITIALIZING A DIGITAL DECODER AND DECODER IMPLEMENTING SUCH A METHOD |
JP2007509517A (en) * | 2003-10-06 | 2007-04-12 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | System, transmitter, receiver, signal and method for delivering services |
PL362963A1 (en) * | 2003-10-20 | 2005-05-02 | Advanced Digital Broadcast Ltd. | Method for processing data on tv channels in digital tv decoder during switching over the jets of tv channels in transponder coherent network |
KR100617852B1 (en) * | 2004-01-26 | 2006-08-28 | 삼성전자주식회사 | Mpeg-2 decoding system and operating method thereof |
KR100651449B1 (en) * | 2004-08-27 | 2006-11-29 | 삼성전자주식회사 | Digital broadcasting receiver and method therein |
WO2006121801A1 (en) * | 2005-05-10 | 2006-11-16 | Thomson Licensing | Method and apparatus for caching access information for faster digital cable tuning |
EP1964391A1 (en) * | 2005-12-20 | 2008-09-03 | Tte Technology, Inc. | Decryption system and method for video data |
JP4884787B2 (en) * | 2006-01-30 | 2012-02-29 | 京セラ株式会社 | Broadcast receiving apparatus and channel selection method |
ATE477676T1 (en) * | 2006-11-06 | 2010-08-15 | Tte Technology Inc | METHOD AND DEVICE FOR SETTING A DIGITAL TELEVISION CHANNEL |
JP4317995B2 (en) * | 2007-05-11 | 2009-08-19 | テクトロニクス・インコーポレイテッド | Stream analysis apparatus and stream analysis display method |
DE102008010142B4 (en) * | 2008-02-15 | 2012-04-12 | Technisat Digital Gmbh | Method for collision detection of channel change commands in a single-cable distribution system |
US7953121B2 (en) * | 2008-07-15 | 2011-05-31 | International Business Machines Corporation | Method and system for synchronizing transport streams of multiple transponders for area critical applications |
JP5025716B2 (en) * | 2009-12-09 | 2012-09-12 | 三菱電機株式会社 | Digital broadcast receiving apparatus, digital broadcast receiving method, and computer program |
FR2954882B1 (en) * | 2009-12-28 | 2014-08-29 | Softathome | SYSTEM AND METHOD FOR DIFFUSION AND CHANGE OF DIGITAL TELEVISION CHANNELS. |
US9154813B2 (en) | 2011-06-09 | 2015-10-06 | Comcast Cable Communications, Llc | Multiple video content in a composite video stream |
GB2500655A (en) * | 2012-03-28 | 2013-10-02 | St Microelectronics Res & Dev | Channel selection by decoding a first program stream and partially decoding a second program stream |
CN102957962B (en) * | 2012-12-04 | 2015-12-02 | 青岛海信宽带多媒体技术有限公司 | Monitor method and the device of PSI/SI versions of data in TS stream |
EP3654661A1 (en) * | 2018-11-19 | 2020-05-20 | Advanced Digital Broadcast S.A. | A method and system for collecting electronic programme guide data from multiple transport streams |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4903126A (en) * | 1989-02-10 | 1990-02-20 | Kassatly Salim A | Method and apparatus for tv broadcasting |
JP3161017B2 (en) * | 1992-04-16 | 2001-04-25 | ソニー株式会社 | Video decoding device |
US5477263A (en) * | 1994-05-26 | 1995-12-19 | Bell Atlantic Network Services, Inc. | Method and apparatus for video on demand with fast forward, reverse and channel pause |
US5852612A (en) * | 1995-03-16 | 1998-12-22 | Bell Atlantic Network Services, Inc. | Terminal for receiving simulcast digital video programs |
DE69631393T2 (en) * | 1995-03-29 | 2004-10-21 | Hitachi Ltd | Decoder for compressed and multiplexed image and audio data |
US5600378A (en) * | 1995-05-22 | 1997-02-04 | Scientific-Atlanta, Inc. | Logical and composite channel mapping in an MPEG network |
US5864358A (en) * | 1995-06-26 | 1999-01-26 | Matsushita Electric Industrial Co., Ltd. | Method for switching programs in digital broadcasting and digital broadcast receiving apparatus |
JP3698273B2 (en) * | 1995-07-20 | 2005-09-21 | ソニー株式会社 | Electronic program guide transmission apparatus and method, electronic program guide reception apparatus and method, and electronic program guide transmission / reception system and method |
US5579308A (en) * | 1995-11-22 | 1996-11-26 | Samsung Electronics, Ltd. | Crossbar/hub arrangement for multimedia network |
WO1997035393A1 (en) * | 1996-03-15 | 1997-09-25 | Hitachi, Ltd. | Data separating device |
US5894320A (en) * | 1996-05-29 | 1999-04-13 | General Instrument Corporation | Multi-channel television system with viewer-selectable video and audio |
US5754651A (en) * | 1996-05-31 | 1998-05-19 | Thomson Consumer Electronics, Inc. | Processing and storage of digital data and program specific information |
US5844478A (en) * | 1996-05-31 | 1998-12-01 | Thomson Consumer Electronics, Inc. | Program specific information formation for digital data processing |
US5933500A (en) * | 1996-05-31 | 1999-08-03 | Thomson Consumer Electronics, Inc. | Adaptive decoding system for processing encrypted and non-encrypted broadcast, cable or satellite video data |
-
1996
- 1996-12-26 US US08/773,156 patent/US6157673A/en not_active Expired - Lifetime
-
1997
- 1997-12-24 KR KR1019980706624A patent/KR100528277B1/en not_active IP Right Cessation
- 1997-12-24 ES ES97947198T patent/ES2258285T3/en not_active Expired - Lifetime
- 1997-12-24 DE DE69735379T patent/DE69735379T2/en not_active Expired - Lifetime
- 1997-12-24 WO PCT/IB1997/001599 patent/WO1998030023A2/en active IP Right Grant
- 1997-12-24 JP JP10529150A patent/JP2000505988A/en not_active Ceased
- 1997-12-24 CN CN97193891A patent/CN1130072C/en not_active Expired - Fee Related
- 1997-12-24 EP EP97947198A patent/EP1027802B1/en not_active Expired - Lifetime
- 1997-12-24 CA CA002247450A patent/CA2247450C/en not_active Expired - Fee Related
- 1997-12-24 MY MYPI97006287A patent/MY132986A/en unknown
Also Published As
Publication number | Publication date |
---|---|
JP2000505988A (en) | 2000-05-16 |
MY132986A (en) | 2007-10-31 |
CN1130072C (en) | 2003-12-03 |
DE69735379D1 (en) | 2006-04-27 |
EP1027802A2 (en) | 2000-08-16 |
WO1998030023A3 (en) | 1998-09-17 |
US6157673A (en) | 2000-12-05 |
CA2247450A1 (en) | 1998-07-09 |
ES2258285T3 (en) | 2006-08-16 |
KR100528277B1 (en) | 2006-02-21 |
EP1027802B1 (en) | 2006-03-01 |
WO1998030023A2 (en) | 1998-07-09 |
CN1216661A (en) | 1999-05-12 |
KR19990087227A (en) | 1999-12-15 |
DE69735379T2 (en) | 2006-10-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CA2247450C (en) | Fast extraction of program specific information from multiple transport streams | |
US5856973A (en) | Data multiplexing in MPEG server to decoder systems | |
US6493043B1 (en) | Method of increasing the storage capacity of service information in a digital TV transmissions receiver | |
HRP20000307A2 (en) | Packet filtering | |
KR100617852B1 (en) | Mpeg-2 decoding system and operating method thereof | |
JP4339322B2 (en) | Transport stream receiving apparatus for providing multiple screens and control method thereof | |
US7602819B2 (en) | Demultiplexing devices and process for at least two transport streams and a corresponding digital stream | |
JP3382021B2 (en) | Program search device and method | |
US7154913B2 (en) | Decoder supporting multiple inputs | |
KR100558584B1 (en) | A demultiplexer, a television decoding apparatus and a demultiplexing method | |
US6714259B2 (en) | Method and apparatus for receiving digital television signals from a plurality of independent channels | |
WO2002051147A1 (en) | Methods and apparatus for re-encoding a high definition television signal to create a standard definition television signal | |
US7730515B1 (en) | Digital receiver demultiplexer | |
US6418140B1 (en) | Data multiplexing method, data multiplexer using the multiplexing method, multiple data repeater, multiple data decoding method, multiple data decoding device using the decoding method, and recording medium on which the methods are recorded | |
US7050436B1 (en) | Device and method for processing a stream of data | |
KR0185947B1 (en) | Method of decoding the selection program of a digital satellite broadcasting receiver and apparatus thereof | |
KR19990032221A (en) | Broadcast signal storage and playback device in digital broadcasting receiver | |
KR19990027640A (en) | DTV's Multi-Program Demux Device | |
JPH0993286A (en) | Digital transmitter |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
EEER | Examination request | ||
MKLA | Lapsed | ||
MKLA | Lapsed |
Effective date: 20081224 |