US7433409B2 - Apparatus and method of multiple decoding - Google Patents

Apparatus and method of multiple decoding Download PDF

Info

Publication number
US7433409B2
US7433409B2 US09/900,168 US90016801A US7433409B2 US 7433409 B2 US7433409 B2 US 7433409B2 US 90016801 A US90016801 A US 90016801A US 7433409 B2 US7433409 B2 US 7433409B2
Authority
US
United States
Prior art keywords
data
buffer
decoding
separate
plurality
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.)
Active, expires
Application number
US09/900,168
Other versions
US20020003845A1 (en
Inventor
Akira Kamiya
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sovereign Peak Ventures LLC
Original Assignee
Panasonic Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Priority to JP2000208074 priority Critical
Priority to JP2000-208074 priority
Application filed by Panasonic Corp filed Critical Panasonic Corp
Assigned to MATSUSHITA ELECTRIC INDUSTRIAL CO., LTD. reassignment MATSUSHITA ELECTRIC INDUSTRIAL CO., LTD. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: KAMIYA, AKIRA
Publication of US20020003845A1 publication Critical patent/US20020003845A1/en
Application granted granted Critical
Publication of US7433409B2 publication Critical patent/US7433409B2/en
Assigned to PANASONIC INTELLECTUAL PROPERTY CORPORATION OF AMERICA reassignment PANASONIC INTELLECTUAL PROPERTY CORPORATION OF AMERICA ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: PANASONIC CORPORATION
Assigned to SOVEREIGN PEAK VENTURES, LLC reassignment SOVEREIGN PEAK VENTURES, LLC ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: PANASONIC INTELLECTUAL PROPERTY CORPORATION OF AMERICA
Application status is Active legal-status Critical
Adjusted expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network, synchronizing decoder's clock; Client middleware
    • H04N21/434Disassembling 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/4347Demultiplexing of several video streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0045Arrangements at the receiver end
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L25/00Baseband systems
    • H04L25/02Details ; Arrangements for supplying electrical power along data transmission lines
    • H04L25/14Channel dividing arrangements in which a single bit stream is divided between several baseband channels and reassembled at the receiver
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/426Characteristics of or Internal components of the client
    • H04N21/42607Characteristics of or Internal components of the client for processing the incoming bitstream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/426Characteristics of or Internal components of the client
    • H04N21/42607Characteristics of or Internal components of the client for processing the incoming bitstream
    • H04N21/42615Characteristics of or Internal components of the client for processing the incoming bitstream involving specific demultiplexing arrangements

Abstract

A data extractor 110 extracts data which coincides with set conditions from input data. A buffer 120 stores the extracted data. A data flow controller 130 distributes the data in the buffer 120 among separate buffers 14 i (i=1 to n) and transfers the data in accordance with the set conditions. Each of the separate buffers 14 i stores the transferred data. Decoders 15 i respectively decode the data stored in the separate buffers 14 i. A buffer manager 160 manages the buffer 120, and a separate buffer manager 170 manages the separate buffers 14 i. A decoding controller 180 controls decoding performed by each of the decoders 15 i. A reproduction controller 190 provides an instruction required to select desired data and reproduce the selected data. Consequently, decoding and reproduction of a plurality of data in digital broadcasting are realized, thereby making it possible to recover, when an error occurs, from the error.

Description

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates generally to an apparatus and a method of multiple decoding, and more specifically, to apparatuses and methods of reproducing a plurality of data designated from one MPEG (Moving Picture Experts Group) transport stream composed of a plurality of encoded data.

2. Description of the Background Art

In recent years, satellite television broadcasting, cable television broadcasting and ground wave television broadcasting have been digitized, so that a broadcasting station can transmit a plurality of video and audio data. In a receiver, it is possible to receive the plurality of video and audio data, and selectively display by video and output by audio any of the data. That is, a user can select and view any one of a plurality of video and audio transmitted by the broadcasting station.

A conventional decoder used in such a receiver will be described with reference to FIGS. 7 to 9.

FIG. 7 is a block diagram showing the configuration of a conventional decoding apparatus. FIG. 8 is a diagram showing a specific example in which data representing video and audio and other data are multiplexed on an MPEG transport stream. FIG. 9 is a flow chart for explaining processing performed by the conventional decoding apparatus.

As is well known, the MPEG transport stream is a stream data string in a data format defined in the ISO/IEC13818-1 standard for data transmission and receiving, and is composed of units called packets. On the side of a transmitter, data representing a plurality of video and audio and other data are respectively stored in payload portions of the packets, and the packets are then multiplexed, to compose an MPEG transport stream (FIG. 8) for transmission toward a receiver. On the other hand, on the side of the receiver, it is possible to judge a header portion of each of the packets composing the MPEG transport stream, to selectively obtain the data representing video and audio and other data.

The conventional decoding apparatus receives the MPEG transport stream including encoded data representing a plurality of video and audio. A method of selecting the inputted MPEG transport stream is not required in describing the background art. Further, modulation and demodulation control is performed depending on a satellite, a cable, and a ground wave and hence, the description thereof is omitted herein. Consequently, the following description will be made using as a premise a state where the corresponding MPEG transport stream has already been selected.

In FIG. 7, the conventional decoding apparatus comprises a data extractor 701, a buffer 702, a decoder 703, a buffer manager 704, a decoding controller 705, and a reproduction controller 706.

First, the reproduction controller 706 instructs the decoding controller 705 to start decoding (step S901). The decoding controller 705 which has received the instruction instructs the decoder 703 to start decoding (step S902), and instructs the buffer manager 704 to start data input to the buffer 702 (step S903). The reproduction controller 706 then instructs the data extractor 701 to extract a packet having desired header information from the inputted MPEG transport stream (FIG. 8), the packet having “Header 1” in its header portion in this example (step S904).

When the extraction instruction is issued to the data extractor 701, the input of the MPEG transport stream externally supplied to the data extractor 701 is started (step S905). The data extractor 701 sequentially extracts the packets each having “Header 1” designated from the MPEG transport stream, and stores in the buffer 702 the data stored in the payload portions of the extracted packets (step S906). The decoder 703 obtains the data stored in the buffer 702, and sequentially performs the decoding (step S907). The decoder 703 confirms whether or not the decoded data, corresponding to a predetermined unit to be outputted, is ready for output (step S908). The predetermined unit to be outputted is a frame in the case of video data, for example. In the confirmation in the step S908, when the decoded data, corresponding to the predetermined unit, are not ready for output yet, the decoder 703 continues the decoding of the subsequent data (steps S905 to S907) to wait for data. When the decoded data, corresponding to the predetermined unit, are ready for output, the decoder 703 outputs the decoded data in the predetermined unit (step S909).

In the above-mentioned decoding apparatus, however, only one of the encoded data representing video and audio existing in the one MPEG transport stream can be decoded and reproduced.

Also, in the conventional decoding apparatus, there exists no method of sufficiently correcting any error which has occurred at the time of broadcasting from a broadcasting station or in a transmission path.

SUMMARY OF THE INVENTION

Therefore, an object of the present invention is to provide an apparatus and a method of multiple decoding, which makes it possible to simultaneously decode a plurality of encoded data, and to recover the decoding when an error occurred in certain decoding.

The present invention has the following features to solve the problem above.

A first aspect of the present invention is directed to a multiple decoding apparatus receiving a signal composed of a plurality of encoded data for simultaneously decoding two or more of the data, and the multiple decoding apparatus includes:

a reproduction controller for outputting various types of control information related to decoding and reproduction of the data;

a data extractor receiving the signal for extracting the two or more data designated by the control information;

a buffer storing the data extracted by the data extractor;

a buffer manager for controlling the buffer in accordance with the control information for the buffer;

a data flow controller for distributing the data stored in the buffer for each type and transferring the data in accordance with provided transfer conditions;

a plurality of separate buffers for respectively storing the data distributed and transferred by the data flow controller;

a separate buffer manager for respectively controlling the separate buffers in accordance with information related to the specification of the separate buffer;

a plurality of decoders respectively corresponding to the plurality of separate buffers for decoding the data stored in the separate buffers and outputting the decoded data; and

a decoding controller for selecting the separate buffer and the decoder which are used for the decoding in accordance with the control information, and outputting information related to the selected separate buffer, the transfer conditions based on the selected separate buffer, and an instruction to start the decoding, respectively, to the separate buffer manager, the data flow controller, and the selected decoder.

According to the first aspect, even when a single signal composed of a plurality of encoded data, for example, one MPEG transport stream is inputted, desired ones of the plurality of data can be simultaneously decoded.

Preferably,

the buffer manager outputs, when the buffer becomes full of the data, an overflow notification to the reproduction controller,

the reproduction controller outputs, upon receipt of the overflow notification, an instruction to stop the data extraction to the data extractor, and outputs an initialization instruction to the decoding controller;

the decoding controller outputs, upon receipt of the initialization instruction from the reproduction controller, an instruction to initialize all the plurality of separate buffers to the separate buffer manager, outputs to the buffer manager an instruction to initialize the buffer, and respectively outputs instructions to stop the decoding to all the plurality of decoders,

the buffer manager initializes the buffer in accordance with the initialization instruction from the decoding controller,

the separate buffer manager initializes all the plurality of separate buffers in accordance with the initialization instruction from the decoding controller, and

all the processing which is stopped is resumed after all the buffer and the plurality of separate buffers are initialized.

Even when the buffer overflows due to the occurrence of any error, therefore, it is feasible to recover unsuccessful decoding due to the error.

More preferably,

the separate buffer manager outputs, when the specific separate buffer becomes full of the data, an overflow notification that the specific separate buffer overflows to the decoding controller,

the decoding controller outputs, upon receipt of the overflow notification that the specific separate buffer overflows, an instruction to stop the data transfer to the specific separate buffer to the data flow controller, outputs an instruction to stop the decoding to the decoder corresponding to the specific separate buffer, and outputs to the separate buffer manager an instruction to initialize the specific separate buffer,

the separate buffer manager initializes the specific separate buffer in accordance with the initialization instruction from the decoding controller, and

all the processing which is stopped is resumed after the specific separate buffer is initialized.

Furthermore, preferably,

the separate buffer manager outputs, when the specific separate buffer becomes full of the data, an overflow notification that the specific separate buffer overflows to the decoding controller,

the decoding controller outputs, upon receipt of the overflow notification that the specific separate buffer overflows, an instruction to discard the data directed toward the specific separate buffer to the data flow controller, outputs an instruction to stop the decoding to the decoder corresponding to the specific separate buffer, and outputs to the separate buffer manager an instruction to initialize the specific separate buffer,

the separate buffer manager initializes the specific separate buffer in accordance with the initialization instruction from the decoding controller, and

all the processing which is stopped is resumed, and the discard of the data is released after the specific separate buffer is initialized.

Even when one or two or more separate buffers overflow due to the occurrence of any error, therefore, it is feasible to recover the decoding in which a problem occurs due to the occurrence of an error.

A second aspect of the present invention is directed to a multiple decoding method, in which a signal composed of a plurality of encoded data is inputted, to simultaneously decode two or more of the data, comprising the steps of:

inputting the signal and extracting the two or more data to be decoded and reproduced;

storing the extracted data in a buffer;

distributing the data stored in the buffer for each type and respectively storing the data in the plurality of separate buffers; and

respectively decoding the data stored in the plurality of separate buffers and outputting the decoded data.

According to the second aspect, even when a single signal composed of the plurality of encoded data is inputted, desired ones of the plurality of data can be simultaneously decoded.

Preferably,

the method further includes, when the buffer becomes full of the data, the steps of

stopping extraction and decoding of the data,

initializing all the buffer and the plurality of separate buffers, and

resuming all the processing which is stopped after all the buffer and the plurality of separate buffers are initialized.

Even when the buffer overflows due to the occurrence of any error, therefore, it is feasible to recover unsuccessful decoding due to the error.

More preferably,

the method further includes, when the specific separate buffer becomes full of the data, the steps of

stopping the distribution of the data into the specific separate buffer and the decoding of the data stored in the specific separate buffer,

initializing the specific separate buffer; and

resuming all the processing which is stopped after the specific separate buffer is initialized.

Furthermore, preferably,

the method further includes, when the specific separate buffer becomes full of the data, the steps of

discarding the data directed toward the specific separate buffer,

stopping the decoding of the data stored in the specific separate buffer,

initializing the specific separate buffer, and

resuming all the processing which is stopped after the specific separate buffer is initialized, and releasing the discard of the data.

Even when one or two or more separate buffers overflow due to the occurrence of any error, therefore, it is feasible to recover unsuccessful decoding due to the error.

These and other objects, features, aspects and advantages of the present invention will become more apparent from the following detailed description of the present invention when taken in conjunction with the accompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram showing the configuration of a multiple decoding apparatus according to an embodiment of the present invention;

FIGS. 2 and 3 are flow charts showing the procedure for processing performed by the multiple decoding apparatus according to the embodiment of the present invention;

FIG. 4 is a flow chart showing the procedure for processing in a case where a buffer 120 overflows;

FIGS. 5 and 6 are flow charts showing the procedure for processing in a case where a separate buffer 14 i overflows;

FIG. 7 is a block diagram showing the configuration of a conventional decoding apparatus;

FIG. 8 is a diagram for explaining an MPEG transport stream; and

FIG. 9 is a flow chart showing the procedure for processing performed by the conventional decoding apparatus.

DESCRIPTION OF THE PREFERRED EMBODIMENT

Referring now to the drawings, description is made of a multiple decoding apparatus provided by the present invention.

FIG. 1 is a block diagram showing the configuration of a multiple decoding apparatus according to an embodiment of the present invention. FIGS. 2 to 6 are flow charts for explaining the procedure for processing in a multiple decoding method respectively carried out by the multiple decoding apparatus according to the present embodiment.

Description is now made of the outline of the configuration of the multiple decoding apparatus according to the present embodiment.

In FIG. 1, the multiple decoding apparatus according to the present embodiment comprises a data extractor 110, a buffer 120, a data flow controller 130, n (n is an arbitrary integer) separate buffers 141 to 14 n, n decoders 151 to 15 n, a buffer manager 160, a separate buffer manager 170, a decoding controller 180, and a reproduction controller 190.

The data extractor 110 outputs data which coincides with conditions set from inputted data. The buffer 120 temporarily stores the data extracted by the data extractor 110. The data flow controller 130 respectively transfers the data inputted from the buffer 120 to the separate buffers 141 to 14 n in accordance with the set conditions. The separate buffers 141 to 14 n are prepared for the decoders 151 to 15 n, to store the data transferred from the data flow controller 130. The decoders 151 to 15 n respectively decode the data stored in the separate buffers 141 to 14 n. The buffer manager 160 manages the buffer 120. The separate buffer manager 170 respectively manages the separate buffers 141 to 14 n. The decoding controller 180 respectively controls the decoding performed by the decoders 151 to 15 n. The reproduction controller 190 provides an instruction to select, out of the data inputted to the data extractor 110, the data to be decoded and reproduce the selected data.

Referring now to FIGS. 2 to 6, description is made of the multiple decoding method respectively carried out by the multiple decoding apparatus according to the present embodiment.

Description is herein made, taking as an example a case where data respectively stored in three packets using “Header 1”, “Header 2” and “Header 3” as their header portions are reproduced. That is, in FIG. 2, m=3.

In this case, the reproduction controller 190 outputs a decoding start instruction to the decoding controller 180 in order to reproduce the data stored in the three packets (step S201). The decoding controller 180 which has received the instruction selects, out of the decoders 151 to 15 n, the three arbitrary decoders, which are not used at that time. In this example, the decoders 151 to 153 shall be selected (steps S202 and S203). When a required number of decoders cannot be selected because they have already been used for another decoding, the decoding may be caused to wait until the all required number of decoders can be selected, or, if any decoder can be selected, the decoding in the selected decoders may be performed in advance.

The decoding controller 180 respectively instructs the selected three decoders 151 to 153 to start the decoding (step S204). Further, the decoding controller 180 outputs, in order to respectively issue data input start instructions to the separate buffers 141 to 143 connected to the selected decoders 151 to 153, an instruction to start data input to the separate buffer manager 170 (step S205).

The decoding controller 180 then sets in the data flow controller 130 conditions for transferring the data stored in the packet having “Header 1”, the data stored in the packet having “Header 2”, and the data stored in the packet having “Header 3”, respectively, to the separate buffer 141, the separate buffer 142, and the separate buffer 143 (step S206). The data flow controller 130 starts the transfer of the data stored in the buffer 120 to each of the separate buffers 141 to 143 on the basis of the conditions set by the decoding controller 180 (step S207). The decoding controller 180 then instructs the buffer manager 160 to start data input to the buffer 120 (step S208). Thereafter, the reproduction controller 190 instructs the data extractor 110 to extract the packets respectively having “Header 1”, “Header 2” and “Header 3” in their header portions (step S209). Consequently, the input of the MPEG transport stream externally supplied to the data extractor 110 is started (step S210).

When the data extractor 110 sequentially extracts the packets designated from the MPEG transport stream in accordance with the instruction received from the reproduction controller 190, the buffer manager 160 checks, when the data stored in the payload portions of the packets are stored in the buffer 120, whether or not the buffer 120 overflows (step S301). The decoding performed in the following manner differs depending on the presence or absence of the overflow of the buffer 120.

When the buffer 120 does not overflow (No in step S302), the data extractor 110 stores the extracted data in the buffer 120 (step S303). Subsequently, the data flow controller 130 sequentially reads out the stored data from the buffer 120 (step S304), and respectively specifies the separate buffers 14 i (i=1 to 3 in this example) at destinations of transfer in accordance with the set conditions (step S305). When the data read out is the data stored in the packet having “Header 1”, for example, the separate buffer 141, which is the destination of transfer of the data, is specified.

On the other hand, when the buffer 120 overflows (Yes at step S302), the buffer manager 160 notifies the reproduction controller 190 that the buffer 120 overflows (step S401). The reproduction controller 190 which has been notified instructs the data extractor 110 to stop the data extraction (step S402), and then instructs the decoding controller 180 to stop the decoding by all the decoders (step S403). The decoding controller 180 instructs the data flow controller 130 to stop the data transfer to all the separate buffers 141 to 14 n (step S404), and instructs the buffer manager 160 to initialize the buffer 120 (step S405). The decoding controller 180 which has received the instruction issues an instruction to stop the decoding by all the decoders 151 to 15 n (step S406), and then instructs the separate buffer manager 170 to initialize all the separate buffers 141 to 14 n (step S407).

When the multiple decoding apparatus is entirely initialized by the processing, the processing from the step in which the decoding start instruction is outputted from the reproduction controller 190 (step S201) to the step in which the separate buffer 14 i is specified (step S305) is performed again.

The separate buffer manager 170 then checks, when the data flow controller 130 stores in the specified separate buffer 14 i the data read out of the buffer 120, whether or not the separate buffer 14 i overflows (step S306). The decoding differs, as described below, depending on the presence or absence of the overflow of the separate buffer 14 i.

First when the separate buffer 14 i does not overflow (No in step S307), the data flow controller 130 stores the read data in the separate buffer 14 i (step S308). The decoder 15 i decodes the data, when the data is stored in the separate buffer 14 i (step S309). The decoder 15 i checks whether or not the decoded data, corresponding to a predetermined unit to be outputted, are ready for output (step S310). When the decoded data are not ready for output, the decoder 15 i enters a stand-by state until the subsequent data arrives. When the decoded data are ready for output, the decoder 15 i outputs the decoded data in the predetermined unit (step S311).

Although description is herein made of a case where the decoded data are not outputted until they correspond to the predetermined unit to be outputted, the decoded data may be outputted as they are.

On the other hand, when the separate buffer 14 i overflows (Yes at step S307), two methods, described below, are considered as processes which can be carried out by the multiple decoding apparatus:

(Process 1)

The separate buffer manager 170 notifies the decoding controller 180 that the separate buffer 14 i overflows (step S501). The decoding controller 180 which has been notified instructs the data flow controller 130 to stop the data transfer from the buffer 120 to the separate buffer 14 i (step S502). The data flow controller 130 which has received the instruction stops the data transfer from the buffer 120 to the separate buffer 14 i (step S503). During the stop, the data outputted from the data extractor 110 are stored in the buffer 120.

The data continues to be stored in the buffer 120 in a time period elapsed from the time when the data transfer by the data flow controller 130 is stopped until the data transfer is resumed. Accordingly, the size S1(bit) of the buffer 120 must be determined so as to satisfy the following relational expression:
S1>S2+RATE*T

Here, assume that RATE(bit/sec) is the transfer rate of the data received from the data extractor 110 by the buffer 120, S2(bit) is the size of the data stored in the buffer 120 the moment the data flow controller 130 transfers the data, and T(sec) is a time period elapsed from the time when the data transfer by the data flow controller 130 is stopped until the data transfer is resumed.

The decoding controller 180 then instructs the decoder 15 i to stop the decoding (step S504), and further instructs the separate buffer manager 170 to initialize the separate buffer 14 i (step S505). The separate buffer manager 170 which has received the instruction initializes the separate buffer 14 i (step S506). After the initialization, the decoding controller 180 instructs the decoder 15 i to start the decoding again (step S507), and instructs the separate buffer manager 170 to start data input to the separate buffer 14 i (step S508). The decoding controller 180 instructs the data flow controller 130 to resume the data transfer (step S509), so that the data transfer from the buffer 120 to the separate buffer 14 i is resumed.

Thereafter, the processing in the step S210 and the subsequent steps is repeatedly performed.

(Process 2)

The separate buffer manager 170 notifies the decoding controller 180 that the separate buffer 14 i overflows (step S601). The decoding controller 180 which has been notified instructs the data flow controller 130 to discard the data read out of the buffer 120 to the separate buffer 14 i (step S602). The data flow controller 130 which has received the instruction discards the corresponding data (step S603).

The decoding controller 180 then instructs the decoder 15 i to stop the decoding (step S604), and instructs the separate buffer manager 170 to initialize the separate buffer manager 14 i (step S605). The separate buffer manager 170 which has received the instruction initializes the separate buffer 14 i (step S606). After the initialization, the decoding controller 180 instructs the decoder 15 i to resume the decoding (step S607), and instructs the separate buffer manager 170 to resume the data input to the separate buffer 14 i from the buffer 120 (step S608). The decoding controller 180 then outputs to the data flow controller 130 an instruction to resume the data transfer of the corresponding data to the separate buffer 14 i (step S609).

Thereafter, the processing in the step S210 and the subsequent steps is repeatedly performed.

Although in the description of the (Process 2), the subsequent data input processing is performed upon recovering the separate buffer 14 i which overflows after the data is discarded in the data flow controller 130, the subsequent data input processing may be performed asynchronously with overflow recovery processing after the data is discarded.

As described in the foregoing, in the multiple decoding apparatus and method according to one embodiment of the present invention, a plurality of encoded data can be simultaneously decoded. Further, even when the buffer 120 or the separate buffers 141 to 14 n overflow due to the occurrence of any error, it is feasible to recover unsuccessful decoding due to the error.

Although description was made, taking as an example a case where the signal to be inputted is the MPEG transport stream, the signal to be inputted is not limited to the same. The signal to be inputted may be another signal, provided that it has identification information for identifying a plurality of data and has such a format that the plurality of data are mixed (frequency-division multiplexed, time-division multiplexed, for example).

While the invention has been described in detail, the foregoing description is in all aspects illustrative and not restrictive. It is understood that numerous other modifications and variations can be devised without departing from the scope of the invention.

Claims (4)

1. A multiple decoding apparatus for receiving a broadcasting signal composed of a plurality of encoded data and for simultaneously decoding two or more of the encoded data, the multiple decoding apparatus comprising:
a reproduction controller for outputting control information related to decoding and reproduction of data;
a data extractor for receiving the broadcasting signal and extracting at least audio data and video data which are designated by the control information;
a buffer for storing at least the audio data and the video data extracted by said data extractor;
a buffer manager for controlling said buffer in accordance with the control information for said buffer;
a data flow controller for distributing at least the audio data and the video data stored in said buffer for each data type and transferring at least the audio data and the video data in accordance with provided transfer conditions;
a plurality of separate buffers for respectively storing at least the audio data and the video data distributed and transferred by said data flow controller according to each data type;
a separate buffer manager for controlling output of at least the audio data and the video data respectively stored in said plurality of separate buffers so as to be associated with each other in accordance with information for specifying said plurality of separate buffers;
a plurality of decoders respectively corresponding to said plurality of separate buffers for decoding at least the audio data and the video data stored in said plurality of separate buffers and outputting two or more decoded data; and
a decoding controller for selecting a separate buffer and a decoder, which are used for the decoding, according to a usage status of said decoder from among said plurality of separate buffers and said plurality of decoders in accordance with the control information, and outputting information related to said separate buffer selected by said decoding controller, the transfer conditions based on said separate buffer selected by said decoding controller, and an instruction to start decoding, respectively, to said separate buffer manager, said data flow controller, and said decoder selected by said decoding controller, wherein
said separate buffer manager outputs, when a specific separate buffer becomes full of data, an overflow notification that said specific separate buffer overflows to said decoding controller,
said decoding controller outputs, upon receipt of the overflow notification that said specific separate buffer overflows, an instruction to stop data transfer to said specific separate buffer to said data flow controller, outputs an instruction to stop decoding to a decoder corresponding to said specific separate buffer, and outputs an instruction to initialize said specific separate buffer to said separate buffer manager,
said separate buffer manager initializes said specific separate buffer in accordance with the instruction to initialize said specific separate buffer from said decoding controller without initializing said buffer, and
the multiple decoding apparatus resumes all processing which was stopped as a result of said specific separate buffer becoming full after said specific separate buffer is initialized.
2. A multiple decoding apparatus for receiving a broadcasting signal composed of a plurality of encoded data and for simultaneously decoding two or more of the encoded data, the multiple decoding apparatus comprising:
a reproduction controller for outputting control information related to decoding and reproduction of data;
a data extractor for receiving the broadcasting signal and extracting at least audio data and video data which are designated by the control information;
a buffer for storing at least the audio data and the video data extracted by said data extractor;
a buffer manager for controlling said buffer in accordance with the control information for said buffer;
a data flow controller for distributing at least the audio data and the video data stored in said buffer for each data type and transferring at least the audio data and the video data in accordance with provided transfer conditions;
a plurality of separate buffers for respectively storing at least the audio data and the video data distributed and transferred by said data flow controller according to each data type;
a separate buffer manager for controlling output of at least the audio data and the video data respectively stored in said plurality of separate buffers so as to be associated with each other in accordance with information for specifying said plurality of separate buffers;
a plurality of decoders respectively corresponding to said plurality of separate buffers for decoding at least the audio data and the video data stored in said plurality of separate buffers and outputting two or more decoded data; and
a decoding controller for selecting a separate buffer and a decoder, which are used for the decoding, according to a usage status of said decoder from among said plurality of separate buffers and said plurality of decoders in accordance with the control information, and outputting information related to said separate buffer selected by said decoding controller, the transfer conditions based on said separate buffer selected by said decoding controller, and an instruction to start decoding, respectively, to said separate buffer manager, said data flow controller, and said decoder selected by said decoding controller, wherein
said separate buffer manager outputs, when a specific separate buffer becomes full of data, an overflow notification that said specific separate buffer overflows to said decoding controller,
said decoding controller outputs, upon receipt of the overflow notification that said specific separate buffer overflows, an instruction to discard encoded data directed toward said specific separate buffer to said data flow controller, outputs an instruction to stop decoding to a decoder corresponding to said specific separate buffer, and outputs an instruction to initialize said specific separate buffer to said separate buffer manager,
said separate buffer manager initializes said specific separate buffer in accordance with the instruction to initialize said specific separate buffer from said decoding controller without initializing said buffer, and
the multiple decoding apparatus resumes all processing which was stopped as a result of said specific separate buffer becoming full, and the discard of the encoded data is released after said specific separate buffer is initialized.
3. A multiple decoding method for simultaneously decoding two or more encoded data from a broadcasting signal composed of a plurality of encoded data, the multiple decoding method comprising:
selecting a plurality of decoders for performing decoding and a plurality of separate buffers corresponding to the plurality of decoders, respectively, according to usage status of the plurality of decoders;
extracting at least audio data and video data to be decoded and reproduced from the broadcasting signal;
storing at least the extracted audio data and video data in a buffer;
distributing at least the audio data and the video data stored in the buffer for each data type and respectively storing at least the audio data and the video data in the plurality of separate buffers according to each data type;
controlling output of at least the audio data and the video data stored in the separate buffers such that at least the audio data and the video data stored in the separate buffers are associated with each other; and
decoding, responsive to said controlling, at least the audio data and the video data stored in the separate buffers and outputting two or more decoded data,
wherein, when a specific separate buffer becomes full of data:
stopping said distributing of at least the audio data and the video data into the specific separate buffer and said decoding of encoded data stored in the specific separate buffer;
initializing the specific separate buffer without initializing the buffer; and
resuming all processing which was stopped when the specific separate buffer became full after said initializing of the specific separate buffer.
4. A multiple decoding method for simultaneously decoding two or more encoded data from a broadcasting signal composed of a plurality of encoded data, the multiple decoding method comprising:
selecting a plurality of decoders for performing decoding and a plurality of separate buffers corresponding to the plurality of decoders, respectively, according to usage status of the plurality of decoders;
extracting at least audio data and video data to be decoded and reproduced from the broadcasting signal;
storing at least the extracted audio data and video data in a buffer;
distributing at least the audio data and the video data stored in the buffer for each data type and respectively storing at least the audio data and the video data in the plurality of separate buffers according to each data type;
controlling output of at least the audio data and the video data stored in the separate buffers such that at least the audio data and the video data stored in the separate buffers are associated with each other; and
decoding, responsive to said controlling, at least the audio data and the video data stored in the separate buffers and outputting two or more decoded data,
wherein, when a specific separate buffer becomes full of data:
discarding encoded data directed toward the specific separate buffer;
stopping said decoding of at least the audio data and the video data stored in the specific separate buffer;
initializing the specific separate buffer without initializing the buffer; and
resuming all processing which was stopped when the specific separate buffer became full after said initializing of the specific separate buffer, and releasing the discard of the encoded data.
US09/900,168 2000-07-10 2001-07-09 Apparatus and method of multiple decoding Active 2024-01-09 US7433409B2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2000208074 2000-07-10
JP2000-208074 2000-07-10

Publications (2)

Publication Number Publication Date
US20020003845A1 US20020003845A1 (en) 2002-01-10
US7433409B2 true US7433409B2 (en) 2008-10-07

Family

ID=18704720

Family Applications (1)

Application Number Title Priority Date Filing Date
US09/900,168 Active 2024-01-09 US7433409B2 (en) 2000-07-10 2001-07-09 Apparatus and method of multiple decoding

Country Status (5)

Country Link
US (1) US7433409B2 (en)
EP (1) EP1182887A3 (en)
KR (1) KR100628619B1 (en)
CN (1) CN1173512C (en)
AU (1) AU771855B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080215343A1 (en) * 2007-03-01 2008-09-04 Hiroyuki Goto Audio decoding apparatus and audio decoding system

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3565182B2 (en) * 2001-05-11 2004-09-15 日本電気株式会社 Method and method for preventing input of variable length code from being interrupted
US7462425B2 (en) 2003-09-26 2008-12-09 Kabushiki Kaisha Toshiba Nonaqueous electrolyte secondary battery and battery module
US7707039B2 (en) * 2004-02-15 2010-04-27 Exbiblio B.V. Automatic modification of web pages
TWI237771B (en) * 2004-03-22 2005-08-11 Via Tech Inc Media player control system and control method used therein
KR100539886B1 (en) 2004-09-10 2005-12-28 삼성전자주식회사 Digital broadcasting reception apparatus and method therefor
EP1934980A1 (en) * 2005-10-11 2008-06-25 Samsung Electronics Co., Ltd. Reproducing method and apparatus to simultaneously reproduce a plurality of pieces of data
KR100917886B1 (en) 2005-10-11 2009-09-16 삼성전자주식회사 Reproducing apparatus and reproducing method
KR100929073B1 (en) * 2005-10-14 2009-11-30 삼성전자주식회사 Multi-stream reception apparatus and method in a mobile broadcast system
KR100826192B1 (en) * 2006-06-29 2008-04-30 엘지전자 주식회사 apparatus for receiving broadcasting signal and method thereof
JP2009060444A (en) * 2007-08-31 2009-03-19 Canon Inc Image decoding apparatus and method, and recording device
US20140056309A1 (en) * 2010-12-01 2014-02-27 Nokia Corporation Method and apparatus for frame transfer using virtual buffer
US20150109413A1 (en) * 2013-10-21 2015-04-23 Electronics And Telecommunications Research Institute Video reception apparatus to provide hybrid service based on transport stream system target decoder model

Citations (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5159447A (en) * 1991-05-23 1992-10-27 At&T Bell Laboratories Buffer control for variable bit-rate channel
JPH05292490A (en) 1992-04-16 1993-11-05 Sony Corp Plural moving picture voice decoding device
JPH07135659A (en) 1993-11-12 1995-05-23 Nec Corp Dynamic image decoding controller
US5646687A (en) * 1994-12-29 1997-07-08 Lucent Technologies Inc. Temporally-pipelined predictive encoder/decoder circuit and method
EP0817501A2 (en) 1996-07-04 1998-01-07 Matsushita Electric Industrial Co., Ltd. Management of multiple buffers and video decoders in progressive digital video decoder
EP0817492A2 (en) 1996-06-28 1998-01-07 Matsushita Electric Industrial Co., Ltd. Parallel video decoder
JPH10304311A (en) 1997-04-23 1998-11-13 Matsushita Electric Ind Co Ltd Video coder and video decoder
JPH1118078A (en) 1997-06-19 1999-01-22 Sony Corp Device and method for processing video signal
US6026088A (en) 1993-10-20 2000-02-15 Lsi Logic Corporation Network architecture
US6061402A (en) 1994-10-11 2000-05-09 Hitachi America, Ltd. Methods and apparatus for efficiently decoding bi-directionally coded image data
US6064795A (en) * 1995-04-08 2000-05-16 Sony Corporation Method of and apparatus for data recording, method of and apparatus for data reproduction, recording medium, and method of and apparatus for data transmission
US6263023B1 (en) * 1998-10-15 2001-07-17 International Business Machines Corporation High definition television decoder
US6332058B1 (en) * 1997-03-27 2001-12-18 Sony Corporation Information reproduction apparatus and information reproduction method
US6408436B1 (en) * 1999-03-18 2002-06-18 Next Level Communications Method and apparatus for cross-connection of video signals
US6614990B1 (en) * 1998-11-11 2003-09-02 Mitsubishi Denki Kabushiki Kaisha Video reproducing apparatus with adjusted media change times

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0660206A (en) * 1992-08-07 1994-03-04 Sharp Corp Execution control method for data flow program
JPH1141563A (en) * 1997-07-22 1999-02-12 Toshiba Ave Corp Digital video image reproduction system
JP3415398B2 (en) * 1997-08-07 2003-06-09 パイオニア株式会社 Audio signal processing device

Patent Citations (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5159447A (en) * 1991-05-23 1992-10-27 At&T Bell Laboratories Buffer control for variable bit-rate channel
JPH05292490A (en) 1992-04-16 1993-11-05 Sony Corp Plural moving picture voice decoding device
US5343250A (en) 1992-04-16 1994-08-30 Sony Corporation Multiple picture/sound signals decoding apparatus
US6026088A (en) 1993-10-20 2000-02-15 Lsi Logic Corporation Network architecture
JPH07135659A (en) 1993-11-12 1995-05-23 Nec Corp Dynamic image decoding controller
US5721590A (en) 1993-11-12 1998-02-24 Nec Corporation Moving picture decoding control system
US6061402A (en) 1994-10-11 2000-05-09 Hitachi America, Ltd. Methods and apparatus for efficiently decoding bi-directionally coded image data
US5646687A (en) * 1994-12-29 1997-07-08 Lucent Technologies Inc. Temporally-pipelined predictive encoder/decoder circuit and method
US6064795A (en) * 1995-04-08 2000-05-16 Sony Corporation Method of and apparatus for data recording, method of and apparatus for data reproduction, recording medium, and method of and apparatus for data transmission
EP0817492A2 (en) 1996-06-28 1998-01-07 Matsushita Electric Industrial Co., Ltd. Parallel video decoder
US6028632A (en) * 1996-07-04 2000-02-22 Matsushita Electric Industrial Co., Ltd. Management of multiple buffers and video decoders in progressive digital video decoder
EP0817501A2 (en) 1996-07-04 1998-01-07 Matsushita Electric Industrial Co., Ltd. Management of multiple buffers and video decoders in progressive digital video decoder
US6332058B1 (en) * 1997-03-27 2001-12-18 Sony Corporation Information reproduction apparatus and information reproduction method
JPH10304311A (en) 1997-04-23 1998-11-13 Matsushita Electric Ind Co Ltd Video coder and video decoder
JPH1118078A (en) 1997-06-19 1999-01-22 Sony Corp Device and method for processing video signal
US6263023B1 (en) * 1998-10-15 2001-07-17 International Business Machines Corporation High definition television decoder
US6614990B1 (en) * 1998-11-11 2003-09-02 Mitsubishi Denki Kabushiki Kaisha Video reproducing apparatus with adjusted media change times
US6408436B1 (en) * 1999-03-18 2002-06-18 Next Level Communications Method and apparatus for cross-connection of video signals

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Sarginson, P.A.: "MPEG-2: A Tutorial Introduction To The Systems Layer", IEE Colloquium On 'MPEG-2-What It Is and What It Isn't' (Digest No. 1995/012) IEE London, UK, 1995, pp. 4/1-13, XP006529329.

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080215343A1 (en) * 2007-03-01 2008-09-04 Hiroyuki Goto Audio decoding apparatus and audio decoding system

Also Published As

Publication number Publication date
AU771855B2 (en) 2004-04-01
AU5430301A (en) 2002-01-17
EP1182887A3 (en) 2005-09-14
CN1173512C (en) 2004-10-27
US20020003845A1 (en) 2002-01-10
CN1333631A (en) 2002-01-30
KR100628619B1 (en) 2006-09-26
EP1182887A2 (en) 2002-02-27
KR20020005970A (en) 2002-01-18

Similar Documents

Publication Publication Date Title
US5898695A (en) Decoder for compressed and multiplexed video and audio data
KR100915105B1 (en) Robust reception of digital broadcast transmission
EP0837609B1 (en) Splicing compressed packetized digital video streams
JP3305183B2 (en) Digital broadcast receiving terminal apparatus
US7110412B2 (en) Method and system to transport high-quality video signals
EP0822722B1 (en) MPEG packet header compression for television modems
JP3652176B2 (en) Digital broadcast receiving apparatus and semiconductor device thereof
US6477185B1 (en) Demultiplexing and decoding apparatus for coded audio and video data
EP0798929B1 (en) MPEG coded picture decoding apparatus with error correction
EP0899964B1 (en) Data transmitting device, data receiving device, and data recording device
US6269107B1 (en) Device and method for demultiplexing transport stream
RU2273111C2 (en) Method for transformation of packet stream of information signals to stream of information signals with time stamps and vice versa
CN1097955C (en) An adio frequency/video/data component system bus
US6185369B1 (en) Apparatus and method for synchronously reproducing multi-angle data
CN100488255C (en) Compression apparatus and method for a video signal
JP5015708B2 (en) Partial transport stream transmission apparatus, partial transport stream transmission method, and transport stream reception apparatus
KR100455496B1 (en) Method for receiving compressed video signals
US5648960A (en) Recording/reproducing apparatus for data packet stream
US6122668A (en) Synchronization of audio and video signals in a live multicast in a LAN
US5856975A (en) High speed single chip digital video network apparatus
ES2277464T3 (en) Intermediate decoder memory for a continuous video and method flow receiver.
KR100547930B1 (en) Apparatus and method for receiving TV
CN1242625C (en) Digital video broadcast
US20040260823A1 (en) Simultaneously transporting multiple MPEG-2 transport streams
US5887187A (en) Single chip network adapter apparatus

Legal Events

Date Code Title Description
AS Assignment

Owner name: MATSUSHITA ELECTRIC INDUSTRIAL CO., LTD., JAPAN

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:KAMIYA, AKIRA;REEL/FRAME:011981/0310

Effective date: 20010703

STCF Information on status: patent grant

Free format text: PATENTED CASE

FPAY Fee payment

Year of fee payment: 4

AS Assignment

Owner name: PANASONIC INTELLECTUAL PROPERTY CORPORATION OF AME

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:PANASONIC CORPORATION;REEL/FRAME:033033/0163

Effective date: 20140527

FPAY Fee payment

Year of fee payment: 8

AS Assignment

Owner name: SOVEREIGN PEAK VENTURES, LLC, TEXAS

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:PANASONIC INTELLECTUAL PROPERTY CORPORATION OF AMERICA;REEL/FRAME:047914/0784

Effective date: 20181012