WO2000046995A1 - Encoding system, encoding method, decoding system, decoding method, multiplexing device, multiplexing method, display system and display method - Google Patents
Encoding system, encoding method, decoding system, decoding method, multiplexing device, multiplexing method, display system and display method Download PDFInfo
- Publication number
- WO2000046995A1 WO2000046995A1 PCT/JP2000/000629 JP0000629W WO0046995A1 WO 2000046995 A1 WO2000046995 A1 WO 2000046995A1 JP 0000629 W JP0000629 W JP 0000629W WO 0046995 A1 WO0046995 A1 WO 0046995A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- elementary stream
- encoding
- stream
- video data
- information
- Prior art date
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/4342—Demultiplexing isochronously with video sync, e.g. according to bit-parallel or bit-serial interface formats, as SDI
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/172—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/177—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a group of pictures [GOP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/46—Embedding additional information in the video signal during the compression process
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/70—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression 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/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/236—Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
- H04N21/23602—Multiplexing isochronously with the video sync, e.g. according to bit-parallel or bit-serial interface formats, as SDI
-
- 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/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/85—Assembly of content; Generation of multimedia applications
- H04N21/854—Content authoring
- H04N21/8547—Content authoring involving timestamps for synchronizing content
Definitions
- the present invention relates to an encoding system for encoding input video data and a decoding system for decoding an encoded stream.
- This MPEG technology is a coding technology that can improve compression efficiency by using a predictive coding method between pictures.
- the MPEG standard employs a plurality of predictive codings that combine intra-frame prediction and frame prediction, and according to the prediction method, each picture is an I-picture (Intra Picture) P-picture (The encoding process is performed using any of the picture types of Predictive Picture or B-picture (Bidreactually Predictive Picture).
- An I-picture is a picture that has not been predicted from other victims and has been subjected to intra-frame coding.
- a P-picture has a temporally previous (past) I-picture or B-picture is a picture that has been subjected to inter-frame forward prediction coding from a P-picture, and a B-picture is composed of a temporally preceding (past) I picture or P picture and a temporally subsequent (future) I picture or P picture. This is a picture that has been bidirectionally predicted coded from bidirectional pictures.
- the MPEG encoders 11 to 19 generate encoded streams by encoding the received source video programs V1 to V9 based on the above-mentioned MPEG standard. This encoded stream is also called an elementary stream.
- the bucketizers 21 to 29 receive the elementary stream output from the MPEG encoders 11 to 19, respectively, and generate a bucketized elementary stream (PES) by packetizing the elementary stream. .
- PES bucketized elementary stream
- the transport stream generation circuits (TS Gen) 31 to 39 are composed of a transport stream bucket of 188 bytes from the packetized elementary stream output from the packetizers 21 to 29. Each stream is generated individually.
- STD Buffers 41 to 44 receive the transport stream output from the transport stream generation circuit and perform buffering.
- This STD buffer is a buffer provided for the purpose of simulation so that the reception buffer on the MPEG decoder side does not overflow or underflow, and is a fixed-capacity buffer determined by the MPEG standard. .
- the multiplexing circuit 40 receives the transport streams from the system target decoder buffers 41 to 44, respectively, and performs multiplexing processing for scheduling. Next, with reference to FIG. 2, the bucketing process of the packetizers 21 to 29 of the multiplexing system described in FIG. 1 and the delay generated in the packetizing process will be described in detail.
- FIG. 2A shows the picture order of the source video data supplied to the MPEG encoder.
- the source video data is represented by I, B, B, P, B , B, P,... Shows a general example of performing an encoding process with a GOP structure.
- FIG. 2B shows the order of the pictures in the encoded stream (elementary stream) encoded by the MPEG encoder.
- B-picture B2 and B-picture B3 are pictures that have been predictively coded from both the I-picture I1 and the P-picture P4, and are therefore included in the coded stream.
- the order of the pictures to be obtained is I, P, B, B, P, B, B, P,.
- FIG. 2C shows the bucketized elementary stream (PES) generated by the bucketizer.
- the packetizer is a circuit for packetizing the coded stream output from the encoder and adding a PES header to the packet, so that the picture order in the bucketized elementary stream is output from the encoder. Is the same as the order of the encoded streams.o
- the bucketing process performed by the bucketizer does not require much time. However, as can be understood by comparing FIG. 2B and FIG. 2C, the bucketized elementary stream is delayed by four frames with respect to the elementary stream. The reason for this delay will be described in detail below.
- the timing of the decoding process of each picture in the MPEG decoder is defined by a decoding time stamp (DTS), and the display timing of the decoded video data is presented. It is stipulated in the Data Time Stamp (PTS). Therefore, the MPEG decoder decodes each picture of the encoded stream at the timing based on this DTS. The channel must be decoded, and the decoded video data must be output at a timing based on the PTS.
- DTS decoding time stamp
- PTS Data Time Stamp
- the MPEG standard stipulates that a PTS and a DTS must be set for each picture when transmitting or multiplexing an encoded stream. . Further, the MPEG standard has a provision that the PTS and DTS information must be described in a PES header. That is, the packetizer that generates the packetized elementary stream must generate PTS and DTS.
- the first received picture I1 is an I picture, it is easy to determine PTS because it is a picture that must be displayed first. For example, as an example, let PTS of this victim II be "1".
- the second picture P 4 received after the first picture I 1 is a P picture.
- the P picture P4 must be displayed after a plurality of B pictures following the P picture P4.
- the bucket P1 receives the picture P4 (t5), it does not know how many B-pictures are continuously transmitted after the picture P4. Therefore, at the time point when the picture P4 is received (t5), the PTS of the picture P4 cannot be determined. Therefore, the bucketizer buffers the first picture I1 and the second picture P4. This buffering process must be continued until the PTS of the picture P4 can be determined.
- the PTS can be determined immediately. That is, the PTS of picture B 2 is “2”, and the PTS of picture B 3 is “3”. Since the fifth picture P7 is a P-picture, at the time when the P-picture is received (t8), the packetizer recognizes that two B-pictures are consecutive after the second picture P4. This can be known for the first time, and when the P picture P 7 is received (t 8), the PTS of the picture P 4 can be determined to be “4”.
- the bucketizer when the bucketizer receives the P picture P7 (t8), the GOP structure (1, ⁇ , ⁇ , ⁇ , ⁇ %) In which two B pictures exist between the I picture and the P picture ⁇ ), And the PTS of all pictures can be determined.
- the packetizer In order to perform the PTS determination processing as described above, the packetizer must buffer the elementary stream received at time t4 until time t8. In other words, a delay of four frames occurs in the process for determining the PTS.
- the number of frame memories must be designed by assuming the maximum number of B-pictures existing between the I-picture and the P-picture. As an example, assuming that the maximum number of B pictures is “5” as a reasonable assumed number, as shown in Fig. 1, in the case of a multiplexing system that multiplexes 9 video programs, 9 Bucket sizer Since it becomes necessary, a total of 45 frame memories must be prepared. As a result, there has been a problem that equipment is expensive to realize such a multiplexing system.
- the video data collected at the interview site was transmitted to each home by transmission from the interview site to the main broadcast station, transmission within the main broadcast station, and transmission from the main broadcast station to the local stations.
- processing for generating a packetized elementary stream is required.
- a delay in generating the packetized Eleman evening stream is generated and accumulated, resulting in a large delay. Disclosure of the invention
- the present invention relates to an encoding system for encoding input video data and a multiplexing system for multiplexing a plurality of encoded streams. Specifically, it proposes an encoding system and a decoding system that make it possible to packetize an encoded stream without delay.
- An object of the present invention is to provide a system and a method capable of preventing occurrence of a delay due to a generation process.
- the MPEG encoder generates PTS-c 011] 1: and 0-3-01-011111: based on the information obtained from the number of fields of the input video data, and stores the data in the encoded stream. Describe as picture order information.
- the packetizer for generating the bucket-sized elementary stream extracts the PTS_count and the DTS_count described in the encoded stream, and extracts the PTS 0 011111: and 0 count 3 count. Based on the presentation Generate a time stamp and a decoding time stamp, and add them to PES as headers.
- an elementary stream is generated by encoding the input video data, and information about the picture order of the elementary stream is generated during the elementary storm.
- the elementary stream is described, the elementary stream is received, and the time stamp information related to the elementary stream is generated from the information related to the first order described in the elementary stream.
- an elementary stream is generated by encoding the input video data, and information about a picture order of the elementary stream is included in the elementary stream. Is described, and the elementary stream is packetized on the basis of the information about the victim order described in the elementary stream.
- an elementary stream is generated by encoding the input video data, and information about a picture order of the elementary stream is included in the elementary stream. Described and packetized elementary stream based on the information about the victim order described in the elementary stream.
- an elementary stream is generated by encoding the input video data, and decoding and / or presentation of the elementary stream is performed in the elementary stream.
- the time stamp information relating to the processing is multiplexed, the elementary stream is received, and a stream process relating to the elementary stream is performed based on the time stamp information described in the elementary stream.
- a plurality of elementary stream streams are generated by encoding a plurality of input video streams, and the decoding process of the elementary stream is performed.
- And / or timestamp information related to the presentation process is described in each elementary stream, a plurality of elementary streams are received, and based on the timestamp information added to each elementary stream, a plurality of timestamps are provided.
- an input video stream is encoded to generate an elementary stream, and a packetized elementary stream is generated from the elementary stream.
- the information for generating the time stamp described in the header of the ketized elementary stream is described in the elementary stream.
- a multiplexing apparatus for multiplexing a plurality of elementary streams generated by encoding a plurality of input video streams, wherein a plurality of elementary streams are respectively associated with a plurality of elementary streams.
- a decoding time stamp included in the encoded stream is extracted and a decoding time stamp is extracted.
- the decoding time stamp is information generated based on the number of fields of the source video data based on the encoded video stream.
- a display system for generating a decoded video data by decoding an encoded stream generated by encoding the source video data, and displaying the decoded video data
- the presentation time stamp is extracted by extracting the presentation time stamp, decoding the encoded stream to generate the decoded video data, and displaying the decoded video data according to the presentation time stamp.
- the information is generated based on the number of fields in the source video data.
- FIG. 1 is a block diagram showing a configuration of a multiplexing system of a system having a conventional MPEG encoder and MPEG decoder.
- FIG. 2 is a schematic diagram illustrating the structure of each GOP picture.
- FIG. 3 is a schematic block diagram showing the flow of video data overnight.
- FIG. 4 is a block diagram showing a configuration of an encode / decode system according to the present invention.
- FIG. 5 is a schematic diagram showing an elementary stream and a transport stream.
- FIG. 6 is a block diagram showing a configuration of the MPEG encoder.
- FIG. 7 is a schematic diagram used to explain the 2-2 pull-down process.
- FIG. 8 is a schematic diagram showing an entire pixel area and an active video area in a video image.
- FIG. 9 is a schematic diagram showing the structure of each frame.
- FIG. 10 is a schematic diagram illustrating the syntax of video seq u ence
- FIG. 11 is a schematic diagram illustrating the syntax of sequence header.
- FIG. 12 is a schematic diagram illustrating the syntax of sequence exten tion.
- FIG. 13 is a schematic diagram illustrating the syntax of extension and user data.
- FIG. 14 is a schematic diagram illustrating syntax of user data.
- FIG. 15 is a schematic diagram illustrating the syntax of dat a ID.
- FIG. 16 is a schematic diagram showing the synoptics of the V-Phase.
- FIG. 17 is a schematic diagram illustrating the syntax of H-Phase.
- FIG. 18 is a schematic diagram illustrating the syntax of timecode.
- FIG. 19 is a schematic diagram illustrating the syntax of time code.
- FIG. 20 is a schematic diagram illustrating the syntax of picture orde r.
- FIG. 21 is a schematic diagram illustrating the syntax of anc i l lary d a ta
- FIG. 22 is a schematic diagram illustrating the syntax of the group of image header.
- FIG. 23 is a schematic diagram showing the syntax of the picture HEADER.
- FIG. 24 is a schematic diagram illustrating the syntax of the picture sequence extension.
- FIG. 25 is a schematic diagram illustrating the syntax of the picture data.
- FIG. 26 is a schematic diagram illustrating each sequence of a sequence layer, a GOP layer, and a picture layer.
- FIG. 27 is a block diagram illustrating a configuration of a multiplexing unit on the encoder side.
- FIG. 28 is a schematic diagram for explaining a method of generating a PES packet and a Ts bucket from source video data.
- FIG. 29 is a schematic diagram illustrating the data configuration of the PES header.
- FIG. 30 is a schematic diagram showing an arrangement of each picture.
- FIG. 31 is a block diagram showing a configuration of the MPEG decoder. BEST MODE FOR CARRYING OUT THE INVENTION
- Figure 4 shows a broadcasting system consisting of a main broadcasting station 141 and a local broadcasting station 171.
- FIG. 4 shows a broadcasting system consisting of a main broadcasting station 141 and a local broadcasting station 171.
- the main broadcast station 141 includes a plurality of editing processing studios 1 45A-145D, a plurality of MPEG encoders 142A-142D, a plurality of MPEG decoders 144A-144D, at least one multiplexer 162A, and at least one demultiplexer. 161 A.
- the broadcast station 141 includes an SDTI-Serial Data Transceiver Interface (Content Package) network 150 defined as SMPTE 305M, each MP EG encoder, and each MP EG decoder.
- the multiplexer 162A and the demultiplexer 161A can transmit and receive the elementary stream via the SDTI-CP network 150.
- SDTI-CP is a communication format proposed for transmitting the elementary stream of MPEG, and is defined as SMPTE 305M.
- the elementary stream transferred on the SDTI-CP network 150 is expressed as ES-over-SDTI-CP.
- Editing Z Processing Studio 145A-145D is a studio equipped with a video server, video editing machine, special effects device, video switcher, and so on. After receiving the decoded baseband video data from the MPEG decoder, editing and image processing the baseband video data, the edited video data or image processing video data is processed. Output to MPEG encoder. That is, the editing / processing studios 145A to 145D are processing units for editing baseband video signals and performing image processing, not for stream processing of an encoded stream.
- the MPEG encoders 142A to 42D receive a single-span input video signal from the editing / processing studios 145A to 145D, encode the input video data in accordance with the above-described MPEG standard, and perform an elementary stream. (ES).
- MP EG encoder The generated elementary stream is supplied to any one of the MPEG decoders 144A to 144D, the MPEG decoder or the multiplexer 162A, via the SDTI-CP network 150.
- the MPEG decoders 144A to 144D receive the elementary stream supplied from the MPEG encoders 142A to 142D or the demultiplexer 161A via the SDT I-CP network 150, and decode the MPEG-1 stream based on the MPEG standard. I do.
- the multiplexer 162A is a circuit for generating a single transport stream by multiplexing a plurality of video programs produced in the main broadcasting station 141 for distribution to the local station 171 or each home. is there. More specifically, a packetized elementary stream is received by receiving a plurality of elementary stream streams corresponding to a plurality of video programs via the SDT I-CP network 150 and converting each elementary stream into a bucket. And a transport stream packet is generated from the bucketized elementary stream. By multiplexing the transport stream packets generated from the plurality of video programs, the multiplexer 162A generates a multiplexed transport stream. The configuration and processing of the multiplexer 162A will be described later.
- the multiplexed transport stream generated by the multiplexer 162A is transmitted to the demultiplexer 161B of the local station 171 via a network such as an ATM or a satellite line. Supplied.
- the local station 171 is different in scale from the main station 141, but has the exact same system configuration, so that the detailed description is omitted.
- the multiplexed transport stream generated by the multiplexer 162A is transmitted to the MPEG decoder 17OA provided in the set-up box of each home by the ATM.
- the video data is supplied via a network such as a satellite line and decoded, and supplied to the TV set.
- Fig. 5 shows the difference between an elementary stream transmitted via an SDTI-CP network in a broadcasting station and a transport stream transmitted via a public network.
- the SDT I-CP network 150 is a communication format that enables a transmission rate of 270 Mbps based on Serial Data Interface (SDI) standardized by SMP TE 259 M. It can transmit MPEG Elementary Stream (ES) as it is, and is suitable for closed networks such as in studios. More specifically, as shown in Fig. 5A, video data "V” and audio data "A” are packed in units of one frame of video data, and are separated by frame boundaries separated by a frame sync (dotted line). Editing can be done easily.
- SDI Serial Data Interface
- ES MPEG Elementary Stream
- video data When transmitting between broadcast stations or using a public network, video data is transmitted in the form of a transport stream. As shown in Fig. 5B, all contents such as video data and audio are transported as 188 bytes, as shown in Fig. 5B, so that the transport stream can be transmitted over a public network with a small transmission capacity. And then transmitted. Similarly, “V” indicates a transport stream bucket for video data, “A” indicates a transport stream packet for audio data, and blank indicates a bucket of free data. With reference to FIG. 6, the MPEG encoders 142A to 142D will be described.
- the input video data is a 30 Hz video data generated by performing a 3-2 pull-down process on the source video data having a 24 Hz frame rate. It is evening.
- each frame Fl, F2, ... has two fields (top field t1, t2, ... and bottom field b1 , B2,...), And in the 3-2 pull-down processing, as shown in FIG. 7A, the top field t1 is repeated in the first frame F1 which is the top field first.
- One frame is composed of three fields by generating a repeat field t 1 ′, and a repeat field b 3 ′ is generated by repeating the bottom field b 3 in the third frame F 3 which is the bottom field first I do.
- a frame with a frame rate of 24 Hz is repeated by alternately repeating a frame with a 3-field configuration and a frame with a 2-field configuration, as shown in FIG. 7A. It can generate video data with a high frame rate of 30 Hz.
- the input video data is an example of the input video data generated by the 3-2 pull-down processing.
- the present invention provides a video data in which the input video data is 3-2 pulled down.
- the present invention is not limited to the embodiment described above. Even if the original source video is video data having a frame rate of 30 Hz and the video data is not subjected to the 3-2 pull-down processing, it can be applied without any problem. You can do it.
- the MPEG encoder shown in Fig. 6 has an auxiliary data separation circuit 101, a field counter 102, an inverse 3-2 pull-down circuit 103, an encoding controller 104, a motion vector detection circuit 105, and a switch circuit 1 1 1, DCT circuit 112, quantization circuit 113, inverse quantization circuit 114, inverse DCT circuit 115, addition circuit 116, memories 117 and 118, motion compensation circuit 119, arithmetic circuits 120, 121, 122, variable A long coding circuit 125 and a transmission buffer 126 are provided.
- the auxiliary data separation circuit 101 is a circuit that extracts an ancillary data from a blanking period of an input video data. Specifically, as shown in Fig. 8, ancillary data inserted during the vertical blanking period of the input video data Extract the line number in which the ancillary data is inserted. This Ansi Rallyde-evening, Teletext Day-evening, Closed Caption Day-evening,
- VITC Very Interval Code
- LTC Linear Time Code
- the auxiliary data separation circuit 101 extracts unique information included in the input video data from the input video data.
- the unique information is, for example, data indicating a position where the active video area AR2 exists with respect to the entire pixel area AR1 of the input video data, as shown in FIG.
- the number of lines indicates the start position in the vertical direction and the number of samples indicates the start position in the horizontal direction.
- the information on the vertical position of the active video area is supplied to the controller 104 as the H-phase
- the information on the horizontal position of the active video area is supplied as the H-phase.
- Examples of other unique information include the source name, shooting location, and shooting time assigned to the input video data.
- the input video data output from the auxiliary data separation unit 101 is supplied to a subsequent field counter 102.
- the field counter 102 is a circuit for counting the fields constituting each frame of the input video data for each frame.
- the field counter 102 supplies the count information for each frame to the controller 104 as a Field—ID. For example, if input video data as shown in FIG. —Since there are three fields in F1, the IDs “0”, “1” and “2” are output as count information—IDs are output, and two fields are included in frame F2. Since it exists, the field IDs “0” and “1” are output as count information.
- the field counter 102 includes two counters that are counted up by counting the fields of the input video data, and information on the count value obtained by the power counter is stored in the PT S counter and the DTS. — Output to controller 104 as counter.
- the PTS—counter is used as information to generate a presentation time stamp (PTS)
- the DTS—c 0 under is used to generate a decoding time stamp (DTS). Used as information.
- FIG. 9 is a diagram showing the frame structure of each frame of the input video data and the relationship between the PTS-counter and the DTS-counter in each frame.
- R epeat — firs t_fie 1 d flag “1” means that a repeat field must be created at the time of MPEG decoding.
- Repeat — f irst — fie 1 d flag “0” "Means that it is not necessary to create a beat field when decoding the MPEG.
- the flag of T 0 p_f ie 1 d_f irst indicates whether the first field among the fields composing the frame is the top field or the bottom field. “1” of the Top_field_f_irst flag indicates that the top field has a frame structure that is earlier in time than the bottom field. One field is longer than the top field This indicates that the frame structure is fast.
- FIG. 9A is a diagram for describing the frame structure related to the input video data described in FIG. 7A. Specifically, when decoding the first frame F1, instead of simply generating a frame consisting of a top field and a bottom field, a top field is copied and a repeat field is created. Thus, it is necessary to generate a frame consisting of three fields. Therefore, the corresponding Repeat-first-field flag is "1", and the Top_fie1d_first flag is "1".
- the flag of Repeat—first—fie 1 d is set to “0”, and the bottom field is a frame that is earlier in time than the top field. Therefore, the Top—fie 1 d—first flag is set to “0”.
- the PTS_counter is the time stamp information on which the PTS is based, it must be information that matches the frame order of the input video data. Specifically, this PTS-counter is a value generated by a counter that counts up from 0 to 127 and then returns to 0 again. Therefore, the value of the count PTS—counter changes as shown in FIG. 9B.
- the first frame F1 is an I picture, which is a picture that must be displayed first.
- the value of un ter is "0".
- the value of the PTS—counter of the third frame F 3 is obtained by adding the number of fields “2” included in the frame F 2 to the value “3” of the PTS—counter of the frame F 2.
- the value of PTS — count e r after frame F 5 is calculated similarly.
- DTS—counter is the timestamp information on which DTS is based, it must be information that matches not the frame order of the input video data but the picture order in the encoded stream.
- the value of DTS—counter of frame F 4 coded next to frame F 1 is obtained by adding the number of fields of frame F 1 “3” to the value of DTS—counter of frame F 1 “125”.
- next frame F2 to be encoded is a B-picture
- the value of DTS-counter is the same as the value of PTS-counter, and its value is "3".
- the value of DTS_counter is the same as the value of PTS_counter, and its value is “5”.
- the value of DTS-counter for frame F7 and thereafter is calculated in the same manner, the description is omitted here.
- the field counter 102 generates a PTS—coun ter and a DTS—coun ter in accordance with the rules described above and supplies the generated PTS—coun ter to the controller 104.
- the inverse 3-2 pull-down circuit 103 receives the video data output from the field counter 102 and performs an inverse 3-2 pull-down process.
- the inverse 3-2 bandwidth processing circuit 103 receives the video data of the frame rate of 30 Hz obtained by the 3-2 pull-down processing as shown in FIG. 7A, and outputs the video data of the frame rate of 24 Hz. This is a circuit for generating an overnight. Specifically, as shown in FIG.
- the inverse 3-2 pull-down processing circuit 7 removes the repeat fields t 1 ′ and b 3 ′ inserted by the 3-2 pull-down processing, thereby forming a 30 Hz frame. Rate video data into 24 Hz frame rate video data.
- the reverse pull-down processing circuit 103 analyzes the frame structure of the supplied video data, and removes only the field that is recognized as a repeat field appearing at a predetermined interval. I have to. Therefore, when analyzing the frame structure of the video data, the inverse pull-down processing circuit 103 generates a flag of “Repeat—first—fie 1 d” and “Top—fie 1 d_first” as information representing the frame structure, Supply to controller 104.
- the motion vector detection circuit 105 receives the video data output from the inverse -3-pull-down processing circuit 103 in macroblock units, and detects the image data of each frame in accordance with a predetermined sequence. , I-picture, P-picture, or B-picture. Whether the image of each frame input sequentially is processed as an I, P or B picture is predetermined based on the GOP structure specified by the operator. Motion vector detected The MV is supplied to the controller 104 and the motion compensation circuit 119.
- the switch circuit 1 1 1 switches the switch to the contact a when the intra prediction mode is set. Therefore, the macroblock data is transmitted via the DCT circuit 112, the quantization circuit 113, the variable-length coding circuit 125, and the transmission buffer 126 as in the case of the I-picture data. Transmitted to the transmission path. Further, the quantized data is supplied to a frame memory 1 17 for a backward prediction image via an inverse quantization circuit 114, an inverse DCT circuit 115, and an arithmetic unit 116.
- the switch 111 is switched to the contact b, and the image data stored in the frame memory 118 for the forward predicted image of (in this case, the I picture The image is read out, and motion compensation is performed by the motion compensation circuit 119 based on the motion vector MV supplied from the motion vector detection circuit 105. That is, when the setting of the forward prediction mode is instructed, the motion compensation circuit 1 19 outputs the read address of the memory 1 18 for the forward prediction image to the motion vector detection circuit 1 05 which is currently output. The data is read out from the position corresponding to the position of the macroblock being shifted by an amount corresponding to the motion vector, and a predicted image data is generated.
- the predicted image data output from the motion compensation circuit 119 is supplied to the arithmetic unit 120.
- the arithmetic unit 120 subtracts the predicted image data corresponding to the macroblock supplied from the motion compensation circuit 119 from the data of the macroblock of the reference image, and outputs the difference (prediction error). I do.
- This difference data is 0 (1 1 circuits 1 1 2, quantization circuit 1 1 3, is transmitted to the transmission path via variable-length coding circuit 1 2 5 and the transmission buffer 1 2 6. Also, the difference The data is locally decoded by the inverse quantization circuit 114 and the IDCT circuit 115, and is inputted to the arithmetic unit 116.
- the arithmetic unit 1 16 is also supplied with the same data as the predicted image data supplied to the arithmetic unit 120.
- the arithmetic unit 1 16 adds the prediction image data output by the motion compensation circuit 1 19 to the difference data output by the 10 1 11 circuit 115. As a result, image data of the original (decoded) P picture is obtained.
- the P-victure image data is supplied to the backward prediction image section 117 of the frame memory and stored therein. It is.
- the motion vector detection circuit 105 After the motion vector detection circuit 105 stores the data of the I-picture and the P-picture in the forward prediction image section 118 and the backward prediction image section 117, respectively, Execute the process.
- the switch 111 In the intra prediction mode or the forward prediction mode, the switch 111 is switched to the contact a or b. At this time, the same processing as in the P-picture is performed, and the data is transmitted.
- the switch 111 is switched to the contact point c or d, respectively.
- the image (currently, the P-picture image) data stored in the backward prediction image section 1 17 is read out, and motion compensation is performed.
- the circuit 119 compensates for motion corresponding to the motion vector output from the motion vector detection circuit 105. That is, when the setting of the backward prediction mode is designated, the motion compensation circuit 119 stores the read address of the backward predicted image section 117, and the motion vector 105 represents the position of the currently output macroblock. Then, the data is read out from the position corresponding to the motion vector by an amount corresponding to the motion vector, and a predicted image data is generated.
- the predicted image data output from the motion compensation circuit 119 is supplied to the arithmetic unit 121.
- the arithmetic unit 122 subtracts the predicted image data supplied from the motion compensation circuit 119 from the macroblock data of the reference image, and outputs the difference. This difference data is transmitted to the transmission path via the DCT circuit 112, the quantization circuit 113, the variable length encoding circuit 125, and the transmission buffer 126.
- the switch 1 1 1 1 When the switch 1 1 1 1 is in the bidirectional prediction mode in which the contact is switched to the contact d, the image stored in the forward prediction image section 1 18 (currently, the I-picture image) data and the backward prediction image section 1
- the picture stored in 17 (P picture in the present case) is read out, and the motion compensation circuit 1 19 corresponds to the motion vector output from the motion vector detection circuit 105. Motion compensation.
- the read addresses of the forward prediction image section 118 and the backward prediction image section 117 are calculated from the position corresponding to the position of the macroblock currently output by the motion vector detection circuit 105.
- the data is read out with a shift corresponding to (the two for the image and the backward predicted image), and the predicted image data is generated.
- the predicted image data output from the motion compensation circuit 119 is supplied to the arithmetic unit 122.
- the arithmetic unit 122 subtracts the average value of the prediction image data supplied from the motion compensation circuit 119 from the reference image macroblock data supplied from the motion vector detection circuit 105, and outputs the difference. This difference data is transmitted to the transmission path via the DCT circuit 112, the quantization circuit 113, the variable length coding circuit 125, and the transmission buffer 126.
- the B-bit image is not stored in the frame memories 117 and 118 because it is not regarded as a predicted image of another image.
- the controller 104 controls all circuits involved in the above-described processing relating to the prediction mode, processing relating to the DCT mode, and processing relating to quantization. In addition, the controller 104 performs variable-length coding on all coding parameters, such as motion vectors, picture types, prediction modes, DCT modes, and quantization steps, generated in the encoding processing of each picture.
- the controller 104 outputs V-phase, H-phase, Time-code 1 s Time-code 2, An ci 11 ar_d ata, and Line-number from the auxiliary data separation circuit 101.
- the controller 104 receives the received V-phase, H-phase, Time-code, Time-code 2, Ancillary-data, Line-number, DTS-counter PTS-counter, Fie 1 d—Information about the ID is stored in the MPEG_E S_editng_inform (i) is supplied to the variable length coding circuit 125.
- variable-length coding circuit 125 performs variable-length coding on the DCT coefficient quantized from the quantization circuit 113 and the coding parameter supplied from the controller 104, and is defined in the MPEG standard.
- An encoded stream is generated according to the syntax of the elementary stream.
- variable-length encoding circuit 125 performs variable-length encoding on the information supplied from the controller 104 as MPE G—ES—ed iting—info format (i). And performs processing to insert it into the encoded stream.
- MPE G—ES—ed iting—info format (i) The syntax of the coded stream and the syntax of MPEG-ES_edit_informatin (i) will be described later in detail.
- FIGS. 10 to 26 the syntax of the bit stream will be described.
- FIG. 26 is an explanatory diagram showing the detailed structure described in FIGS. 10 to 25 in a format that makes it easier to understand the data structure of the MPEG encoded stream.
- FIG. 10 is a diagram showing the syntax of a video stream of MPEG.
- the MPEG encoder 42 generates an encoded elementary stream according to the syntax shown in FIG.
- functions and conditional statements are shown in fine print, and the data elements are shown in bold print.
- the data item is described in a 21-monitor (Mnemonic) indicating its name, bit length and its type and transmission order.
- the syntax shown in FIG. 10 is used by the MPEG decoder 44 to extract a predetermined meaningful data element from the transmitted coded bit stream. It is sunset.
- the syntax used on the MPEG encoder 42 side is a syntax obtained by omitting conditional statements such as if statements and wh i 1 e statements from the syntax shown in FIG. next_start_code (), which is first described in vide o_sequence (), is a function to search for the start code described in the bitstream.
- the encoded stream generated according to the syntax shown in Fig. 10 first describes the data elements defined by the sequence header () and the sequence extension (). I have.
- This sequenc e-header is a function for defining the header data of the sequence layer of the MPE G-bit stream
- sequence-extension is a function of the MPEG bit stream. This is a function for defining the extended data of the sequence layer.
- nextbits () used in the whi1e statement is a function for comparing the bit or bit string described in the bit stream with the referenced data element.
- nextbits () compares the bit sequence in the bit stream with the sequence_end_code indicating the end of the video sequence, and When the bit sequence and sequence — end — code do not match, the condition of this wh i 1 e statement is true.
- the do ⁇ while le statement following sequenc e_extensions on () is used in the do statement in the bit stream while sequenc e_end_code indicating the end of the video sequence does not appear. It indicates that the data element defined by the function is described in the coded bit stream.
- extension—and—user—data— (0) In the encoded bitstream, following each data element defined by sequence—eX tension (), it is defined by extension—and—user—data— (0). The element is described ing.
- the extension — an_user — data_a (0) is a function for defining the extended data and the user data in the sequence layer of the MPEG bit stream.
- the do ⁇ whi le construct located next to this ext ens i on —and —us er-dat a (0) is used while the condition defined by the whi le statement is true.
- This function indicates that the data element described based on the function in ⁇ is described in the bitstream.
- the next bits () used in this while statement is a function to determine the match between the bit or bit sequence appearing in the bit stream, and the picture—st art—code or group—st art—code. If the bit or bit sequence that appears in the bitstream matches the picture —st art — code or the group —st art — code, the wh i 1 e statement The condition defined by is true. Therefore, this do ⁇
- This gro up—of—picture header is a function for defining the header of the GOP layer of the MPEG coded bit stream, and is an extension.
- -Dat a (1) defines the extended data and user data of the GOP layer of the MPEG encoded bit stream. This is the function to do.
- pict ur e-header () and pict ur e-codin-extension on u are described.
- the pict ur e-header () is next to the data element defined by extension and--user--d at a (, ⁇ ).
- This picture—header () is a function for defining the header data of the picture layer of the MPEG coded bit stream, and pictur e_c od in g_ex tension () is an MPE G coded bit stream.
- This is a function for defining the first extended data of the picture layer of the system.
- ext e s io n_and_u s e r_d a ta (2) is a function for defining the extended data and the user data of the picture layer of the MPEG coded bit stream.
- the user data defined by this extension one and one user one data one (2) is the data described in the picture layer and is data that can be described for each picture. .
- This pict ur e-d a ta () is a function for describing the data elements relating to the slice layer and the macro block layer.
- the wh i 1 e statement following this pict ur e dat a () is This function determines the condition of the next if statement while the condition defined by the wh i 1 e statement is true.
- Nex tbits () used in this wh i 1 e statement determines whether pict ur e_start_code or group_start_code is described in the encoded bit stream. If pict ur e-start-code or group_start-code is described in the bit stream, the condition defined by this wh i 1 e statement becomes true.
- sequenc e_end_code is a conditional statement for determining whether or not sequenc e_end_code is described in the coded bit stream, even if se quence—end_code is not described. ", Indicates that the data element defined by sequenc e_h eader () and sequence—extension () is described. Since se quenc e — end — code is a code indicating the end of the sequence of the encoded video stream, sequence-header () and se quen are included in the encoded stream unless the encoded stream ends. Describes the data element defined by ce-ext e ns ion ().
- sequence_header () and sequence_extension () The data element described by this sequence_header () and sequence_extension () is the sequence_header () and s described earlier in the sequence of the video stream. equenc e — exactly the same as the element described by extension ().
- the reason for describing the same data in the stream in this way is that when the bit stream receiving device starts receiving data in the middle of the data stream (for example, the bit stream corresponding to the picture layer). This is to prevent a situation in which it is not possible to receive the data of the sequence layer and decode the stream.
- sequence_end_code indicates the end of the sequence.
- FIG. 11 is a diagram for explaining the syntax of sequenc e_he a de er ().
- the data elements defined by this se quenc e_h eader () are: se quenc e-header- code, horizon nt a ⁇ one size-one va iue, vertical one size- va one ue, aspect- ratio- info rmat i on, fr ame-rat e-code, bit-r at e-va lue, ma rke r-bit, vbv-buffer-size-va lue, cons t ra i ne d-parameter-fl ag, lo ad ⁇ int ra ⁇ quantizer one matrix, int ra ⁇ quantizer one matrix [64], lo ad ⁇ non ⁇
- the sequence one header-code is a sequence representing the start synchronization code of the sequence layer.
- Horizont al-size-va1ue is a data consisting of the lower 12 bits of the number of pixels in the horizontal direction of the image.
- ve rtica l_s size_v a1 ue is data consisting of the lower 12 bits of the number of vertical lines of the image.
- aspect- ratio-informat is an aspect ratio that represents the aspect ratio (aspect ratio) of a pixel or the display screen aspect ratio.
- fr ame— rate— code is the data representing the display cycle of the image.
- bit_rate — va 1 ue is the lower 18 bits of the bit rate (rounded up to the nearest 400 bsp) for limiting the amount of generated bits.
- ma r ker_bit is a bit data inserted in order to prevent a time code emulation.
- V b V — buff ⁇ r_s ize — va 1 ue is the lower 10 bits of the value that determines the size of the virtual buffer (video buffer modifier) for controlling the generated code amount.
- Constraint d par am et er—flag is data indicating that each parameter is within the limit. 1
- i nt r a quant
- 1 z e r_mat r i x [64] indicates the value of the intra MB quantization matrix.
- FIG. 12 is a diagram for explaining the syntax of sequence—extension ().
- the de-elements defined by this sequence—e X tension () are: ext ens ion—st art—code, ext ens ion—st art—code— i dent if i ers prof i 1 e and ⁇ 1 eve 1 ⁇ indi cat i on, progressive ⁇ s equences chroma ⁇ for mat, hor iz ont al ⁇ si ze one ext ens i on, ve rt ica 1 ⁇ size ⁇ ext ens ion, bit ⁇ rat e ⁇ ext ens ion vbv-buf fer-size-ext ens ion, low-de 1 ayf rame-rat e-extension-n, and f rame-rat e-ext ens ion-d.
- extension_st_art_code is a code representing the extension synchronization code.
- ext ens ion-st art-code_ident ifier is a data message that indicates which extension data is sent. prof ile and l eve l ind i cat i on It is a night to specify the evening profile and level.
- the progress eVe_sequence is a data that indicates that the video data is a progressive scan.
- chroma — f0rmat is a data format for specifying a color difference format for video data.
- Horizont al-size-extension is the upper 2 bits of data that can be applied to the sequence header hori znt al-size_va1e.
- V ertica 1—size_extension is the top two bits of the sequence header's ve rtica 1 — size—valu force.
- bit—rat e_extension is the upper 12 bits of data added to the bit_r at e_v a lue in the sequence header.
- vbv-buf-fer-size-extension is the upper 8 bits of data added to the sequence header's vb V-buf fer_size_va1ue.
- low_delay is data indicating that a B picture is not included.
- fr ame-r at e-ext ens ion _ n ⁇ Also it is a process to obtain the frame rate in combination with the sequence hem frame_r at e_code.
- Fr am e— rat e_e X tension— d is a combination of the sequence header fr ame— rat e— code to get the frame rate.
- FIG. 13 is a diagram for explaining the simplex of extensio n — an d — u se r — d a ta (i). This ex tens ion— an d_u ser — data (i) is, if “i” is not 1, the data element defined by ex tens ion— data () is not described and user— da ta Describe only the data element defined by (). Therefore, extension-and-user-data (0) describes only the data element defined by user-data ().
- nextbits compares the bit or bit string appearing in the bitstream with the next decoded element This is the function to do.
- FIG. 14 is a diagram illustrating a feature of the present embodiment. As shown in Fig. 14, user—data () is used r_d ata—st art—code, V—phase (), H—phase (), Time—code (), Picture— order (), Ancillary—data (), history—data_ (), and user—data_ ().
- the “user_data_stat_code” is a start code for indicating a start of a user data area of a picture layer of a bit stream of the MPEG system.
- the if statement described after us e r_d ata—st art—c ode is the wh i 1 e syntax described next when i of “us e r_d ata (i)” is “0”. Execute This while statement is true as long as there is no 24-bit data consisting of 23 "0s" followed by a "1" in the bitstream.
- the 24-bit data consisting of the 23 “0s” followed by a "1" is the data provided at the beginning of all start codes, The code is provided after these 24 bits, so that next bits () can find the position of each start code in the bit stream.
- nextb its () in the next El se if statement detects a bit string (D ata_ID) indicating H—Phase, and then detects H—P from the next bit of the bit string (D at a_ID). Learn that the H-Phase data element indicated by Phase () is described.
- the Data—ID of V—Phase is a bit string representing “01”
- the Data—ID of H—Phase is the bit string representing “02”. It is a row.
- V—Phase () is an 8-bit data indicating that the data element of the bit string following the D ata-ID is V-P hase, and is shown in FIG. The value is "01".
- V-Phase is a 16-bit data indicating the first line to be encoded in the frame of the image signal. In other words, V-Phase is data indicating the vertical line position of the active video area.
- H-Phase is an 8-bit data representing that the data element of the bit sequence following the Data_ID is H-Phase. Is the value "02" indicated by.
- H—Phase is an 8-bit data indicating the first sample to be encoded in the image signal frame. In other words, H-Phase is a set of horizontal pixel sample locations in the active video area.
- nex tbits () detects a bit string indicating Time code 1 or detects a bit string indicating Time code 2, and then detects the bit string. From the next bit in the column, it is known that the data element of the Time code indicated by Time_code () is described. In other words, when i of ex t nt ion — an d_u se r_d ata (i) is 2, it means that this user data is in the victim layer. In other words, as shown in FIG. ime—code () 24 1 The data element represented by 1 is data described in the user area of the picture layer in the data area.
- the Data_ID of the Time codel is a bit string representing "03" as shown in Fig. 15.
- the time code of the Time code 1 is inserted during the vertical blanking period of the image.
- VITC Vertical In-ter V a1 Time Code
- the Data_ID of Time code 2 is a bit string representing “04” as shown in FIG. 15, and the time code of Time code 2 is the time code recorded on the time code track of the recording medium.
- LTC Longitudina1TimeCode or LinearTimeCode).
- FIGS. 18 and 19 are diagrams showing the syntax of Timecode (). As shown in Fig. 18, the time code is represented by 72-bit data, and Fig. 19 shows a specific data structure.
- co 10 r — fr ame — f 1 ag represents a control flag relating to color frame information
- the following D r 0 p__f r ame — flag represents a control flag relating to a drop frame.
- the next 6 bits from the third bit to the 8th bit represent the 'frame' part of the time code
- fie 1 d—phase represents the control flag for phase correction
- the 10th bit 7 bits from the 16th bit to the 16th bit Represents the 'second' part of.
- the '1' at the 17th bit, 34th bit, 51st bit and 68th bit is, as described above, a single bit to prevent 23 consecutive 0's.
- the 18th, 26th, and 27th bits binary_roup indicate the control flag for the binary group, and the 7th bit from the 19th bit to the 25th bit indicates the minute of the time code. 6 bits from the 28th bit to the 33rd bit represent the part of the time code.
- sentence in FIG. 14 when next bits O detects a bit string indicating Picture 0 rder, the next bit O of the bit string indicates Picture—Order (). ture order data element is described.
- the Data_ID of Picture-0 rder () is a bit string representing “05” as shown in FIG.
- the syntax of Picture—Order () actually inserted into the elementary stream (ES) by the encoder will be described with reference to FIG.
- the Data_ID is an 8-bit data indicating that the data subsequent to the Data_ID is Picture_0_rder data, and the value is “05”. It is.
- PTS—counter is a value generated by the field counter 102 in the MPEG encoder, and counts up each time one field is input in the input video data. It is a 7-bit data that represents. This 7-bit data is a modulo that takes a value from 0 to 127. After the if statement, when the DTS-presence bit is 1, that is, when the picture is a P-picture or an I-picture, the DTS-counter counts up.
- Marker bits are used to prevent the emulation of bits in which the bit string described in the user data coincides with the above-mentioned start code by chance and is likely to cause image breakage.
- the bits are inserted every 16 bits.
- DTS—counter is a value generated by the field counter 102 in the MPEG encoder, and counts up every time a field of encoded image data is encoded. This is a 7-bit data that represents This 7-bit data is modulo with values from 0 to 127.
- nextb its () detects a bit sequence indicating Ancillary data, and then detects Ancillary one dat a (from the next bit of the bit sequence). ) Knows that the element of overnight data of Ancillary data is described.
- the D ata—ID of Anc i lar y_d a t a () is a bit string representing “07” as shown in FIG. Note that, as shown in FIG. 26, the data element relating to the Anci 11 ary_d ata () is, as shown in FIG. 26, similar to the Picture-Order () and the Time-Code (). It is described in the evening area.
- Anc ill ary dat a is a pic It is imported as the character layer's user dat a, and as the data, the field identifier (Fie 1 d-ID) is the number of the line (Line—number) and the ancillary data (ancillary data) ) Is introduced.
- ID is an 8-bit data indicating that it is ancillary data in the userdata area, and its value is “07” as shown in FIG.
- Fie 1 d—ID is 2-bit data, and is a flag that indicates whether the input video data is progressive video or not.
- the value of progresssive_sequenc e_f 1 ag is “0” That is, when the input video is a video video of an in-one race, a Fie 1 d—ID is added to each field in the encoded frame.
- the coded stream in FIG. 7C is a diagram related to the coded stream when the input video data shown in FIG. 7B is coded.
- This coded stream is composed of an elementary stream consisting of a plurality of access units (AU1, AU2 ...), and Fig. 7C shows that the elementary stream and the elementary stream are included in the elementary stream.
- ie 1 d— is a diagram showing that information about ID is described.
- the file ID is added for each encoded frame when the value of progressive-sequenc e-fla is "1", that is, when the input video data is one.
- the encoded frame is one diff sive fr am Since e is present, the value "0” is set, and when the value "1" is set in repeat_f_irs t_f ie 1 d and the value "0” is set in op_f ie 1 d_f irst, Since the encoded frame has two progre ssive frames, the value,, 0,,,, 1 "is set, and both repeat-fir st-fie ld and Top-fie 1 d_f irst" When "1” is set, the coding frame is set to the value "0” to "2" because there are three progress frames.
- Line_number is a 14-bit data, and describes the ancillary data in each frame. It is specified in ITU-R BT.656-3, SMP TE274M, SMPTE 293M, 5 SMPTE 296M Shows the line number assigned.
- An ci 11 ary— data— 1 en ng th is a 16-bit date and an ancillary—dat a—pay 1 oad te night; 1 oad represents the content of the auxiliary data consisting of 22 bits of data, and the value of Ancil lar y_d ata—Ancil lary dat a_length of Ancillary oad is the value of j (initial Greater than value 0) In this case, the value j (Ancillary_data—the length of 1 ength) is incremented by 1 and written from the bit sequence of the j value.
- nextbits () detects a bit string indicating the History data, and the History indicated by History_data () from the next bit of the bit string. dat a de — Evening element is found.
- the Data—ID of History—data_ () is a bit string representing “08”, and the data indicated by Data—ID is “08” is a coding parameter. This indicates Hi st oryat a, which includes history information for one evening. This History_data_ () is described in detail in US Patent Application No. 09/265723, and will not be described here.
- nextb its () detects a bit string indicating “user data”, and from the next bit of the bit string, the data element of use r_d ata indicated by user-data () Know that is described.
- the bit string by which nextb its () in FIG. 14 knows that each data element is described is described as Data-ID shown in FIG. However, the use of "00" as Data-ID is prohibited.
- Data at which the ID is indicated by "80" indicates a control flag, and Data at which the ID is indicated by "FF” indicates user data.
- FIG. 22 is a diagram for describing the syntax of group 1 of picture 1] 1 eader ().
- the data element defined by this group—of _picture_h eader () consists of group—st art—code, time—coae, cl os ed—gop, and broken—1 ink.
- gr_up_start_code is a data indicating the start synchronization code of the G0P layer.
- time — code is a time code indicating the time from the beginning of the sequence of the first picture of G0P.
- closed—gop is a flag that indicates that images in a GOP can be played independently from other GOPs.
- broken—1 ink is a flag indicating that the first B picture in G0P cannot be accurately reproduced due to editing or the like.
- ex tens io n_a nd_us 6 r- d at a 1) is similar to ext ens ion- and- us er- dat a, 0), and is defined by us er- data (). This is a function for describing only the element.
- picture—headr (), Picture—codng—extension (), and picture—headr () for describing the data element related to the picture layer of the encoded stream.
- FIG. 23 is a diagram for explaining the syntax of picture-headr ().
- the picture element defined by the picture—headr () is pict ur e-start-code, temp oral—referencesic ure—cod in—typ e, vbv—del ay, ful 1— el-forward-vector, forwa rd-f-code, full-pel-backward-vector, bac kwar d-f-code, etra-bit-pict ure, and ext ra-info rmat ion-picture is there.
- pict ure-s st a rt-co d e is data representing the start synchronization code of the picture layer.
- t empor a 1—ref e r ence is a number indicating the display order of pictures, and is a reset at the beginning of the GOP.
- the pict u r e_co d in g_t y p e is a picture indicating a picture type.
- vb V del ay is a set of data indicating the initial state of the VBV buffer. It is set for each victim.
- the picture of the encoded elementary stream transmitted from the transmitting side system to the receiving side system is buffered in the VB V buffer provided in the receiving side system, and the time specified by DTS (Decoding Time Stamp) Then, it is extracted (read) from this VBV buffer and supplied to the decoder.
- the time defined by vb v--de 1 ay is the time from when the picture to be decoded begins to be buffered in the VBV buffer until the picture to be encoded is extracted from the VBV buffer, that is, specified by DTS Means the time until the time.
- vb v—de 1 ay stored in the picture header seamless splicing can be realized in which the data occupancy of the VB V buffer does not become discontinuous.
- fu 11—pe l_f or wa r d_vector is data indicating whether the accuracy of the forward motion vector is an integer unit or a half pixel unit.
- fo rwa rd-f-code is a short time representing the forward motion vector search range.
- f ul l—pe l— bac kwa r d_vector is a data indicating whether the accuracy of the backward motion vector is an integer unit or a half pixel unit.
- bac kwa rd — f _ code is a data representing the backward motion vector search range.
- eXtra-bit_icture is a flag indicating the presence of the following additional information. If this extra-bit—picture is “1”, then extra—information—picture exists, and if the extra—bit—picture is “0”, the following data It indicates that there is no overnight. “extra — inf 0 rmation — pict ure” is information reserved in the standard.
- FIG. 24 is a diagram for explaining the simplex of the picture—coding_ext_extension ().
- the de-elements defined by this picture—coding—ext ens ion () are ex tens ion—st art—code, ext ens ion—st art—c ode—identifier, f_c ode [ 0] [0], f _code [0] [1] ⁇ f _c o de [1J [0] N f code [l] [l] N int ra dc pre cisi on, picture—st ructure, top—field first, frame—pred ictive—frame—dct, c oncealm ent—motionon—ve ct ors, q—scal e1 t ype, intra- vi e- formats al ter nat e- scan repeat- first- fie ld, chroma- 420- type, progre ssive- frames
- the extension is a start code indicating the start of the picture layer overnight.
- ext ens i on — st art — code— identifier is a code that indicates which extended data is to be sent.
- f_code [0] [0] is a data representing the horizontal motion vector search range in the forward direction.
- f —code [0] [1] is a data representing the vertical motion vector search range in the forward direction.
- f —code [1] [0] is a set of data representing the search range of the horizontal motion vector in the backward direction.
- f — c 0 de [1] [1] is a data representing the search range of the vertical motion vector in the knock direction.
- int ra _d c_p re cision is a short time representing the accuracy of the DC coefficient.
- picture —st structure is a data structure indicating whether it is a frame structure or a field structure. In the case of a field structure, this indicates the upper field or lower field.
- t op —field —fi rst is a flag indicating whether the first field is a top field or a bottom field in the case of frame structure.
- f ram e ⁇ p red ict iv e_f ram — dct is the frame 'mode, which indicates that the prediction of the DCT is frame mode only in the case of frame structure.
- conc ea lment mo ti on ve ct ors is an intrama. It is a night to show that there is a motion vector to conceal transmission errors
- q —s cal e —t ype is a short time stating whether to use a linear or non-linear quantization scale.
- int ra —vi e — for mat is data indicating whether to use another two-dimensional VLC (variable length code) for intra macroblocks.
- alt ernat e —s can is a choice between using a zigzag scan or an alternate scan.
- repeat—first—fie ld is a flag indicating whether or not to generate a repeat field at the time of decoding. In the decoding process, if repeat—fi rst —fie ld is “1”, repeat When repeat-first-fie ld is "0", no rebeat field is generated.
- c h r oma — 420 — t yp e is data representing the same value as the following p r 0 g r e s s i V e —f r ame when the signal format is 4: 2: 0, and 0 otherwise.
- progre s s ive frame is a bit of time that indicates whether the picture can be scanned sequentially.
- composite dsplay—flag is data indicating whether or not the source signal was a composite signal.
- V axis is the data used when the source signal is PAL.
- sub carr ier is the data used when the source signal is PAL.
- burst ampl i tu d e is the data used when the source signal is PAL.
- sub _ carr ier phas e is the data used when the source signal is PAL.
- FIG. 25 is a diagram for explaining the syntax of picture—data ().
- the data element defined by this picture data d a () is a data element defined by slice (). However, the slice code of slice () is shown in the bit stream. S 1 ice — If there is no start — code, the data element defined by this siice () is not described in the bitstream.
- slice () is a function for describing a data element related to a slice layer.
- slice-start-code is a start code indicating the start of the data element defined by slice ().
- slice_quantizer_scale_code is data indicating a quantization step size set for a macroblock existing in this slice layer. However, if the quant iser-scale-code is set for each MAC block, the macro-clock-quant iser-scale-code set for each macro block will be lost. Used in preference. int ra — slice — fl ag is a flag that indicates whether or not int ra — slice and reserv d — bits are present in the bitstream. “intra-slice” is a data indicating whether or not a non-intra macroblock exists in the slice layer.
- intra — slice is “0”
- int ra — slice is “1”.
- Rese rve d-bits is a 7-bit data and takes a value of “0”.
- e Xtra —bit —slice is a flag indicating that additional information exists as an encoded stream, Next, it is set to “1” if extra one informa ti on one slice exists. Set to “0” if no additional information is present.
- ma cr ob lock () is a function for describing the data element regarding the macro block layer.
- ma crob 1 ock esc ape
- ma croblo ck add ress one inc r ement and macroblock-quantizer-scale-code, etc.
- element defined by macroblock-modes () and macr oblock_vecters (s) Is a function for describing.
- macro obloc k_e scape is a fixed bit string indicating whether the horizontal difference between the reference macroblock and the previous macroblock is 34 or more. If the horizontal difference between the reference macroblock and the previous macroblock is 34 or more, 33 is added to the value of macroblock-aadresssincrncement.
- mac r ob l o c i a d d r e s s — i n c r ement is a decimation that indicates the horizontal difference between the reference macroblock and the previous macroblock.
- macr oblo c k -quantise-scale-code is the quantization step size set for each macroblock. In each slice layer, siice-quantizer-scale-code indicating the quantization step size of the slice layer is set, but macrob1ock_quantiser -scale-code is set for the reference macro program. In this case, select this quantization step size.
- the multiplexer 162A includes a plurality of packetizers 301-309, a plurality of transport stream generators (TS Gen.) 311-319, and a plurality of system decoder buffers (STD buffers) 321- 329, a multiplexing circuit 330, and a multiplexing controller 300.
- TS Gen. transport stream generators
- STD buffers system decoder buffers
- the packetizers 301 to 309 receive the elementary streams respectively output from the MPEG encoders and generate packetized elementary streams (PES) by packetizing the elementary streams.
- PES packetized elementary streams
- FIG. 28 is a diagram for explaining the relationship between the elementary stream (ES), the packetized elementary stream (PES), and the transport trim packet.
- FIG. 28B When the source video data is encoded, an elementary stream composed of the access units AU1 and AU2 is formed as shown in FIG. 28B, for example.
- FIG. 28C is a diagram for explaining the packetizing process of the bucketizer.
- the packetizer packs a plurality of access units, and adds a PES header to the top of the bucket.
- FIG. 29 is a drawing for explaining this PES header.
- the PES header includes a packet start code, a stream ID, a packet length, a symbol “10”, a flag control code, a PES header length, and conditional coding.
- the MPEG standard stipulates that the conditional coding must include information on presentation time stamp (PTS) and decoding time stamp (DTS).
- PTS presentation time stamp
- DTS decoding time stamp
- the transport stream generation circuit (TS Gen.) 31 1-319 converts the packetized elementary stream output from the packetizer 301-309 into a 188-byte transport stream as shown in Fig. 28D. A transport stream composed of packets is generated.
- System target decoder buffer (S TD Buf fer) 321-32 9 receives the transport stream output from the transport stream generating circuit 311-319 and performs no sofaring.
- This STD buffer is a buffer provided for the purpose of simulation so that the reception buffer on the MPEG decoder side does not overflow or underflow, and has a fixed capacity determined by the MPEG standard.
- the multiplexing circuit 330 receives the transport stream from each of the system decoder buffers 321-329, and performs a multiplexing process according to the scheduling set by the controller 300.
- FIG. 27 the detailed configuration and processing of each bucketizer will be described with reference to FIGS. 27 and 30.
- Each packetizer includes a buffer 341 for buffering the received elementary stream, a parsing circuit 342 for parsing (analyzing) the simplex of the received elementary stream, and a packet output from the buffer.
- a bucket circuit 343 for bucketing the elementary stream is provided.
- the parsing circuit 342 extracts the PTS—counter and DTS—counter described in the elementary stream from the elementary stream, and supplies the PTS—counter and DTS—counter to the packetizing circuit 343. I do. Specifically, the parsing circuit 342 performs variable-length coding on the received elementary stream, and searches for a special data element such as a time code included in the stream. Since the purpose of this parsing process is to extract the PTS—counter and DTS—counter, the sequence layer ignores the GOP layer's start code. Search for toco. Next, the user data area of the picture layer can be found by finding the 32-bit use r_data-start-code in the stream. Next, in the user area, Look for "05" D ata—ID to find the overnight element for ().
- the parsing circuit 34 Since the PTS—cunter and DTS—cunter are described in the 10th to 16th bits and 17th to 23rd bits of this Picture — order () function, the parsing circuit 34 2. Extract the PTS-counter and DTS-counter and supply them to the packetizing circuit 343.
- the packetizing circuit 3'43 receives PTS-counter and DTS-counter from the parsing circuit 342, and newly generates PTS and DTS based on the information on the PTS-counter and DTS-counter.
- Ding3 As the value of Ding3?
- the value of D 3 —counter is used as it is, and the value of D TS —counter itself is used as the value of D T S.
- FIG. 30 is a diagram for explaining the minimum delay that occurs when the packetizer of the present embodiment is used.
- FIG. 3 OA shows the input video data
- FIG. 30B shows the elementary stream when the input video data is encoded
- FIG. 30C shows the code generated by the MPEG encoder of this embodiment.
- 4 shows a bucketized elementary stream when the packetized stream of the present embodiment is used by using a stream.
- FIGS. 30A and 30B are the same as FIGS. 2A and 2B.
- a bucketized elementary stream for determining the PTS is generated, that is, in order to determine the PTS, the I picture is
- N is the number of B pictures existing between pictures.
- the delay for determining the PTS from the encoding stream can be suppressed to one frame time.
- the number of I-pictures is not limited to the number of B-pictures existing between P-pictures. Even if there are many B-pictures between P-pictures, the minimum delay is one frame. Also, when designing a packetizer for 9 channels as shown in Fig. 27, there is an extremely large effect that it can be realized with 9 frame memories.
- Each MPEG decoder includes a reception buffer 401, a variable length decoding circuit 402, an inverse quantization circuit 403, an inverse DCT circuit 404, a controller 405, an arithmetic circuit 411, a motion compensation circuit 412, and a memory. 413 and 414, a transmission buffer 415, a reverse band video generation circuit 416, and a multiplexing circuit 417.
- the variable-length decoding circuit 402 receives the elementary stream from the reception buffer, and performs variable-length decoding on the elementary stream to obtain a predetermined length from the data element having a predetermined data length. Create a stream Further, the variable-length decoding circuit 402 extracts all coding parameters from the stream by parsing (analyzing) the syntax of the data stream that has been subjected to the variable-length decoding, and supplies it to the controller 405. Examples of coding parameters required to be superimposed in the stream according to the MPEG standard include the picture type, motion vector, prediction mode, DCT mode, quantization scale code, quantization table information, etc. Basically, it is a parameter generated in the encoding process for generating the encoded stream.
- variable length coding circuit 402 is not limited to the coding parameter defined by the above-mentioned MP EG case, but also to the user data of the elementary stream.
- the feature of this embodiment is to extract information described as MPEG-ES-Editing_inforation () in the area. Specifically, information about V-phas e () H-phas e () is stored in the sequence layer area of the sequence layer in the coded stream.
- the information in dat a () is described as MPEG—ES—Editing_information (), and the variable-length coding circuit 402 outputs these V—phas e () H from the stream. — Extract information related to phas e (), Time — code (), Picture — order (),. Anc il lar — aata (), and History — dat a (), and send it to controller 405. Supply.
- the inverse quantization circuit 403 inversely quantizes the variable-length-decoded DCT coefficient data supplied from the variable-length decoding circuit 402, based on the quantization scale also supplied from the variable-length decoding circuit 402. Output to the inverse DCT circuit 404.
- the inverse DCT circuit 404 performs an inverse discrete cosine transform process on the quantized DCT coefficient supplied from the inverse quantization circuit 403, and supplies the result to the arithmetic unit 411 as inverse DCT image data.
- the image data supplied from the inverse DCT circuit 404 to the arithmetic unit 41 1 is I-picture data
- the data is output from the arithmetic unit 411 and the image data input after the arithmetic unit 411 is output.
- Predicted image data of (P- or B-picture) is supplied to and stored in the forward-predicted image section 414 of the frame memory for generating the evening.
- the image data supplied from the inverse DCT circuit 404 is P-picture data with the image data one frame before that as the predicted image data, and is the data in the forward prediction mode
- the image data of one frame before (one image of the I-picture) stored in the forward prediction image part 414 of the frame memory is read out, and is output from the variable length decoding circuit 402 by the motion compensation circuit 412. Motion compensation corresponding to the specified motion vector is performed.
- the arithmetic unit 411 adds the image data (difference data) supplied from the inverse DCT circuit 404 and outputs the result.
- the decoded P-picture data is stored in the rear of the frame memory to generate predicted image data of the image data (B-picture or P-picture data) input later to the arithmetic unit 411. It is supplied to and stored in the prediction image section 4 13.
- the data in the intra prediction mode is not processed in the arithmetic unit 411 similarly to the I-picture data, and is stored as it is in the backward prediction image unit 413.
- the frame memory forward prediction is performed in accordance with the prediction mode supplied from the variable-length decoding circuit 402.
- Image data of the I picture stored in the image section 4 14 (in the case of the forward prediction mode), and image data of the P picture stored in the backward predicted image section 4 13 (the backward prediction mode) ) Or both image data (in the case of bidirectional prediction mode) are read out, and the motion compensation circuit 4 1 2 corresponds to the motion vector output from the variable length decoding circuit 4 2.
- Motion compensation is performed, and a predicted image is generated. However, if motion compensation is not required (in the case of the intra prediction mode), no predicted image is generated.
- the data subjected to the motion compensation by the motion compensation circuit 412 in this way is added to the output of the inverse DCT circuit 404 in the arithmetic unit 411.
- This addition output is supplied to the baseband video generation circuit 416 via the buffer 415.
- the video data output from the transmission buffer 415 is video data only in the active video area and does not include auxiliary data such as a blanking period.
- the controller 405 is configured to control the picture type, motion vector, prediction mode, DCT mode, quantization scale code, and quantization supplied from the variable-length decoding circuit 402. W 5
- each circuit described above is controlled based on information on coding parameters such as table information.
- the controller 405 generates a paceband video based on the information about V-phase and H-phase supplied from the variable-length encoding circuit 402 as MPEG-ES-Editing_information (). Controls the circuit 416.
- V-phase extracted from the coded stream indicates the vertical position of the active video area in all pixel areas of the input video data
- H-phase indicates the input video data. 2 shows the horizontal position of the active video area in all the pixel areas. Therefore, the controller 405 converts the decoded video data output from the buffer 415 into the vertical and horizontal positions indicated by V-p-hase and H-p-hase on the entire pixel area having the blanking image.
- Control the baseband video generation circuit to map to the active area, or decode the active area decoded video data based on the vertical and horizontal positions indicated by V_p hase and H-p hase, and all pixel areas.
- the baseband video generation circuit is controlled so as to synthesize the blanking image.
- the video data output from the baseband video generation circuit 416 has exactly the same blanking period as the blanking period of the input video data supplied to the MPEG encoder.
- the controller 405 calculates the Anc i 11 a r-d a ta, L ine extracted from the encoded stream.
- Fie 1 d supply ID
- T ime code — 1 and T ime —code— 2
- the multiplexing circuit 417 controls the multiplexing processing of the multiplexing circuit 417 of Anilary one data, Time one code one 1, or Time_code-2.
- the field ID is associated with the Anc i 11 arydata assigned to each field. Therefore, the multiplexing circuit 417 superimposes the Anc 11 ary — data associated with the F ie ld — ID during the blanking period of the field identified by this Fie 1 d — ID.
- Fie 1 d—ID is “2”
- Field—ancillary data associated with ID “2” is “Anci 11 ary —data transmitted as evening is superimposed on the blanking period of the third field with a Field_ID of “2”.
- the multiplexing circuit 417 further adds the Ancillary — data to the line position specified by the Line — unmber transmitted together with the Ancillary — data when superposing the Ancillary — data in the blanking period.
- ill ary superimpose da ta.
- the video data output from the multiplexing circuit 417 is exactly the same as the input video data supplied to the MPEG encoder, the same blanking period, the same active video error at the same position, the same line position and the same contents. Ancilla Ride overnight.
- the present invention can be used when frequently encoding and decoding video data in a broadcasting station or the like.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Description
明 細 書 エンコーディングシステム、 エンコーディング方法、 デコーディングシステム、 デコーディング方法、 多重化装置、 多重化方法、 表示システム及び表示方法。 技術分野
本発明は入力ビデオデータを符号化するためェンコ一ディングシステム及び符 号化ストリームをデコードするためのデコ一ディングシステムに関する。 背景技術
近年、 テレビジョンプログラムを制作及び放送する放送局においては、 ビデオ デ一夕を圧縮/ 符号化するために、 I SO/I EC 13818 として規定 されている MP E G (M o V i n g P i c ture Expe rt s
Group) 技術が一般的に使われるようになつてきた。 特に、 ビデオカメラな どによって生成されたビデオデ一夕を、 テ一ブやディスクなどのランダムァクセ ス可能な記録媒体素材に記録する場合や、 放送局内において制作されたビデオプ ログラムを、 ケ一ブルや衛星を介して伝送する場合には、 この MP EGがデファ クトスタンダードになりつつある。
この MP EG技術は、 ピクチャ間の予測符号化方式を用いることによって、 圧 縮効率を向上させることができる符号化技術である。 具体的には、 MPEG規格 においては、 フレーム内予測やフレーム予測を組み合わせた複数の予測符号化を 採用しており、 その予測方式に従って、 各ピクチャは Iビクチャ (Int ra P i c ture) Pピクチャ (Pred i ct ive P i c ture ) また は Bピクチヤ (B id i re ct i onal ly pred i c t ive P i c ture) のいずれかのビクチャタイプを使用してエンコード処理が行わ れる。 Iピクチャは、 他のビクチヤからの予測が行われず、 フレーム内符号化処 理されたピクチャであり、 Pビクチャは、 時間的に前 (過去) の Iピクチャ又は
Pピクチャからフレーム間順方向予測符号化されたピクチャであり、 Bピクチャ は、 時間的に前 (過去) の Iピクチャ又は Pビクチャと、 時間的に後 (未来) の Iピクチャ又は Pピクチャとの両方向のピクチヤから双方向予測符号化されたピ クチャである。
まず、 図 1を参照して、 放送局内において制作された複数のビデオプログラム を多重化するための多重化システムについて説明する。
MP EGエンコーダ 11〜19は、 受け取ったソースビデオプログラム V 1〜 V9ビデオプログラムを、 上述した MP EG規格に基づいてエンコードすること によって、 それぞれ符号化ストリームを生成する。 この符号化ストリームをエレ メン夕リースリームとも称する。
バケツタイザ 21〜29は、 MP EGエンコーダ 1 1〜19から出力されたェ レメン夕リーストリームをそれぞれ受け取り、 エレメン夕リーストリームをパケ ヅ ト化することによってバケツタイズドエレメンタリーストリーム (PES) を 生成する。 このパケッタイザの処理については、 詳しくは後述することにする。
トランスポ一トストリーム生成回路 (TS Gen) 31〜39は、 パケヅ夕 ィザ 21〜29から出力されたパッケタイズドエレメン夕リ一ストリームから、 188バイ トのトランスポートストリームバケツ 卜から構成されるトランスポ一 トストリームをそれそれ生成する。
システムターゲッ トデコーダバッファ (STD Buf f er) 41〜44は 、 トランスポートストリーム生成回路から出力されたトランスポートストリーム を受け取り、 ノ ッファリングする。 この STDバッファは、 MPEGデコーダ側 の受信バッファがオーバ一フロー及びアンダーフ口一しないようにシュミレ一シ ヨンを目的として設けられたバッファであって、 MP EG規格によって決まって いる固定容量のバヅファである。
多重化回路 40は、 システムターゲッ トデコーダバッファ 41〜44から、 ト ランスポ一トストリームをそれぞれ受け取り、 スケージュ一リングに多重化処理 を実行する。
次に、 図 2を参照して、 図 1において説明した多重化システムのパケッタイザ 21〜29のバケツティング処理、 及びそのパケッティング処理の際に発生する ディレイについて詳細に説明する。
図 2 Aは、 MP E Gエンコーダに供給されたソースビデオデータのピクチャ順 を表しており、 この図に示された符号化の例では、 ソースビデオデ一夕を I、 B 、 B、 P、 B、 B、 P、 …という GOP構造で符号化処理を行う一般的な例を示 している。
図 2Bは、 MP E Gエンコーダによって符号化された符号化ストリーム (エレ メンタリ一ストリーム) のビクチャ順を表している。 既に説明したように、 Bビ クチャ B 2及び Bピクチャ B 3は、 Iピクチャ I 1と Pピクチャ P 4の両方のビ クチャから予測符号化されているピクチャであるので、 符号化ストリーム中にお けるピクチャの順番は、 I、 P、 B、 B、 P、 B、 B、 P、 …となる。
図 2 Cは、 バケツタイザ一によって生成されたバケツタイズドエレメン夕リ一 ストリーム (PES) を表している。 パケヅタイザ一は、 エンコーダから出力さ れた符号化ストリームをパケット化し、 そのバケツトに PE Sヘッダを付加する ための回路であるので、 バケツタイズドエレメン夕リーストリームにおけるピク チヤ順は、 エンコーダから出力された符号化ストリームのビクチャ順と同じであ る o
バケツタイザ一の行うバケツティングの処理はそれほど時間を必要としない。 しかしながら、 図 2Bと図 2 Cを比較すると理解できるように、 エレメンタリー ストリームに対してバケツタイズドエレメン夕リーストリームが、 4フレームだ け遅延している。 この遅延の理由について以下に詳細に説明する。
前述したように、 MPEG規格では、 MPEGデコーダーにおける各ピクチャ のデコ一ディング処理のタイミングをデコ一ディングタイムスタンプ (D T S) というデ一夕で規定しており、 復号化ビデオデ一夕の表示タイミングをプレゼン テ一シヨンタイムスタンプ (P T S) というデ一夕で規定している。 従って、 M PEGデコーダは、 この DTSに基づくタイミングで符号化ストリームの各ピク
チヤをデコードしなければいけなくて、 また、 P T Sに基づくタイミングで、 復 号化ビデオデ一夕を出力しなければいけない。
このようなデコ一ディング処理を可能にするために、 M P E G規格においては 、 符号化ストリームを伝送したり多重化したりする場合には、 各ピクチャに P T Sと D T Sを設定しなければいけないという規定がある。 さらに、 M P E G規格 では、 その P T Sと D T Sの情報を、 P E Sヘッダに記述しなければいけないと いう規定がある。 つまり、 パケタイズドエレメンタリーストリームを生成するパ ケッタイザ一が、 P T Sと D T Sを生成しなければいけない。
次に、 バケツ夕一ザ一が図 2 Bに示されたエレメン夕リーストリ一ムを M P E Gエンコーダから受け取った後の、 バケツタイザ一の P T Sの確定処理について 説明する。
第 1番目に受け取ったビクチャ I 1は、 Iピクチャであるので、 第 1番目に表 示されなければいけないピクチャということで、 P T Sを決定することは簡単で ある。 例えば一例として、 このビクチャ I Iの P T Sを 「 1」 とする。
第 1番目のピクチャ I 1の次に受け取る第 2番目のビクチャ P 4は Pピクチヤ である。 図 2 Aに示されたソースビデオのピクチャ順からも理解できるように、 この Pピクチャ P 4は、 この Pピクチャ P 4の後に続いている複数の Bピクチャ の後に表示されなければいけない。 しかしながら、 バケツタイザ一は、 このピク チヤ P 4を受け取った時点 (t 5 ) では、 このピクチャ P 4の後に、 いくつの B ビクチャが連続で伝送されてくるかはわからないのである。 従って、 このピクチ ャ P 4を受け取った時点 (t 5 ) では、 ピクチャ P 4の P T Sを決定することは できないのである。 そこで、 バケツタイザ一は、 最初のピクチャ I 1と第 2番目 のビクチャ P 4をバッファリングする。 このバッファリング処理は、 ピクチャ P 4の P T Sを確定することができるまで続けないといけない。
第 3及び第 4番目のピクチャ B 2及び B 3は、 Bピクチャであるので、 P T S を直ぐに決定することができる。 つまり、 ピクチャ B 2の P T Sは 「2」 であり 、 ピクチャ B 3の P T Sは 「3」 である。
第 5番目のピクチャ P 7は Pピクチヤであるので、 この Pピクチャを受け取つ た時点 (t 8 ) で、 パケヅタイザ一は、 第 2番目のピクチャ P 4の後に 2つの B ピクチャが連続していたことを始めて知ることができ、 この Pピクチャ P 7を受 け取った時点 (t 8 ) で、 ピクチャ P 4の P T Sは 「4」 であると確定できるの である。 つまり、 バケツタイザ一は、 この Pピクチャ P 7を受け取った時点 (t 8 ) で、 Iビクチャと Pピクチャの間に 2つの Bピクチャが存在する G O P構造 ( 1、 Ρ、 Β、 Β、 Ρ ···) であったことを知ることができ、 すべてのピクチャの P T Sを決定することができるのである。
以上のような P T Sの確定処理を行うためには、 パケッタイザ一は、 時刻 t 4 で受けとつたエレメン夕リーストリームを、 時刻 t 8までバッファリングしない といけない。 つまり、 この P T Sを確定するための処理に、 4フレーム分の遅延 が発生するのである。
この図 2に示した、 Iピクチャと Pピクチャの間に 2つの Bピクチャが存在す るような G 0 P構造の場合には、 上述したように 4フレームの遅延が発生するが 、 Iピクチャと Pピクチャの間に 4つの Bピクチャが存在するような G O P構造 の場合には、 6フレームの遅延が発生する。 つまり、 P T Sを確定するための処 理に、 Iピクチャを Pピクチヤの間に存在する Bビクチヤの数を Nとすると、 ( N + 2 ) フレーム分の遅延が発生するという問題があつた。
さらに、 パケッタイザ一を設計する際にも問題が発生する。 例えば、 4フレー ムの遅延を発生させるためだけであれば、 バッファリング用として 4つのフレー ムメモリを備えれば十分である。 しかしながら、 図 1に示したように、 パケッ夕 ィザには様々な G O P構造を有したストリームが供給されることになるため、 ど のような符号化ストリームのどのような G O P構造にも対応できるように、 Iピ クチャと Pビクチャの間に存在する Bピクチヤの最大数を想定して、 フレームメ モリの数を設計しなければいけない。 一例として、 リーズナブルな想定数として Bピクチャの最大数を 「5個」 と想定すると、 図 1に示したように、 9つのビデ ォプログラムを多重化する多重化システムの場合には、 9個のバケツタイザ一が
必要になってくるので、 合計 45個のフレームメモリを用意しなければいけない 。 その結果、 このような多重化システムを実現するためには、 装置が高価になる という問題点があった。
さらに、 図 3に示すように、 取材現場において取材したビデオデ一夕を各家庭 まで伝送には、 取材現場からメイン放送局への伝送、 メイン放送局内での伝送、 メイン放送局から地方局への伝送、 及び地方放送局から家庭への伝送等が存在し 、 全ての伝送プロセスにおいて、 パケッタイズドエレマンタリ一ストリームを生 成する処理が必要になってくる。 その結果、 各伝送プロセスにおいて、 パケッ夕 ィズドエレマン夕リーストリームを生成する際のディレイが発生及び蓄積され、 大きなディレイとなるという問題があった。 発明の開示
本発明は、 入力ビデオデ一夕を符号化するためェンコ一ディングシステム及び 複数の符号化ストリームを多重化するための多重化システムに関する。 具体的に は、 符号化ストリームを遅延無くパケットすることを可能にするェンコ一ディン グシステム、 デコ一ディングシステムを提案するものである。
符号化ストリーム中に、 入力ビデオデ一夕のピクチャオーダを示す情報を記述 し、 バケツタイズドエレメン夕リーストリーム (PES) パケヅ トを生成する際 にそのビクチャオーダに関する情報を使用することによって、 PE Sバケツト生 成処理に伴うディレイの発生を防止することができるシステム及び方法を提供す るものである。
M P E Gェンコーダは、 入力ビデオデータのフィ一ルド数から得られた情報に 基づいて PTS— c 011] 1:及び0丁3— 0 011111:を生成し、 そのデ一夕を符 号化ストリーム中にピクチャオーダーに関する情報として記述する。 バケツタイ ズドエレメン夕リーストリームを生成するためのパケヅタイザ一は、 符号化スト リーム中に記述されている P T S_c o un t及び D TS— c ountを取り出 し、 この PTS 0 011111:及び0丁 3 countに基づいて、 プレゼンテ一
シヨンタイムスタンプ及びデコ一ディングタイムスタンプを生成し、 P E Sへヅ ダとして付加する。
入力ビデオデータを符号化するためのェンコ一ディングシステムにおいて、 入 力ビデオデ一夕を符号化することによってエレメン夕リーストリームを生成する とともに、 エレメンタリーストーム中に、 エレメンタリーストリームのピクチャ オーダに関する情報を記述し、 エレメンタリーストリームを受け取り、 エレメン 夕リーストリーム中に記述されているビクチャオーダ一に関する情報から、 エレ メン夕リーストリームに関するタイムスタンプ情報を生成する。
入力ビデオデータを符号化するためのェンコ一ディングシステムにおいて、 入 力ビデオデ一夕を符号化することによってエレメン夕リーストリームを生成する とともに、 エレメンタリーストリーム中に、 エレメンタリーストリームのピクチ ャオーダ一に関する情報を記述し、 エレメン夕リーストリーム中に記述されてい るビクチャオーダ一に関する情報に基づいて、 エレメン夕リーストリームをパケ ット化する。
入力ビデオデータを符号化するためのェンコ一ディングシステムにおいて、 入 力ビデオデ一夕を符号化することによってエレメン夕リーストリームを生成する とともに、 エレメンタリーストリーム中に、 エレメンタリーストリームのピクチ ャオーダに関する情報を記述し、 エレメン夕リ一ストリーム中に記述されている ビクチャオーダ一に関する情報に基づいて、 エレメン夕リーストリームをパケッ ト化する。
入力ビデオデータを符号化するためのェンコ一ディングシステムにおいて、 入 力ビデオデ一夕を符号化することによってエレメン夕リーストリームを生成する とともに、 エレメンタリーストリームに、 エレメンタリーストリームのデコード 処理及び/又はプレゼンテーション処理に関するタイムスタンプ情報を多重化し 、 エレメンタリーストリームを受け取り、 エレメンタリーストリーム中に記述さ れているタイムスタンプ情報に基づいて、 エレメン夕リーストリームに関するス トリームプロセスを行う。
復数の入力ビデオデータを符号化するェンコ一ディングシステムにおいて、 複 数の入力ビデオデ一夕を符号化することによって複数のエレメン夕リーストリ一 ムを生成するとともに、 エレメン夕リーストリームのデコ一ド処理及び/又はプ レゼンテ一シヨン処理に関するタイムスタンプ情報を、 各エレメン夕リーストリ —ム中に記述し、 複数のエレメンタリーストリームを受け取り、 各エレメンタリ ーストリーム中に付加されているタイムスタンプ情報に基づいて、 複数のエレメ ン夕リーストリームを多重化する。
入力ビデオデ一夕を符号化するためのェンコ一ディングシステムにおいて、 ェ レメン夕リーストリームを生成するために入力ビデオデ一夕を符号化し、 エレメ ン夕リーストリームからパケッタイズドエレメン夕リーストリームを生成し、 ケッタイズドエレメン夕リーストリームのヘッダに記述されるタイムスタンプを 生成するための情報を、 エレメン夕リーストリーム中に記述する。
複数の入力ビデオデ一夕を符号化することによって生成された複数のエレメン 夕リーストリームを多重化するための多重化装置において、 複数のエレメン夕リ —ストリームから、 複数のエレメン夕リーストリームに夫々関連付けられたタイ ムスタンプに関する情報を抽出する手段と、 各エレメンタリーストリ一ムから抽 出したタイムスタンプに関する情報に基づいて、 複数のエレメン夕リーストリ一 ムを多重化する手段とを備える。
ソースビデオデ一夕を符号化する事によって生成された符号化ストリームをデ ドするためのデコーディングシステムにおいて、 符号化ストリーム中に含ま れているデコーディングタイムスタンプを抽出し、 デコーディングタイムスタン プに基づいて、 符号化ストリームをデコードするようになされ、 デコーディング タイムスタンプは、 ソースビデオデ一夕のフィ一ルド数に基づいて生成された情 報とする。
ソースビデオデ一夕を符号化することによって生成された符号化ストリームを 、 デコードすることによって復号化ビデオデ一夕を生成し、 復号化ビデオデータ を表示するための表示システムにおいて、 符号化ストリーム中に含まれていたプ
レゼンテーシヨンタイムスタンプを抽出し、 復号化ビデオデ一夕を生成するため に符号化ストリームをデコ一ドし、 プレゼンテーションタイムスタンプに従って 、 復号化ビデオデ一夕を表示するようになされ、 プレゼンテーションタイムス夕 ンプは、 ソースビデオデ一夕のフィールド数に基づいて生成された情報とする。 図面の簡単な説明
図 1は、 従来の MP E Gエンコーダ及び MP E Gデコーダを有するシステムの 多重化システムの構成を示すプロック図である。
図 2は、 各 GOPピクチャの構造を示す略線図である。
図 3は、 ビデオデ一夕の流れを示す略線的ブロック図である。
図 4は、 本発明によるェンコ一ド /デコ一ドシステムの構成を示すプロヅク図 である。
図 5は、 エレメン夕リストリーム及びトランスポートストリームを示す略線図 である。
図 6は、 MP E Gエンコーダの構成を示すプロヅク図である。
図 7は、 3— 2プルダウン処理の説明に供する略線図である。
図 8は、 ビデオデ一夕の全画素エリア及びアクティブビデオエリアを示す略線 図である。
図 9は、 各フレームの構造を示す略線図である。
図 10は、 video s e q u e n c eのシンタックスを示す略線図である ο
図 11は、 s equence h e a d e rのシンタックスを示す略線図であ る。
図 12は、 s equence e x t e n t i o nのシンタックスを示す略線 図である。
図 13は、 ext ens i on and us er dat aのシンタックス を示す略線図である。
図 14は、 us er d a t aのシンタックスを示す略線図である。
図 15は、 dat a I Dのシンタックスを示す略線図である。
図 16は、 V— Phaseのシン夕ックスを示す略線図である。
図 17は、 H— Phas eのシンタックスを示す略線図である。
図 18は、 t ime c o d eのシンタックスを示す略線図である。
図 19は、 t ime c o d eのシン夕ヅクスを示す略線図である。
図 20は、 p i c ture o r d e rのシンタックスを示す略線図である。 図 21は、 anc i l lary d a t aのシンタックスを示す略線図である ο
図 22は、 group of i cture headerのシンタックス を示す略線図である。
図 23は、 p i cture h e a d e rのシンタックスを示す略線図である ο
図 24は、 p i cture ce rd ing ext ens i onのシンタツ クスを示す略線図である。
図 25は、 p i c ture d a t aのシンタックスを示す略線図である。 図 26は、 シーケンスレイヤ、 GO Pレイヤ、 ピクチャレイヤの各デ一夕を示 す略線図である。
図 27は、 エンコーダ側の多重化部の構成を示すブロック図である。
図 28は、 ソ一スビデオデータから PE Sパケット及び T Sバケツトを生成す る方法の説明に供する略線図である。
図 29は、 PE Sヘッダのデータ構成を示す略線図である。
図 30は、 各ピクチャの配列を示す略線図である。
図 31は、 MP E Gデコーダの構成を示すブロック図である。 発明を実施するための最良の形態
図 4は、 メイン放送局 141及び地方放送局 171からなる放送システムを表
している図である。
メイン放送局 141には、 複数のエディティング プロセッシングスタジオ 1 45A〜145D、 複数の MPE Gエンコーダ 142 A〜 142Dと、 複数の MP EGデコーダ 144A〜144Dと、 少なくとも 1つのマルチプレクサ 16 2Aと少なくとも 1つのデマルチプセクサ 161 Aとを備えている。 また、 この 放送局内 141には、 SMPTE 305 Mとして定義されている S D T I— CP (Ser ial Dat a Transi er Int e rf ace— Cont e n t Package) ネヅトワーク 150を備え、 各 MP E Gエンコーダ、 各 MP E Gデコーダ、 マルチプレクサ 162 A及びデマルチプレクサ 161 Aが 、 SDTI— CPネッ トワーク 150を介してエレメン夕リーストリームを送受 信するすることができる。 SDTI— CPは、 MPEGのエレメンタリーストリ —ムを伝送するために提案された通信フォーマツ トであって、 SMPTE 305 Mとして定義されている。 尚、 この SDT I— CPネットワーク 150上に転送 されたエレメンタリーストリ一ムは、 E S— o ve r— SDT I— CPと表現さ れている。
エディティング Zプロセッシングスタジオ 145 A〜 145 Dは、 ビデオサ一 バ一、 ビデオ編集機、 特殊効果装置及びビデオスィッチャなどを備えているス夕 ジォである。 MP E Gデコーダから復号化されたベーバンドのビデオデ一夕を受 け取り、 そのベースバンドのビデオデータに対して、 編集や画像処理を行ったあ と、 編集ビデオデ一夕又は画像処理ビデオデ一夕を、 MPEGエンコーダに出力 する。 すなわち、 エディティング /プロセッシングスタジオ 145 A〜 145 D は、 符号化ストリームのストリームプロセッシングではなく、 ベースバンドビデ ォ信号の編集や画像処理を行うためのプロセッシングュニットでる。
MP EGエンコーダ 142 A〜l 42Dは、 エディティング /プロセッシング スタジオ 145 A~ 145 Dからべ一スパンドの入力ビデオ信号を受け取り、 そ の入力ビデオデータを、 前述した MPEG規格に従ってエンコードし、 エレメン 夕リーストリーム (ES) を生成するための装置である。 MP EGエンコーダに
よって生成されたエレメン夕リーストリームは、 SDT I— CPネヅトワーク 1 50を介して、 MPEGデコーダ 144A〜144 Dのうちのいずれかの MP E Gデコーダ又はマルチプレクサ 162 Aに供給される。
MP EGデコーダ 144A〜144Dは、 M P E Gエンコーダ 142 A〜 14 2 D又はデマルチプレクサ 161Aから、 SDT I— CPネッ トワーク 150を 介して供給されたエレメン夕リーストリームを受け取り、 MP E G規格に基づい てデコード処理を行う。 マルチプレクサ 162 Aは、 メイン放送局内 141に おいて制作された複数のビデオプログラムを地方局 171又は各家庭に配信する ために、 多重化することによって一つのトランスポートストリームを生成するた めの回路である。 具体的には、 SDT I— CPネッ トワーク 150を介して複数 のビデオプログラムに対応する複数のエレメン夕リーストリーム受けとり、 各ェ レメン夕リーストリームをバケツト化することによってパケヅタイズドエレメン 夕リーストリームを生成し、 そのバケツタイズドエレメン夕リーストリ一ムから トランスポートストリームパケットを生成する。 複数のビデオプログラムから生 成されたトランスポ一トストリームパケッ トを多重化することによって、 マルチ プレクサ 162 Aは多重化されたトランスポートストリームを生成する。 尚、 こ のマルチプレクサ 162 Aの構成及び処理については、 後述する。
複数のビデオプログラムの伝送先が地方局 171の場合には、 マルチプレクサ 162 Aによって生成された多重化トランスポートストリームは、 地方局 171 のデマルチプレクサ 161 Bに ATMや衛星回線などのネヅトヮ一クを介して供 給される。 地方局 171は、 規模こそメイン局 141と異なるが、 全く同じシス テム構成を有しているので、 詳細については説明を省略する。
複数のビデオプログラムの伝送先が地方局 171の場合には、 マルチプレクサ 162 Aによって生成された多重化トランスポ一トストリームは、 各家庭のセッ ト トヅプボックス内に設けられている MPEGデコーダ 17 OAに、 ATMゃ衛 星回線などのネッ トワークを介して供給され、 デコードされたビデオデ一夕が T Vセッ トに供給される。
図 5は、 放送局内において SDT I—CPネヅ トヮ一クを介して伝送されるェ レメン夕リーストリームと、 公衆ネットワークを介しで伝送されるトランスポー トストリームとの違いを表している。
放送局内においては、 エレメンタリーストリームは、 SDTI— CPネットヮ —クを使用して伝送される。 この SDT I— CPネッ トワーク 150は、 SMP TE 259 Mによって規格化されている SD I (Ser ial Dat a I nt erf ace) をベースとした 270Mb p sの伝送速度を可能にしてい る通信フォーマッ トであって、 MPEG方式のエレメン夕リストリーム (ES) をそのまま伝送することが可能であり、 スタジオ内のような閉じたネットワーク に適している。 具体的には、 図 5 Aに示すように、 ビデオデ一夕のフレーム単位 で、 ビデオデータ 「V」 とオーディオデータ 「A」 がパッキングされており、 フ レームシンク (点線) により区切られたフレーム境界で、 簡単に編集を行うこと ができる。
放送局間の伝送や公衆ネットワークを使用する際には、 トランスポートストリ —ムの形態でビデオデ一夕が伝送される。 トランスポートストリームは、 伝送容 量の少ない公衆ネッ トワークにおいてもデ一夕転送を可能にするために、 図 5B に示すように、 ビデオデ一夕やオーディオなどのずベてのコンテンツは、 188 バイ 卜の単位にパッキングされて伝送される。 同様に、 「V」 はビデオデ一夕の トランスポートストリームバケツトと示し、 「A」 はオーディオデ一夕のトラン スポートストリームパケッ トを示し、 空白は空きデータのバケツ トを示している 次に、 図 6を参照して、 MP EGエンコーダ 142 A〜l 42Dについて説明 する。
まず最初に、 この MP EGエンコーダに供給される入力ビデオデ一夕について 補足する。 この実施例においては、 この入力ビデオデ一夕は、 24Hzのフレー ムレ一トを有していたソースビデオデ一夕に対して、 3— 2プルダウン処理を行 うことによって生成された 30Hzのビデオデ一夕である。 具体的には、 24
P
Hzのフレームレートを有したオリジナルのソースビデオデ一夕は、 各フレーム F l、 F2、 ……がそれぞれ 2つのフィールド ( トップフィールド t 1、 t 2、 ······及びボトムフィールド b 1、 b 2、 …… ) から構成されいるビデオデータで あって、 3— 2プルダウン処理では、 図 7Aに示すように、 トップフィールド ファーストである第 1のフレーム F 1ではトツプフィールド t 1を繰り返してリ ピートフィールド t 1 'を生成することにより 3フィールドで 1つのフレームを 構成し、 また、 ボトムフィールドファーストである第 3のフレーム F 3ではボト ムフィールド b 3を繰り返してリピートフィールド b 3 'を生成する。 このよう にして、 3— 2プルダウン処理では、 3フィールド構成のフレームと 2フィ一ル ド構成のフレームを交互に繰り返すことにより、 フレームレートが 24Hzのソ —スビデオデ一夕から、 図 7 Aのようなフレームレートが 30 H zのビデオデー 夕を生成することができる。
尚、 この実施例では、 入力ビデオデータが、 3— 2プルダウン処理によって生 成された入力ビデオデータの例を示しているが、 本発明は、 入力ビデオデータが 3-2プルダウンされたビデオデ一夕の実施例に限られるものではなく、 オリジ ナルソースビデオが 30 H zのフレームレートを有するビデオデータであって、 3-2プルダウン処理が施されていないビデオデータの場合であっても問題無く 適用できるものである。
図 6に示された MPEGエンコーダは、 補助デ一夕分離回路 101、 フィール ドカウン夕 102、 逆 3— 2プルダウン回路 103、 エンコーディングコント口 —ラ一 104、 動きべクトル検出回路 105、 スィツチ回路 1 1 1、 DCT回路 112、 量子化回路 113、 逆量子化回路 1 14、 逆 D C T回路 115、 加算回 路 1 16、 メモリ 1 17及び 118、 動き補償回路 119、 演算回路 120、 1 21、 122、 可変長符号化回路 125及び送信バッファ 126を備えている。 補助データ分離回路 101は、 入力ビデオデ一夕のブランキング期間から、 ァ ンシラリーデ一夕を抽出する回路である。 具体的には、 図 8に示したように、 入 力ビデオデータの垂直ブランキング期間に挿入されているアンシラリーデ一夕と
、 そのアンシラリーデ一夕が挿入されているライン番号を抽出する。 このアンシ ラリーデ—夕としては、 テレテキストデ—夕、 クローズドキャプションデ—夕、
SMPTE RP 164において定義されている' V I T C (Vert i ca l Int erval T ime Code ) や R P 196において定義されてい る LTC (L inear T ime C o d e ) 等であるが、 これのみに限定す る必要はない。 本実施例においては、 抽出したアンシラリ一データに関する情報 は、 Anc i l lar y_d at aとしてコントローラ 104に供給されるとと もに、 ライン番号に関する情報は、 L i ne— numb e rとしてコントローラ 104に供給される。 また、 VI TCに関する情報は、 Time— code— 1 としてコントローラ 104に供給され、 LTCに関する情報は、 T ime— c o de— 2としてコント口一ラ 104に供給される。
また、 補助デ一夕分離回路 101は、 入力ビデオデータが有する固有情報を入 力ビデオデ一夕から抽出する。 この固有情報とは、 例えば、 図 8に示したように 、 入力ビデオデータの全画素エリア AR 1に対するアクティブビデオエリア AR 2が存在する位置を示すデータであり、 具体的には、 アクティブビデオアリアの 垂直方向の開始位置を示すライン数及び水平方向の開始位置を示すサンプル数な どである。 本実施例においては、 アクティブビデオアリアの垂直方向の位置に関 する情報は、 V— p h a s eアクティブビデオァリァの水平方向の位置に関する 情報は、 H— pha s eとしてコントロ一ラ 104に供給される。 その他の固有 情報の例としては、 入力ビデオデ一夕に付与されたソース名称、 撮影場所、 撮影 時間などである。
補助デ一夕分離部 101から出力された入力ビデオデータは、 続くフィールド カウン夕 102に供給される。 フィールドカウン夕 102は、 入力ビデオデ一夕 の各フレームを構成するフィ一ルドを各フレームごとにカウントする回路である 。 フィールドカウン夕 102は、 そのフレーム毎のカウント情報を、 F i e l d — I Dとしてコントローラ 104に供給する。 たとえは、 図 7Aに示したような 入力ビデオデータがこのフィールドカウン夕 102に供給された場合には、 フレ
—ム F 1には 3つのフィールドが存在するので、 カウント情報として、 「0」、 「 1」 及び 「2」 の F i e ld— I Dが出力され、 フレーム F 2には 2つのフィ一 ルドが存在するので、 カウント情報として、 「0」 及び 「1」 の F ie ld— I Dが出力される。
さらに、 このフィールドカウン夕 102は、 入力ビデオデータのフィールドを カウントすることによってカウントアップされる 2つのカウン夕を備え、 この力 ゥン夕によるカウント値に関する情報を PT S— c ount e r及び DT S— c ount e rとしてコントローラ 104に出力する。
E Sヘッダを生成するときに、 PTS— c ount e rはプレゼンテーション タイムスタンプ (PTS) を生成するための情報として使用され、 DTS— c 0 unt e rはデコ一ディングタイムスタンプ (DTS) を生成するための情報と して使用される。
この PTS— count e r及び D TS— c ount e rについて、 図 9を参 照して詳細に説明する。
図 9は、 入力ビデオデ一夕の各フレームのフレーム構造と、 各フレームにおけ る PTS— c ount e r及び D TS— count e rの関係を示している図で ある。 図 9について詳細に説明する前に、 R e p e a t_f i r s t_f i e 1 d及び T o p_f i e ld— f i r stフラグについて補足しておく。 R e p e a t— f i r s t_f i e 1 dのフラグの" 1" は、 MPEGデコ一ド時に、 リ ピートフィールドを作成する必要があることを意味し、 Repeat— f ir s t— f i e 1 dのフラグの" 0"は、 MP EGデコード時に、 リビートフィール ドを作成する必要がないことを意味する。 T 0 p_f i e 1 d_f i r s tのフ ラグは、 フレームを構成するフィールドのうち、 最初のフィールドがトップフィ —ルドであるのか、 またはボトムフィールドであるのかを表している。 Top_ f i e ld_f ir s tフラグの" 1"は、 トップフィ一ルドがボトムフィ一ル ドより時間的に早いフレーム構造であることを表しており、 Top— f ie Id f i r s tフラグの" 0 " は、 ボトムフィ一ルドがトップフィ一ルドより時間
的に早いフレーム構造であることを表している。
図 9 Aは、 図 7 Aにおいて説明した入力ビデオデ一夕に関するフレーム構造に ついて説明するための図である。 具体的には、 最初のフレーム F 1をデコードす る際に、 単純にトップフィールドとボトムフィールドからなるフレームを生成す るのではなく、 トツプフィ一ルドをコピーしてリピ一トフィ一ルドを作成するこ とで、 3フィールドからなるフレームを生成する必要がある。 従って、 対応する Repeat— f i rst— f i e l dのフラグは" 1" となり、 To p_f i e 1 d_f i r s tのフラグは" 1 " となる。
フレーム F 2のデコード処理においては、 リピートフィールドを生成する必要 がないので、 R e p e a t— f i r s t— f i e 1 dのフラグは" 0" とされ、 ボトムフィ一ルドがトップフィールドより時間的に早いフレームであるため、 T o p— f i e 1 d— f i r s tのフラグは" 0" とされる。
フレーム F 3のデコ一ド処理においては、 そのボトムフィ一ルドをコピーして リピ一トフィールドが作成され、 符号化フレームが 3フィールドに変換されなけ ればいけない。 従って、 R e p e a t_f i r s t_f i e 1 dのフラグは" 1" とされ、 T o p_f i e 1 d_f i r s tのフラグは" 0" とされる。 フレーム F 4のデコード処理において、 リビ一トフィ一ルドが作成する必要は ないので、 R e p e a t_f i r s t_f i e 1 dのフラグは" 0" とされ、 T ο ρ— f i e 1 d— f i r s tのフラグは 1とされる。
さて、 上述したように、 PTS— c ount e rは PTSの基になるタイムス 夕ンプ情報であるので、 入力ビデオデータのフレーム順と一致している情報でな ければいけない。 具体的には、 この P T S— c o un t e rは、 0から 127ま で増加した後、 再び 0に戻るカウント動作を行うカウン夕一によって生成される 値である。 従って、 カウン夕 PTS— count e rの値は、 図 9 Bに示すよう に変化する。
具体的に説明すると、 入力ビデオデ一夕において、 最初のフレーム F 1は Iピ クチャであり、 最初に表示しなければいけないピクチャであるので、 PTS c
o un t e r の値は" 0"である。
2番目のフレーム F 2の PTS— c ount e rの値は、 フレーム F 1の PT S— c oun t e rの値" 0"に、 フレーム F 1に含まれているフィ一ルド数 "3"を加算した値" 3" (=0 + 3) となる。
3番目のフレーム F 3の PTS— c ount e rの値は、 フレーム F2の PT S— c o un t e rの値" 3"に、 フレーム F 2に含まれているフィ一ルド数 "2" を加算した値" 5" (=3 + 2) となる。 4番目のフレーム F4の PTS — c ount e rの値は、 フレーム F 3の PTS— c ount e rの値" 5"に 、 フレーム F2に含まれているフィールド数 " 3"を加算した値" 8" (=5 + 3) となる。 フレーム F 5以降の PTS— c ount e rの値も同様に算出され ο
さらに、 D T S— c o un t e rは、 D T Sの基になるタイムスタンプ情報で あるので、 入力ビデオデ一夕のフレーム順では無くて、 符号化ストリーム中のピ クチャ順と一致する情報でなければいけない。
図 9 Cを参照して、 具体的に説明すると、 最初のフレーム F 1は、 Iピクチャ であるので、 フレーム F 1が表示される表示タイミングょりフレーム F 1がデコ —ドされるタイミングが 1フレーム分だけ早くなくてはいけない。 すなわち、 フ レーム F 1の前のフレーム F 0は 2つのフィ一ルドから構成されているため、 D TS— count e rの値は、 表示タイムスタンプ P TS— c ount er = 0 を基準時間としたとき、 基準時間 "0" より "3" フィールド分だけ前の値" 1 25" となる。 尚、 DT S— c ount e rは 27 (= 128) のモジュロで表 されるため、 その値は 0から 127の間の値を循環する。
フレーム F 1の次に符号化されるフレーム F 4の D T S— c ount e rの値 は、 フレーム F 1の DTS— count e rの値 " 125" に、 フレーム F 1の フィールド数 "3" を加えた値 "0" (= 128 = 125 + 3) となる。
次に符号化されるフレーム F 2は Bピクチヤであるため、 D T S— c ount e rの値は、 PTS c ount e rと同じ値になり、 その値は" 3" となる。
同様に、 次に符号化されるフレーム F 3も Bピクチヤであるので、 DTS— c o unt erの値は、 P T S_c o u n t e rの値と同一とされ、 その値は" 5" とされる。 以下、 フレーム F 7以降の D TS— c ount e rの値も、 同様に算 出されるので、 ここでは、 その説明を省略する。
フィールドカウン夕一 102は、 上述した決まりに従って、 PTS— coun t e r及び DT S— c o un t e rを生成し、 コントローラ 104に供給する。 逆 3— 2プルダウン回路 103は、 フィールドカウン夕 102から出力された ビデオデ一夕を受け取り、 逆 3— 2プルダウン処理を行う。 この逆 3— 2ブルダ ゥン処理回路 103は、 図 7Aに示すような 3— 2プルダウン処理により得られ た 30 H zのフレームレートのビデオデ一夕を受け取って、 24 H zのフレーム レートのビデオデ一夕を生成するための回路である。 具体的には、 逆 3— 2プル ダウン処理回路 7は、 図 7 Bに示すように、 3— 2プルダウン処理によって挿入 されたリピートフィールド t 1 '及び b3 'を除去することによって、 30Hz のフレームレートのビデオデータを、 24 H zのフレームレートのビデオデ一夕 に変換する。 逆プルダウン処理回路 103は、 リビートフィールドを除去する際 に、 供給されたビデオデータのフレーム構造を解析し、 所定間隔で出現するリピ —トフィールドであると認定したフィ一ルドのみを除去するようにしている。 よ つて、 逆プルダウン処理回路 103は、 ビデオデータのフレーム構造を解析した ときに、 フレーム構造を表す情報として、 R e p e a t— f i r s t— f i e 1 dと T op— f i e 1 d_f i r s tのフラグを生成し、 コントローラ 104に 供給する。
動きべクトル検出回路 105は、 逆 3— 2プルダウン処理回路 103から出力 されたビデオデ一夕を、 マクロブロック単位で受け取り、 予め設定されている所 定のシーケンスに従って、 各フレームの画像デ一夕を、 Iピクチャ、 Pビクチャ 、 又は Bビクチャとして処理する。 シーケンシャルに入力される各フレームの画 像を、 I、 P又は Bのいずれのビクチャとして処理するかは、 オペレータによつ て指定される GOP構造に基づいて予め定められている。 検出された動きべクト
ル M Vは、 コントローラ 1 0 4及び動き補償回路 1 1 9に供給される。
スィッチ回路 1 1 1は、 画像内予測モードが設定されたとき、 スィッチを接点 aに切り換える。 従って、 このマクロブロックデ一夕は、 Iピクチャのデ一夕と 同様に、 D C T回路 1 1 2、 量子化回路 1 1 3、 可変長符号化回路 1 2 5及び送 信バッファ 1 2 6を介して伝送路に伝送される。 また、 この量子化デ一夕は、 逆 量子化回路 1 1 4、 逆 D C T回路 1 1 5、 及び演算器 1 1 6を介しての後方予測 画像用のフレームメモリ 1 1 7に供給される。 また、 前方予測モードが設定さ れた場合、 スィッチ 1 1 1が接点 bに切り換えられると共に、 の前方予測画像用 のフレームメモリ 1 1 8に記憶されている画像デ一夕 (この場合 Iピクチャの画 像デ一夕) が読み出され、 動き補償回路 1 1 9により、 動きベクトル検出回路 1 0 5がから供給されている動きべクトル M Vに基づいて動き補償が行われる。 す なわち、 動き補償回路 1 1 9は、 前方予測モードの設定が指令されたとき、 前方 予測画像用のメモリ 1 1 8の読出しアドレスを、 動きぺクトル検出回路 1 0 5が 、 現在出力しているマクロブロックの位置に対応する位置から動きべクトルに対 応する分だけずらしてデ一夕を読み出し、 予測画像デ一夕を生成する。
動き補償回路 1 1 9より出力された予測画像データは、 演算器 1 2 0に供給さ れる。 演算器 1 2 0は、 参照画像のマクロブロックのデ一夕から、 動き補償回路 1 1 9より供給された、 このマクロプロックに対応する予測画像データを減算し 、 その差分 (予測誤差) を出力する。 この差分データは、 0 ( 11回路1 1 2、 量 子化回路 1 1 3、 可変長符号化回路 1 2 5及び送信バッファ 1 2 6を介して伝送 路に伝送される。 また、 この差分デ一夕は、 逆量子化回路 1 1 4、 及び I D C T 回路 1 1 5により局所的に復号され、 演算器 1 1 6に入力される。
この演算器 1 1 6にはまた、 演算器 1 2 0に供給されている予測画像デ一夕と 同一のデ一夕が供給されている。 演算器 1 1 6は、 1 0〇11回路1 1 5が出力す る差分データに、 動き補償回路 1 1 9が出力する予測画像データを加算する。 こ れにより、 元の (復号した) Pピクチャの画像データが得られる。 この Pビクチ ャの画像データは、 フレームメモリの後方予測画像部 1 1 7に供給されて記憶さ
れる。
動きベクトル検出回路 1 0 5は、 このように、 Iビクチャと Pピクチャのデ一 夕が前方予測画像部 1 1 8と後方予測画像部 1 1 7にそれぞれ記憶された後、 次 に Bピクチヤの処理を実行する。 画像内予測モ一ド又は前方予測モードの時、 スィッチ 1 1 1は接点 a又は bに切り換えられる。 このとき、 Pビクチャにおけ る場合と同様の処理が行われ、 デ一夕が伝送される。
これに対して、 後方予測モード又は両方向予測モードが設定されたとき、 スィ ツチ 1 1 1は接点 c又は dにそれぞれ切り換えられる。
スィッチ 1 1 1が接点 cに切り換えられている後方予測モードのとき、 後方予 測画像部 1 1 7に記憶されている画像 (現在の場合、 Pビクチャの画像) データ が読み出され、 動き補償回路 1 1 9により、 動きベクトル検出回路 1 0 5が出力 する動きべクトルに対応して動き補償される。 すなわち、 動き補償回路 1 1 9は 、 後方予測モードの設定が指定されたとき、 後方予測画像部 1 1 7の読み出しァ ドレスを、 動きベクトル 1 0 5が、 現在出力しているマクロブロックの位置に対 応する位置から動きべクトルに対応する分だけずらしてデ一夕を読み出し、 予測 画像デ一夕を生成する。
動き補償回路 1 1 9より出力された予測画像データは、 演算器 1 2 1に供給さ れる。 演算器 1 2 1は、 参照画像のマクロブロックのデ一夕から、 動き補償回路 1 1 9より供給された予測画像デ一夕を減算し、 その差分を出力する。 この差分 デ一夕は、 D C T回路 1 1 2、 量子化回路 1 1 3、 可変長符号化回路 1 2 5及び 送信バッファ 1 2 6を介して伝送路に伝送される。
スィッチ 1 1 1が接点 dに切り換えられている両方向予測モードのとき、 前方 予測画像部 1 1 8に記憶されている画像 (現在の場合、 Iビクチャの画像) デー 夕と、 後方予測画像部 1 1 7に記憶されている画像 (現在の場合、 Pピクチャの 画像) デ一夕が読み出され、 動き補償回路 1 1 9により、 動きベクトル検出回路 1 0 5が出力する動きべクトルに対応して動き補償される。
すなわち、 動き補償回路 1 1 9は、 両方向予測モードの設定が指定されたとき
、 前方予測画像部 118と後方予測画像部 117の読み出しアドレスを、 動きべ クトル検出回路 105がいま出力しているマクロブロックの位置に対応する位置 から動きベクトル (この場合の動きベクトルは、 前方予測画像用と後方予測画像 用の 2つとなる) に対応する分だけずらしてデータを読み出し、 予測画像デ一夕 を生成する。 動き補償回路 119より出力された予測画像デ一夕は、 演算器 1 22に供給される。 演算器 122は、 動きべクトル検出回路 105より供給され た参照画像のマクロブロックのデ一夕から、 動き補償回路 119より供給された 予測画像データの平均値を減算し、 その差分を出力する。 この差分データは、 D C T回路 1 12、 量子化回路 1 13、 可変長符号化回路 125及び送信バッファ 126を介して伝送路に伝送される。
Bビチクャの画像は、 他の画像の予測画像とされることがないため、 フレーム メモリ 117、 118には記憶されない。
コントローラ 104は、 上述した予測モードに関する処理、 DCTモードに関 する処理及び量子化に関する処理に携わる全ての回路をコントロールする。 さら には、 コントローラ 104は、 各ビクチャのエンコーディング処理において発生 した、 動きベクトル、 ピクチャタイプ、 予測モード、 DCTモード、 量子化ステ ップなどの全てのコ一ディングパラメ一夕を、 可変長符号化回路 125に供給す る ο
また、 コントローラ 104は、 補助デ一夕分離回路 101から、 V— phas e、 H— phas e、 T ime― c ode 1 s T ime― code 2、 An c i 11 a r _d a t a及び L i n e— numb e rに関する情報を受け取る と共に、 フィ一ルドカウン夕 102から DT S— c ount e rPT S_c o u n t e r及び F i e 1 d— I Dに関する情報を受け取る。 コントローラ 104は 、 受け取った、 V— phas e、 H— phas e、 T ime— c ode l、 Time― code 2、 Anc i l lary― d a t a、 L ine― numb er、 DTS— c ount er P T S— c o u n t e r及び F i e 1 d— I Dに関する情報を、 MPEG_E S_e d i t i ng_i nf ormat i on
(i) として可変長符号化回路 125に供給する。
可変長符号化回路 125は、 量子化回路 113から量子化された DC T係数及 びコントローラ 104から供給されたコ一ディングパラメ一夕を可変長符号化す ると共に、 MP E G規格において定められているエレメン夕リーストリームのシ ンタックスに従って、 符号化ストリームを生成する。
実施例の特徴ある点として、 さらに、 可変長符号化回路 125は、 コント口一 ラ 104から MPE G— E S— ed i t ing— inf ormat i on ( i ) として供給された情報を可変長符号化し、 符号化ストリーム中に挿入する処理を 行う。 符号化ストリームのシン夕ックス及び MPEG— E S_e d i t i n _ inf o rmat i on ( i) のシン夕ヅクスについては、 詳しくは後述する。 次に、 図 10乃至図 26を参照してビットストリームのシン夕ヅクスについて 説明する。 尚、 図 26は、 図 10から図 25において説明している詳細なシン夕 ックスを、 より理解しやすい形式で MP EG符号化ストリームのデ一夕構造を示 している説明図である。
図 10は、 MP E Gのビデオストリームのシン夕ヅクスを表わした図である。 MPEGエンコーダ 42は、 この図 10に示されたシンタックスに従った符号化 エレメン夕リストリームを生成する。 以下に説明するシンタックスにおいて、 関 数や条件文は細活字で表わされ、 デ一夕エレメントは、 太活字で表されている。 デ一夕項目は、 その名称、 ビット長およびそのタイプ ·伝送順序を示す二一モニ ヅク (Mnemoni c) で記述されている。
まず、 この図 10に示されているシンタックスにおいて使用されている関数に ついて説明する。 実際には、 この図 10に示されているシンタックスは、 MPE Gデコーダ 44側において、 伝送されてきた符号化ビットストリームから所定の 意味のあるデ一夕エレメントを抽出するために使用されるシン夕ヅクスである。 MP EGエンコーダ 42側において使用されるシンタックスは、 図 10に示され たシン夕ックスから i f文や wh i 1 e文等の条件文を省略したシンタックスで ある。
vide o_s equence () において最初に言 3述されている n e x t— st ar t_c o d e () は、 ビットストリーム中に記述されているス夕一トコ ードを探すための関数である。 この図 10に示されたシンタックスに従って生成 された符号化ストリームには、 まず最初に、 s e q u e n c e— h e a d e r ( ) と s e q u e n c e一 ext ens i on () によって定義されたデ一夕エレ メントが記述されている。 この s equenc e— heade r () は、 MPE Gビヅ トストリームのシーケンスレイヤのヘッダデ一夕を定義するための関数で あって、 s equence— ext ens i on () は、 MPEGビヅトストリ —ムのシーケンスレイヤの拡張デ一夕を定義するための関数である。
s equence― ext ens i on () の次に酉己置されてレヽる d o 1_ } whi l e構文は、 wh i 1 e文によって定義されている条件が真である間、 d o文の { } 内の関数に基いて記述されたデータエレメントが符号化デ一夕スト リーム中に記述されていることを示す構文である。 この wh i 1 e文に使用され ている nextb i t s () は、 ビッ トストリーム中に記述されているビット又 はビット列と、 参照されるデ一夕エレメントとを比較するための関数である。 こ の図 10に示されたシンタックスの例では、 nextbi t s () は、 ビットス トリーム中のビヅ ト列とビデオシーケンスの終わりを示す s e q u e n c e_e n d_c odeとを比較し、 ビッ トストリーム中のビット列と s e q u e n c e — end— c odeとが一致しないときに、 この wh i 1 e文の条件が真となる 。 従って、 s e q u e n c e_e xt ens i on () の次に配置されている d o { } whi l e構文は、 ビッ トストリーム中に、 ビデオシーケンスの終わり を示す s e q u e n c e_e n d_c odeが現れない間、 d o文中の関数によ つて定義されたデータエレメン卜が符号化ビットストリーム中に記述されている ことを示している。
符号化ビヅ トス ト リ一ムにおいて、 s e q u e n c e— e X t e n s i o n ( ) によって定義された各デ一夕エレメン卜の次には、 ext ens i o n— a n d— us e r— dat a (0) によって定義されたデ一夕エレメントが記述され
ている。 この ext ens i o n— a n d_u s er— dat a (0) は、 MP EGビヅ トストリームのシーケンスレイヤにおける拡張デ一夕とユーザデ一夕を 定義するための関数である。 この ext ens i on —and —us e r一 dat a (0) の次に配置されている do { } whi l e 構文 は、 whi le 文によって定義されている条件が真である間、 do文の
{ } 内の関数に基いて記述されたデ一夕エレメントが、 ビッ トストリームに 記述されていることを示す関数である。 この whi le 文において使用されて いる next b i t s () は、 ビットストリーム中に現れるビッ ト又はビット列 と、 p i c ture ― s t art ― code又は group ― s t art — c odeとの一致を判断するための関数であるって、 ビットストリ一ム中に現 れるビッ ト又はビッ ト列と、 pi c ture —s t art — code又は g roup —s t art — c o d eとが一致する場合には、 wh i 1 e 文に よって定義された条件が真となる。 よって、 この do {
} whi l e 構文は、 符号化ビヅトストリーム中において、 p i cture ― s t art ― code又は group ― s t art ― c odeが現れた 場合には、 そのスタートコードの次に、 d o文中の関数によって定義されたデ一 夕エレメントのコードが記述されていることを示している。 この d o文の最 初に記述されている i f文は、 符号化ビッ トストリーム中に g r o up —s t art —codeが現れた場合、 という条件を示しいる。 この i f文による条 件は真である場合には、 符号化ビットストリーム中には、 この group — s t art ― codeの次に group ― of― i cture ― head e r () および ext ens i on ― and ― u ser― dat a (1) によって定義されているデ一夕エレメントが順に記述されている。 この g r o up —of—p i c ture 一 h e a d e r () は、 MP E G符号化ビヅ トストリ一ムの GOP レイヤのへヅダデ一夕を定義するための関数であって、 ext ens i on ― and ― us er― dat a (1) は、 MPEG符 号化ビッ トストリームの GO P レイヤの拡張デ一夕およびユーザデ一夕を定義
するための関数である。
さらに、 この符号化ビットストリームにおいて、 g r o up— o f— p i c t ur e― he ad e r () および ext ens i o n― a n d― us e r― a a t a ( 1) によって定義されているデータエレメントの次には、 p i c t ur e ― he ad e r () と p i c t ur e― c o d i n ― ext ens i on u によって定義されたデ一夕エレメントが記述されている。 もちろん、 先に説明し た i f文の条件が真とならない場合には、 g r 0 up— o f _p i c t u r e ― h e a d e r () および ext e ns i on― an d― u s e r― dat a ( 1) によって定義されているデ一夕エレメントは記述されていないので、 ext ens i o n一 and― us e r― d at a (, ϋ ) によって定義されているデ一 夕エレメントの次に、 p i c t ur e一 he ad e r ()ヽ p i c t ur e一 c o d 1 n ― ex t ens i on () および ext ens i o n― a n d― u s e r_d a t a (2) によって定義されたデ一夕エレメントが記述されている。 この p i c t u r e— h e a d e r () は、 M P E G符号化ビットストリーム のピクチャレイヤのヘッダデ一夕を定義するための関数であって、 p i c t u r e_c od i n g_e x t ens i on () は、 MPE G符号化ビットストリ一 ムのピクチャレイヤの第 1の拡張デ一夕を定義するための関数である。 ext e n s i o n_and_u s e r_d a t a (2) は、 MP EG符号化ビットスト リームのピクチャレイャの拡張デ一夕およびユーザデ一夕を定義するための関数 である。 この ex t ens i on一 and一 us e r一 dat a ( 2 によって 定義されるユーザデータは、 ピクチャレイヤに記述されているデ一夕であって、 各ピクチャ毎に記述することのできるデータである。
符号化ビヅ トストリームにおいて、 ピクチャレイヤのユーザデータの次には、 p i c t ur e— d at a () によって定義されるデ一夕エレメントが記述され ている。 この p i c t u r e一 d a t a () は、 スライスレイヤおよびマクロブ 口ックレイヤに関するデ一夕エレメントを記述するための関数である。
この p i c t ur e dat a () の次に記述されている wh i 1 e文は、 こ
の wh i 1 e文によって定義されている条件が真である間、 次の i f文の条件判 断を行うための関数である。 この wh i 1 e文において使用されている nex t b i t s () は、 符号化ビットストリーム中に、 p i c t ur e_s t ar t— c o d e又は g r o up— s t ar t_c o d eが記述されているか否かを判断 するための関数であって、 ビッ トストリーム中に p i c t ur e— s t ar t— c o d e又は g r o u p_s t ar t— c o d eが記述されている場合には、 こ の wh i 1 e文によって定義された条件が真となる。
次の i f文は、 符号化ビットストリーム中に s e q u e n c e_e nd_c o d eが記述されているか否かを判断するための条件文であって、 s e qu e n c e— e n d_c o d eが言己述されていないのであれば'、 s e q u e n c e_h e a d e r () と s e q u e n c e— e x t e n s i o n () とによって定義され たデ一夕エレメントが記述されていることを示している。 s e quenc e— e nd —c o d eは符号化ビデオストリームのシーケンスの終わりを示すコ一ド であるので、 符号化ストリームが終了しない限り、 符号化ストリーム中には s e q u e n c e― he ad e r () と s e quen c e― ext e ns i on () とによって定義されたデ一夕エレメン卜が記述されている。
この s e que n c e一 he ad e r () と s e q u e n c e一 e x t ens i on () によって記述されたデ一夕エレメントは、 ビデオストリームのシーケ ンスの先 に Βΰ述された s e q u e n c e一 he ad e r () と s equenc e— ext ens i o n () によって記述されたデ一夕エレメントと全く同じで ある。 このように同じデ一夕をストリーム中に記述する理由は、 ビットストリ一 ム受信装置側でデータストリ一ムの途中 (例えばピクチャレイヤに対応するビッ トストリーム部分) から受信が開始された場合に、 シーケンスレイヤのデ一夕を 受信できなくなり、 ストリームをデコード出来なくなることを防止するためであ る。
この最後の s e q u e n c e一 he ad e r () と s e q u e n c e一 e x t e ns i on () とによって定義されたデ一夕エレメントの次、 つまり、 デ一夕
ストリームの最後には、 シーケンスの終わりを示す 2ビットの s e quenc e _e nd— c o d eが記述されている。
以下に、 s e quenc e― he ad e r ()、 s e quen c e― e x t e n s i o n ()、 ex t ens i o n― and― u s e r― da t a (0)、 g r
0 u p― o f― p i c t ur e― he ad e r ()、 i c t ur e― he ad e r ()、 p i c t ur e― c o d i ng― ex t ens i on ()、 および p i c t u r e_d a t a () について詳細に説明する。
図 1 1は、 s e quenc e_h e a d e r () のシン夕ヅクスを説明するた めの図である。 この s e quenc e_h e a d e r () によって定義されたデ —夕エレメントは、 s e quenc e― he ad e r― c o d e、 h o r i z o nt a丄一 s i z e一 v a iue、 ve r t i c a l一 s i z e一 v a 1 u e、 a s p e c t― r a t i o― i n f o rmat i on、 f r ame― rat e― c o d e、 b i t― r at e― va lue、 ma rke r― b i t、 vbv― b u f f e r― s i z e― v a lue、 c ons t ra i ne d― p a r a m e t e r― f l ag、 l o ad― int r a― quant i z e r一 ma t r i x、 i nt r a― quant i z e r一 mat r ix [64]、 l o ad― n o n―
1 n t r a― quant i z e r― ma t r i x および no n― i n t r a― quant i z e r― m a t r i x等である。
s e q u e n c e一 he a d e r― c o deは、 シーケンスレイヤのスタート 同期コ一ドを表すデ一夕である。 ho r i z ont a l― s i z e― v a 1 u e は、 画像の水平方向の画素数の下位 12ビットから成るデ一夕である。 ve r t i c a l_s i z e_v a 1 u eは、 画像の縦のライン数の下位 12ビットから なるデータである。 a s p e c t― r a t i o― i nf o rmat i onは、 画 素のアスペクト比 (縦横比) または表示画面アスペクト比を表すデ一夕である。 f r ame— r a t e— c o d eは、 画像の表示周期を表すデ一夕である。 b i t_r a t e— v a 1 u eは、 発生ビッ ト量に対する制限のためのビヅト · レ一 トの下位 18ビッ ト (400 b sp 単位で切り上げる) デ一夕である。 ma r
k e r_b i tは、 ス夕一トコ一ドエミュレ一シヨンを防止するために挿入され るビヅ トデ一夕である。 V b V— b u f f Θ r_s i z e— v a 1 u eは、 発生 符号量制御用の仮想バッファ (ビデオバッファべリファイヤー) の大きさを決め る値の下位 10ビッ トデ一夕である。 cons t raine d一 p a r am e t er— f l agは、 各パラメ一夕が制限以内であることを示すデータである。 1
0 a d一 i n t r a一 quant i z e r― ma t r ixは、 イントラ MB用量 子化マトリヅクス ·デ一夕の存在を示すデ一夕である。 i nt r a— quant
1 z e r_ma t r i x [64] は、 イントラ MB用量子化マトリックスの値を 示す^ ~一夕である。 l oad― no n― int ra一 quant i z e r _ m a t r i xは、 非ィントラ MB用量子化マトリックス ·デ一夕の存在を示すデ一夕 である。 n o n一 1 n t r a― q u a n t ι z e r一 ma t r i xは、 非ィント ラ MB用量子化マトリックスの値を表すデ一夕である。
図 12は s equence— ext ens i on () のシンタックスを説明す るための図である。 この s e q u e n c e— e X t e n s i o n () によって定 義されたデ一夕エレメントとは、 ext ens i o n— s t art— c ode、 ext ens i o n― s t art― code― i dent if i ers prof i 1 e一 and― 1 eve 1― i n d i cat i on、 p r o g r e s s i v e ― s equences chroma― f ormat、 hor i z ont al― s i ze一 ext ens i on、 ve rt i c a 1― s i z e― ext ens i o n、 b i t― rat e― ext ens i o n vbv― buf f er― s i z e ― ext ens i on、 l ow― d e 1 a y f rame― rat e― e x t e n s i o n― n、 および f rame― rat e― e x t ens i o n― d等のデ —夕エレメントである。
ext ens i on_st art— codeは、 ェクステンションデ一夕のス夕 ―ト同期コ一ドを表すデ一夕である。 ext ens i o n― s t art― cod e_i dent if i e rは、 どの拡張データが送られるかを示すデ一夕である 。 prof i l e and l eve l ind i cat i onは、 ビデオデ一
夕のプロファイルとレベルを指定するためのデ一夕である。 p r o gr e s s i V e_s e qu e n c eは、 ビデオデ一夕が順次走査であることを示すデ一夕で ある。 c h r oma— f 0 r ma tは、 ビデオデ一夕の色差フォーマッ トを指定 するためのデ一夕である。 ho r i z ont a l― s i z e― ex t ens i o nは、 シーケンスへヅダの h o r i znt a l— s i z e_v a 1 eに力 Bえる 上位 2ビッ トのデ一夕である。 V e r t i c a 1— s i z e_e x t e n s i o nは、 シーケンスへッダの ve r t i c a 1 _ s i z e— va l ue力 Dえる上位 2ビヅ トのデ一夕である。 b i t— r a t e_e x t e n s i o nは、 シーケン スへヅダの b i t _r a t e_v a lueに加える上位 12ビッ トのデ一夕であ る。 vbv一 buf f e r一 s i z e― ext ens i o nは、 シーケンスへヅ ダの vb V— buf f e r_s i z e_v a 1 u eに加える上位 8ビッ卜のデ一 夕である。 l ow_d e l ayは、 Bピクチャを含まないことを示すデータであ る。 f r ame― r at e― ext ens i on _ n{ま、 シーケンスヘッグの f r ame_r a t e_c o d eと組み合わせてフレームレートを得るためのデ一 夕である。 : f r am e— r a t e_e X t e n s i o n— dは、 シーケンスへッ ダの f r ame— r at e— c o d eと組み合わせてフレームレ一トを得るため のデ一夕である。
図 1 3は、 ext e ns i o n— a n d_u s e r— d a t a ( i ) のシン夕 ヅクスを説明するための図である。 この ex t e ns i o n— a n d_u s e r — d a t a ( i ) は、 「 i」 が 1以外のときは、 ex t ens i o n— d a t a () によって定義されるデータエレメントは記述せずに、 u s e r— da t a ( ) によって定義されるデ一夕エレメントのみを記述する。 よって、 ext ens i o n― and― u s e r― d at a (0) は、 us e r― d a t a () によつ て定義されるデ一夕エレメントのみを記述する。
まず、 図 13に示されているシン夕ックスにおいて使用
されている関数について説明する。 nex t b i t s () は、 ビッ トストリーム 中に現れるビヅ トまたはビット列と、 次に復号されるデ一夕エレメントとを比較
するための関数である。
図 14の u s e r_d a t a () は、 本実施例の特徴のあつ点を説明している 図である。 図 14に示すように、 us e r— d a t a () は、 u s e r_d a t a― s t art― c ode, V— phase (), H— phas e (), T im e― code (), P i c ture― order (), Anc i l lary― da t a (), hi s t o ry— dat a (), および us er— dat a () に関す るデ一夕エレメントを記述するための関数である。
us er— dat a— s t art— codeは、 MPE G方式のビヅ トス ト リ 一ムのピクチャレイヤのユーザデ一夕エリアの閧始を示すためのスタートコ一ド である。 この us e r_d a t a— s t art— c od eの次に記述されている i f文は、 us e r_d a t a ( i ) の iが" 0"のとき、 次に記述されている wh i 1 e構文を実行する。 この whi l e構文は、 ビッ トストリーム中に、 2 3個の" 0" とそれに続く" 1"から構成される 24ビットのデ一夕が現れない 限り真となる。
この 23個の" 0" とそれに続く" 1"から構成される 24ビッ トのデ一夕は 、 すべてのスタートコードの先頭に付与されるデ一夕であって、 すべてのス夕一 トコ一ドは、 この 24ビヅトの後ろに設けられることによって、 next bi t s () は、 ビッ トストリーム中において、 各スタートコードの位置を見つけるこ とができる。
wh i 1 e構文が真のとき、 us e r_d a t a ( i ) の iが" 0 " のときを しめしているので、 これはシーケンスレイヤの e X t n t i o n— a n d_u s e r_d a t a ( 0 ) を示すことになる。 つまり、 図 26において、 シ一ケン スレイヤにおいて、 e X t n t i 0 n一 a n d— u s e r— d a t a (0) 20 5に関するデータエレメントが記述されていることを示している。 その次に記述 されている i f文の nextb i t s () は、 V— Phas eを示すビヅ ト列 ( D a t a— I D) を検出すると、 そのビット列 (D a t a— I D) の次ビットか ら V— Phas e () で示される V— P h a s eのデ一夕エレメントが記述され
ていることを知る。 次の E l se if文の nextb i t s () は、 H— Ph a s eを示すビヅ ト列 ( D a t a— I D ) を検出すると、 そのビット列 ( D a t a_I D) の次ビヅ 卜から H— Phas e () で示される H— P ha s eのデ一 夕エレメントが記述されていることを知る。
つまり、 図 26に示したように V— Pha s e () 220及び H— Phas e () 221に関するデ一夕エレメントは、 シーケンスレイヤのュ一ザデ一夕エリ ァに記述されているということを意味する。
ここで、 図 15に示すように、 V— Phas eの Dat a— IDは、" 01" を表すビッ ト列であり、 H— Pha s eの D a t a— I Dは、" 02" を表すビ ット列である。
ビッ トストリームに記述される V— P ha s e () のシンタックスについて、 図 16を参照して説明する。 まず、 D a t a— I Dは、 前述したように、 その D a t a— I Dの次のビット列のデータエレメントが V— P h a s eであることを 表す 8ビッ トのデ一夕であり、 図 15で示した値" 01"である。 V— Pha s eは、 画像信号のフレームにおいて、 符号化される最初のラインを示す 16ビッ トのデ一夕である。 言いかえると、 V— Phas eは、 アクティブビデオエリア の垂直方向のライン位置を示すデータである。
ビヅトストリームに記述される H— Pha s e () のシンタックスについて、 図 17を参照して説明する。 まず、 Da t a— I Dは、 前述したように、 その D at a— IDの次のビット列のデ一夕エレメントが H— Pha s eであることを 表す 8ビッ トのデ一夕であり、 図 15で示した値" 02"である。 H— Phas eは、 画像信号フレームにおいて、 符号化される最初のサンプルを示す 8ビッ ト のデ一夕である。 言いかえると、 H— Phas eは、 アクティブビデオエリアの 水平方向の画素サンプル位置を示すデ一夕である。
図 14に戻って、 次の E 1 s e i f文は、 e x t n t i o n— a n d_u s e r_d a t a ( i ) の iが 2のとき、 次に記述されている wh i 1 e構文を実 行する。 wh i 1 e構文の内容は前述した場合と同様であるので、 ここではその
説明を省略する。
wh i 1 e構文が真のとき、 次の i f文において、 nex t b i t s () は、 T ime c o d e 1を示すビット列を検出するか、 または、 T ime c o d e 2を示すビット列を検出すると、 そのビッ ト列の次ビットから T ime_c o d e () で示される T ime c o d eのデ一夕エレメントが記述されているこ とを知る。 つまり、 ex t nt i o n— a n d_u s e r_d a t a ( i ) の i が 2のときとは、 このユーザデ一夕がビクチャレイヤにあることを意味し、 つま り、 図 2 6に示すように、 この T ime— c o d e () 24 1によって表される デ一夕エレメントは、 ピクチャレイヤのュ一ザ一で 夕エリアに記述されている データであるということである。
T ime c o d e lの D a t a— I Dは、 図 1 5に示すように、" 03" を 表すビッ ト列であり、 T ime c o d e 1のデ一夕は、 画像の垂直ブランキン グ期間に揷入されたタイムコ一ドを示す、 V I T C (Ve r t i c a l I n— t e r V a 1 T ime C o d e) である。 T ime c o d e 2の D a t a — I Dは、 図 1 5に示すように、" 04" を表すビット列であり、 T ime c o d e 2のデ一夕は、 記録媒体のタイムコードトラックに記録されたタイムコ一 ドを示す、 LT C (L o ng i t ud i na 1 T ime C o d e又は L i ne a r T ime C o d e ) である。
図 1 8及び図 1 9は、 T ime c o d e () のシンタックスを示している 図である。 図 1 8に示されているように、 タイムコードは、 72ビッ トのデ一夕 で表されており、 図 1 9具体的なデータ構造を示している
図 1 9において、 c o 10 r— f r ame— f 1 a gは、 カラ一フレーム情報 に関するコントロールフラグを表わし、 次の D r 0 p__f r ame— f l a gは 、 ドロップフレームに関するコントロールフラグを表わしている。 次の 3ビッ ト 目から 8ビット目までの 6ビットは、 タイムコードの 'フレーム' の部分を表わ し、 f i e 1 d— p h a s eは、 フェイズコレクションに関するコントロールフ ラグを表わし、 1 0ビッ ト目から 1 6ビッ ト目までの 7ビットは、 タイムコード
の '秒' の部分を表わしている。 17ビット目、 34ビヅト目、 51ビット目及 び 68ビヅ ト目の ' 1' は、 前述したように 0が 23個連続しないようにするた めのマ一力一ビッ トであって、 このように所定間隔でマ一カービッ トを挿入する ことによって、 ス夕一トコ一ドエミュレ一シヨンを防止することができる。
18ビッ ト目、 26ビッ ト目及び 27ビット目の b inar y_ r o u pは 、 バイナリグループに関するコントロールフラグを表わし、 19ビッ ト目から 2 5ビット目の 7ビッ トは、 タイムコードの '分' の部分を表わし、 28ビヅト目 から 33ビット目の 6ビッ トは、 タイムコードの '時, の部分を表わしている。 図 14の E l s e i: 文において、 next b i t s O は、 P i ctur e 0 r d e rを示すビッ ト列を検出すると、 そのビッ ト列の次ビットから P i cture— Orde r () で示される P i c ture Orderのデ一タエ レメントが記述されていることを知る。 ここで、 P i c t u r e— 0 r d e r ( ) の D a t a— I Dは、 図 15に示すように、" 05" を表すビヅ ト列である。 実際に、 エンコーダでエレメン夕リストリーム (ES) に挿入する P i c tu re— Order () のシンタックスを、 図 20を参照して説明する。 まず、 D at a— I Dは前述したように、 その Dat a— ID以降のデ一夕が P i c t u r e_0 r d e rのデータであることを示す 8ビヅトのデ一夕であり、 その値 は" 05"である。 D T S— p r e s e n c eは、 符号化順序 D T S— c o un t e rの有無を表す 1ビットのデ一夕である。 例えば、 Bピクチャのように D T S— c ount er = PTS— c ount e rとなる場合、 表示順序 P T S— c ount e rのみが存在し、 D T S_p r e s e η c eのビヅ トは" 0" となる 。 逆に、 Pピクチャおよび Iビクチャの場合、 符号化順序 DTS— count e rと表示順序 P T S— c o un t e rは同一ではないので、 表示順序 P T S_c ount e rと符号化順序 DT S— c ount e rの双方が存在し、 DT S— p resenceのビッ トは 1となる。 尚、 P i c ture一 Order () に関 するデ一夕エレメントは、 図 26に示したように、 T ime— Code () と同 じょうに、 ピクチャレイヤのユーザ一デ一夕エリァに記述されている。
PTS— c ount e rは、 前述したように、 MP E Gエンコーダ内のフィー ルドカウン夕 102によって生成される値であって、 入力ビデオデータにおいて 1フィールドが入力されるごとにカウントアップを行う、 表示順序を表す 7ビッ トのデ一夕である。 この 7ビットのデ一夕は、 0から 127までの値をとるモジ ュロである。 if文以降は、 D T S— p r e s e n c eのビッ トが 1のとき、 す なわち、 Pピクチャおよび Iピクチャのとき、 D T S— c o un t e rのカウン トアップが実行される。
M a r k e r— b i t sは、 us e r d a t aの記述されたビッ ト列が、 偶 然に前述したスタートコードと一致し、 画像破錠を引き起こす可能正が高い、 ス 夕一トコ一ドエミュレ一シヨンを防止するために、 16ビヅトごとに挿入される ビッ トである。
DTS— count e rは、 MPE Gエンコーダ内のフィールドカウン夕 10 2によって生成される値で、 1フィ一ルド分の符号化画像デ一夕が符号化される ごとにカウントアップを行う、 符号化順序を表す 7ビッ トのデ一夕である。 この 7ビッ トのデ一夕は、 0から 127までの値をとるモジュロである。
図 14に戻って、 その次に記述されている wh i 1 e 構文も、 内容は前述し た場合と同様であるので、 ここではその説明を省略する。 whi l e構文が真の とき、 次の i f文において、 nextb i t s () は、 Anc i l l ary d a t aを示すビヅ ト列を検出すると、 そのビヅ ト列の次ビッ 卜から Anc i l l a r y 一 dat a () で示される Anc i l l ary d a t aのデ一夕エレ メン卜が記述されていることを知る。 Anc i l lar y_d a t a () の D a t a— IDは、 図 15に示すように、" 07"を表すビット列である。 尚、 An c i 11 a r y_d a t a () に関するデ一夕エレメントは、 図 26に示したよ うに、 P i cture—Order () や T ime— Code () と同じように 、 ピクチャレイヤのユーザ一デ一夕エリァに記述されている。
この補助データに識別子を付加する an c i l l ary d a t aのシン夕ヅ クスを図 21を参照して説明する。 Anc i l l ary dat a () はピク
チヤレイヤの us er dat aとして揷入され、 デ一夕としては Fi e ld 識別子 (F i e 1 d一 I D)ヽ ラインの番号 (L i ne— numb e r) および アンシラリーデ一夕 (anc i l l ary dat a) が揷入される。
Dat a— IDは、 us e r dat a 領域において、 anc i l lary d a t aであることを示す 8ビヅトのデ一夕であり、 その値は図 15に示したよ うに" 07"である。
F i e 1 d— I Dは 2ビッ トのデ一夕であり、 入力ビデオデータがプログレッ シブビデオであるか否かを示すフラグである p r ogre s s iv e_s e q u e n c e_f 1 a gの値が" 0"のとき、 つまり、 入力ビデオがイン夕一レース のビデオデ一夕であるとき、 符号化フレーム内のフィ一ルドごとに F i e 1 d — I Dが付加される。
この F i e ld —IDについて、 図 7を参照して説明する。
repeat— f i rs t —: f i e ld に" 0 " が設定されているとき、 この符号化フレームにはフィールドが 2枚存在し、 F i e ld— IDは、 最初の フィールドに" 0"、 およびその次のフィールドに" 1 " が設定される。 rep e a t— f i r s t— f i e 1 dに" 1 " が設定されているとき、 この符号化フ レームにはフィールドが 3枚存在し、 F i e 1 d— I Dとしては、 最初のフィ一 ルドに" 0"が設定され、 それ以降のフィールドに" 1"," 2"が設定される。 図 7 Cを参照して、 さらに詳しく説明する。 図 7 C の符号化ストリームは、 図 7Bに示される入力ビデオデ一夕を符号化したときの、 符号化ストリームに関 する図である。 この符号化ストリームは、 複数のアクセスユニッ ト (AU1、 A U2...) からなるエレメンタリーストリームから構成されており、 図 7 Cは、 そのエレメン夕リーストリーム中にアンシ夕リーデ一夕と F i e 1 d— I Dに関 する情報が記述されていることを示している図である。
この符号化ストリームは、 フレーム F 1に関しては、 Fi e l d— IDとして 0、 1及び 2が設定されている。 つまり、 Fi e ld— ID = 0のときに、 その フィールドに関連するアンシラリーデ一夕 「0」 がストリーム中に記述され、 F
i e 1 d— I D= 1のときに、 そのフィールドに関連するアンシラリーデ一夕 「 1」 がストリーム中に記述され、 F i e 1 d— I D = 2のときに、 そのフィ一ル ドに関連するアンシラリーデ一夕 「2」 がストリーム中に記述される。 つまり、 フレーム F 1に関するピクチャにおいて、 図 26に示すように、 Anc i l l a r y_d a t a () 243に関するデ一夕エレメントは、 フレーム F 1内のフィ —ルド数だけ繰り返されることを意味している。
F i e ld― IDは、 progre s s ive― s equenc e― f la の値が" 1"のとき、 つまり入力ビデオデ一夕が 1であるとき、 符号化フレーム ごとに付加される。 F ie ld— IDには、 r e p e a t— f i r s t— f i e 1 dと T o p_f i e 1 d_f i r s tにともに" 0"が設定されているとき、 その符号化フレームは 1枚の p ro gres s ive f r am eが存在するの で、 値" 0"が設定され、 r e p e a t_f i r s t_f i e 1 dに値" 1"お よびで o p_f i e 1 d_f i r s tに値" 0"が設定されているとき、 その符 号化フレームは 2枚の p rogre s s ive f r ameが存在するので、 値,, 0,,,,, 1"が設定され、 repeat— f i r st— f i e ldと Top— f i e 1 d_f i r s tにともに" 1"が設定されているとき、 その符号化フレ —ムは 3枚の p rogre s s ive f r ameが存在するので、 値" 0"乃 至" 2"が設定される。
L i n e_numb e rは、 14ビッ トのデ一夕であり、 各フレームにおける アンシラリーデ一夕が記述されている、 ITU— R BT. 656-3, SMP TE274M, SMPTE 293M5 S MP T E 296 Mで規定されたライン番 号を示す。
An c i 11 a r y— d a t a— 1 e ng t hは、 16ビヅトのデ一夕であり 、 anc i l lary― dat a― p a y 1 o a dのテ一夕; ¾を示 A n c ι l iar y_d a t a— p ay 1 o a dは、 22ビヅ トのデ一夕からなる補助デ 一夕の内容を表しており、 Anc i l lar y_d a t a— p ayl oadの A nc i l lary d a t a_l e n g t hの値が jの値 (初期値 0) より大き
いとき、 値 j (Anc i l l ar y_d a t a— 1 e n g t hのデ一夕長) を 1 だけィンクリメントして、 その jの値のビッ ト列目から記述される。
次の Wh i 1 e 構文は、 byt eal igned () のためのシン夕ヅクス を表しており、 次のデ一夕が b yt eal igned () でないとき (Wh i 1 e構文が真のとき)、 Zero— b i t ( 1ビットのデ一夕" 0 ") を記述する。 図 14に戻って、 次の E 1 s e i f文において、 nex t b i t s () は、 Hi s t o ry d a t aを示すビット列を検出すると、 そのビット列の次ビッ トから Hi st or y_d a t a () で示される H i s t o r y dat aのデ —夕エレメントが記述されていることを知る。 H i s t ory— dat a () の D a t a— I Dは、 図 15に示すように、" 08" を表すビッ ト列であり、 D a t a— IDが" 08"で示されるデータは、 符号化パラメ一夕の履歴情報を含む Hi s t orydat aを表している。 この Hi s t or y_d a t a () につ いては、 US特許出願 09/265723 に詳しく説明されているので、 ここ では省略する。
最後の i f文において、 nextb i t s () は、 us er dat aを示す ビッ ト列を検出すると、 そのビッ ト列の次ビットから u s e r— d a t a () で 示される u s e r_d a t aのデ一夕エレメン卜が記述されていることを知る。 図 14の nextb i t s () が、 それぞれのデ一夕エレメントが記述されて いることを知るビッ ト列は、 図 15に示す Dat a— IDとして記述されている 。 ただし、 Dat a— IDとして" 00"を使用することは禁止されている。 D at a— IDが" 80"で示されるデ一夕は、 制御フラグを表しており、 Dat a— I Dが" F F"で示されるデ一夕は、 us e r dat aを表している。 図 22は、 g r o u p一 o f一 p i c t u r e一] 1 e a d e r () のシンタヅ クスを説明するための図である。 この group— o f _p i c t u r e_h e a d e r () によって定義されたデ一夕エレメントは、 group— s t art ― code、 t ime― c oae、 c l os ed― gop、 および broken — 1 i nkから構成される。
gr oup— s t ar t— c o d eは、 G 0 Pレイヤの開始同期コ一ドを示す デ一夕である。 t ime— c o d eは、 G 0 Pの先頭ピクチャのシーケンスの先 頭からの時間を示すタイムコードである。 c l o s e d— gopは、 GOP内の 画像が他の GOP から独立再生可能なことを示すフラグデ一夕である。 b r o k e n— 1 i nkは、 編集などのために G 0 P内の先頭の Bピクチャが正確に再 生できないことを示すフラグデ一夕である。 ex t ens i o n_a nd_u s 6 r― d at a 1) は、 ext ens i on― and― us e r― dat a 、 0 ) と同じように、 us e r— d a t a () によって定義されるデ一夕エレメン トのみを記述するための関数である。
次に、 図 23乃至図 25を参照して、 符号化ストリームのピクチャレイヤに関 するデ一夕エレメントを記述するための p i c t u r e— h e a d r ()、 P i c t u r e― c o d i ng― ext ens i on ()、 および p i c t ur e一 da t a () について説明する。
図 23は p i c t u r e— h e a d r () のシンタックスを説明するための図 である。 この p i c t u r e— h e a d r () によって定義されたデ一夕エレメ ントは、 p i c t ur e一 s t ar t― c o d e、 t emp o r a l― r e f e r e n c e s i c t ur e― c o d in ― t yp e、 v b v― d e l ay、 f u l 1― e l― f o r w a r d― v e c t o r、 f o rwa rd― f― c o d e、 f u l l― p e l― ba ckward― ve c t o r、 b a c kwar d ― f― c o d e、 e t r a― b i t― p i c t ur e、 および ext r a― i n f o rmat i o n― p i c t u r eである。
具体的には、 p i c t u r e— s t a r t— c o d eは、 ピクチャレイヤの閧 始同期コ一ドを表すデータである。 t e mp o r a 1— r e f e r enc eは、 ピクチャの表示順を示す番号で、 GOPの先頭でリセットされるデ一夕である。 p i c t u r e_c o d i n g_t y p eは、 ピクチャ夕ィプを示すデ一夕であ る。
vb V d e l ayは、 V B Vバヅファの初期状態を示すデ一夕であって、 各
ビクチャ毎に設定されている。 送信側システムから受信側システムに伝送された 符号化エレメン夕リストリームのビクチャは、 受信側システムに設けられた VB Vバッファにバッファリングされ、 DTS (De cod ing Time St amp) によって指定された時刻に、 この VBV バッファから引き出され (読み出され)、 デコーダに供給される。 vb v—d e 1 ayによって定義され る時間は、 復号化対象のピクチャが V B Vバッファにバッファリングされ始めて から、 符号化対象のビクチャが VBVバッファから引き出されるまでの時間、 つ まり D T Sによって指定された時刻までの時間を意味する。 このピクチャヘッダ に格納された vb v— d e 1 ayを使用することによって、 VB Vバッファのデ 一夕占有量が不連続にならないシームレスなスプライシングが実現できる。 f u 11— p e l_f o r wa r d_v e c t o rは、 順方向動きべクトルの 精度が整数単位か半画素単位かを示すデータである。 f o rwa r d— f— c o deは、 順方向動きベクトル探索範囲を表すデ一夕である。 f ul l— pe l— b a c kwa r d_v e c t o rは、 逆方向動きぺクトルの精度が整数単位か半 画素単位かを示すデ一夕である。 b a c kwa r d— f _c o d eは、 逆方向動 きべクトル探索範囲を表すデ一夕である。 e X t r a— b i t_ i c t u r e は、 後続する追加情報の存在を示すフラグである。 この ex t r a— b i t— p i c tureが 「1」 の場合には、 次に e x t r a— i n f o r ma t i o n— i ctureが存在し、 e x t r a— b i t— p i c tureが 「0」 の場合 には、 これに続くデ一夕が無いことを示している。 ex t r a— i nf 0 rma t i on— p i c t ur eは、 規格において予約された情報である。
図 24は、 p i c ture一 c od i n g_e xt ens i on () のシン夕 ヅクスを説明するための図である。 この p i ct ure— cod ing— ext ens i on () によって定義されたデ一夕エレメントは、 ex t ens i o n ― s t art― code、 ext ens i o n― s t art― c ode― i d e n t i f i e r, f _c ode [0] [0]、 f _c ode [0] [1]ヽ f _c o de [1J [0]N f code [l] [l]N int ra d c pre c i s i
on、 p i cture― s t ruc ture、 t op― f i e l d一 f i rs t 、 f rame― pred i ct ive― f rame― dct、 c oncealm e n t― mot i on― ve ct o rs、 q― s cal e一 t ype、 i n t r a― vi e― f o r m a t s al t e rnat e― s c a n repeat― f i r s t― f i e ld、 chroma― 420― type、 progre s s i v e― f r a m e s c ompo s i t e― d i sp lay― f 1 a g、 v― ax i s、 f i e ld― s equenc e、 sub― carr i ers burst― amp l i tude、 および sub― c a r r i e r― h a s eから構成され る o
ext ens i on —s t art —c odeは、 ピクチャレイヤのェクステ ンシヨンデ一夕のスタートを示す開始コードである。 ext ens i on — s t art — c o d e— i d e n t i f i e rは、 どの拡張デ一夕が送られるか を示すコードである。 f _c o d e [0] [0] は、 フォア一ド方向の水平動 きべクトル探索範囲を表すデ一夕である。 f —code [0] [1] は、 フォ ァ一ド方向の垂直動きベクトル探索範囲を表すデ一夕である。 f —code [1] [0] は、 バックワード方向の水平動きベク トル探索範囲を表すデ一夕で ある。 f — c 0 d e [ 1 ] [ 1 ] は、 ノ ックヮ一ド方向の垂直動きべクトル探 索範囲を表すデ一夕である。 int ra _d c_p re c i s i on は、 D C係数の精度を表すデ一夕である。 p i c t u r e —s t ruc ture は 、 フレームストラクチャかフィールドストラクチャかを示すデ一夕である。 これ は、 フィールドストラクチャの場合は、 上位フィールドか下位フィールドかもあ わせて示す。 t op —f i e l d —f i rs t は、 フレームストラク チヤの場合、 最初のフィールドがトップフィールドであるのか、 ボトムフィール ドであるのかを示すフラグである。 f rame „p red i c t iv e_f r ame — d c t は、 フレーム ·ストラクチャの場合、 フレーム 'モード DC T の予測がフレーム ·モードだけであることを示すデ一夕である。 conc e a lment mo t i on ve c t ors は、 イントラマ.クロブロックに
伝送エラーを隠蔽するための動きべクトルがついていることを示すデ一夕である
。 q —s cal e —t ypeは、 線形量子化スケールを利用するか、 非線形 量子化スケールを利用するかを示すデ一夕である。 int ra —vi e — f or matは、 イントラマクロブロックに、 別の 2次元 VLC (可変長符号) を使うかどうかを示すデータである。 alt ernat e —s canは、 ジグ ザグスキャンを使うか、 オル夕ネート ·スキャンを使うかの選択を表すデ一夕で ある。 repeat— f i r s t —f i e ld は、 復号化時にリピート フィールドを生成するか否かを示すブラグであって、 復号化時の処理において、 repeat— f i rst —f i e ld が 「 1」 の場合にはリピートフィ一 ルドを生成し、 repeat— f i r s t —f i e ld が 「0」 の場合には リビートフィールドを生成しないという処理が行われる。
c h r oma— 420 — t yp eは、 信号フォーマツトが 4 : 2 : 0の場合 、 次の p r 0 g r e s s i V e —f r ameと同じ値、 そうでない場合は 0を 表すデータである。 progre s s ive —f rame は、 そのピクチャ が、 順次走査できているかどうかを示すデ一夕である。 compo s i t e ― d i sp l ay —f lagは、 ソース信号がコンポジット信号であったかどう かを示すデータである。 V —ax i sは、 ソース信号が、 PAL の場合に使 われるデ一夕である。 : f i e ld —s equenc eは、 ソース信号が、 PA L の場合に使われるデ一夕である。 sub —carr i er は、 ソース信 号が、 PAL の場合に使われるデ一夕である。 burst — ampl i tu d e は、 ソース信号が、 PAL の場合に使われるデ一夕である。 sub _ carr i er —phas e は、 ソース信号が、 PAL の場合に使われる データである。
図 25は、 p i cture — dat a () のシン夕ヅクスを説明するための 図である。 この p i cture 一 dat a () によって定義されるデ一夕エレ メントは、 s l i ce () によって定義されるデ一夕エレメントである。 但し 、 ビットストリーム中に、 s l i c e () のス夕一トコードを示す s 1 i c e
— s t ar t — c o d eが存在しない場合には、 この s i i c e () によつ て定義されるデ一夕エレメントはビッ トストリーム中に記述されていない。 s l i c e () は、 スライスレイヤに関するデ一夕エレメントを記述するた めの関数であって、 具体的には、 s 1 i c e —s t ar t — c o de、 s l i c e ― quant i s e r ― s c a l e ― c od e、 i nt r a ― s l i c e ― f l a int r a ― s l i c e 、 r e s e rve d― b i t s、 e t r a ― b i t ― s i i c e 、 ex t r a ― i n f o r m a t i o n ― s l i c e 、 および ex t r a ― b i t ― s l i c e 等の デ一夕エレメントと、 ma c r ob l o ck () によって定義されるデ一夕エレ メントを記述するための関数である。
s l i c e ― s t ar t ― c o d eは、 s l i c e () によって定義さ れるデ一夕エレメントのスタートを示すスタートコードである。 s l i c e _ quant i s e r _s c a l e_c o d eは、 このスライスレイヤに存在す るマクロブロックに対して設定された量子化ステツプサイズを示すデータである 。 しかし、 各マク口ブロック毎に、 quant i s e r ― s c a l e ― c o d eが設定されている場合には、 各マクロプロックに対して設定された ma c r o D l o ck― quant i s e r ― s c a l e ― c o d eのデ一夕が優先 して使用される。 i nt ra —s l i c e —f l agは、 ビヅトストリ一ム 中に int r a ― s l i c e および r e s e rve d― b i t sが 在する か否かを示すフラグである。 i n t r a —s l i c e は、 スライスレイヤ中 にノンィントラマクロブロックが存在するか否かを示すデ一夕である。 スライス レイヤにおけるマクロブロックのいずれかがノンィントラマクロブロックである 場合には、 int r a —s l i c e は 「 0」 となり、 スライスレイヤにおけ るマクロブロックの全てがノンイントラマクロブロックである場合には、 i nt r a — s l i c e は 「1」 となる。 : r e s e rve d― b i t sは、 7ビッ トのデ一夕であって 「0」 の値を取る。 e X t r a —b i t —s l i c e は、 符号化ストリームとして追加の情報が存在することを示すフラグであって、
次に e x t r a 一 inf o rma t i on 一 s l i c e が存在する場合に は 「1」 に設定される。 追加の情報が存在しない場合には 「0」 に設定される。 ma c r ob l o c k () は、 マクロブロックレイヤに関するデ一夕エレメン トを記述するための関数であって、 具体的には、 ma c r o b 1 o c k— e s c ap e、 ma c r o b l o ck― add r e s s 一 inc r ement 、 お よび ma c r o b l o ck― quant i s e r 一 s c a l e ― c o d e等 のデ一夕エレメントと、 mac r o b l o ck一 mo d e s () 、 および m a c r ob l o ck _v e c t e r s ( s ) によって定義されたデ一夕エレメ ントを記述するための関数である。
ma c r ob l o c k_e s c a p eは、 参照マクロプロックと前のマクロブ ロックとの水平方向の差が 34以上であるか否かを示す固定ビッ ト列である。 参 照マクロブロックと前のマクロブロックとの水平方向の差が 34以上の場合には 、 ma c r o b l o c k― aad r e s s 一 i nc r ement の値に 33 プラスする。 ma c r ob l o c 一 a d d r e s s ― i nc r ement は、 参照マクロブロックと前のマクロプロックとの水平方向の差を示すデ一夕で ある。 もし、 この ma c r ob l o ck一 add r e s s 一 i nc r emen t の前に ma c r o b 1 o c k— e s c a p eが 1つ存在するのであれば、 こ の ma c r ob l o ck― addr e s s ― i nc r ement の値に 33 をプラスした値が、 実際の参照マクロプロヅクと前のマクロプロックとの水平方 向の差分を示すデ一夕となる。 ma c r ob l o c k― quant i s e r ― s c a l e —c o d eは、 各マクロブロック毎に設定された量子化ステップサ ィズである。 各スライスレイヤには、 スライスレイヤの量子化ステップサイズを 示す s i i c e ― quant i s e r ― s c a l e ― c o d eが設定され ているが、 参照マクロプロヅクに対して ma c r o b 1 o c k_q u a n t i s e r —s c a l e — c o d eが設定されている場合には、 この量子化ステツ プサイズを選択する。
次に、 図 27を参照して、 マルチプレクサ 162 Aについて説明する。
マルチプレクサ 162 Aは、 複数のパケヅタイザ 301— 309と、 複数のト ランスポートストリ一ム生成回路 (TS Gen. ) 311— 319と、 複数 のシステム夕一ゲッ トデコーダバッファ (STD Buf f er) 321-32 9と、 多重化回路 330と、 多重化コントローラ 300とを備えている。
パケッタイザ 301—309は、 MPE Gエンコーダからそれぞれ出力された エレメンタリーストリームを受け取り、 エレメンタリーストリームをパケット化 することによってパケヅタイズドエレメンタリーストリーム (PES) を生成す る o
図 28は、 エレメンタリーストリーム (ES)、 パケヅタイズドエレメンタリ —ストリーム (PES)、 そして、 トランスポート トリ一ムパケッ トの関連を説 明するための図である。
ソースビデオデ一夕を符号化すると、 例えば図 28Bに示すような、 各ァクセ スュニヅテ AU 1、 AU2、 から構成されるエレメンタリーストリームが 形成される。 図 28Cは、 バケツタイザ一のパケッ ト化処理に関して説明してい る図であって、 パケヅタイザ一は、 複数のアクセスユニットをパッキングし、 そ のバケツ 卜の先頭部分に PE Sヘッダを付加する。
図 29は、 この PE Sヘッダを説明するための図面である。 図 29に示すよう に、 PESヘッダは、 パケット開始コード、 ストリーム ID、 パケッ ト長、 記号 「10」、 フラグ制御コード、 PESヘッダ長、 コンデイショナルコーディング から構成される。 MPEG規格では、 このコンデイショナルコーディングに、 プ レゼンテ一シヨンタイムスタンプ (P T S) 及びデコ一ディングタイムスタンプ (D T S) の情報を入れないといけないと決められている。
トランスポ一トストリ一ム生成回路 (T S Gen. ) 31 1— 319は、 パケッタイザ 301— 309から出力されたパッケタイズドエレメン夕リースト リームから、 図 28 Dに示すように、 188バイ 卜のトランスポートストリーム パケットからなるトランスポートストリームをそれぞれ生成する。
システムターゲットデコーダバッファ (S TD Buf f er) 321-32
9は、 トランスポートストリーム生成回路 311-319から出力されたトラン スポ一トストリ一ムを受け取り、 ノ ソファリングする。 この STDバッファは、 MP E Gデコーダ側の受信バッファがオーバーフロー及びアンダーフローしない ようにシユミレ一シヨンを目的として設けられたバッファであって、 MP EG規 格によって決まっている固定容量のバッファである。
多重化回路 330は、 システム夕一ゲッ トデコーダバッファ 321—329か ら、 トランスポートストリームをそれぞれ受け取り、 コントローラ 300によつ て設定されたスケージュ一リングに従って多重化処理を実行する。
次に、 各バケツタイザ一の詳細な構成及び処理につい.て、 図 27及び図 30を 参照して説明する。
各パケッタイザは、 受け取ったエレメン夕リストリームをバッファリングする ためのバッファ 341と、 その受け取ったエレメン夕リストリームのシン夕ヅク スをパージング (解析) するためのパージング回路 342と、 バッファから出力 されたエレメン夕リーストリームをバケツト化するバケツト化回路 343を備え ている。
パージング回路 342は、 エレメンタリーストリームから、 そのエレメンタリ —ストリーム中に記述された P T S —count er 及び D T S — cou n t e r を抽出し、 その PTS —count er 及び D T S — coun t e r をパケヅ ト化回路 343に供給する。 具体的には、 パージング回路 34 2は、 受け取ったエレメンタリーストリームを可変長符号化し、 ストリーム中に 含まれているス夕一トコ一ドなどの特殊なデ一夕エレメントを検索する。 このパ —ジング処理は、 PTS —count er 及び D T S —c ount er を抽出することが目的であるので、 シーケンスレイヤは GO Pレイヤのス夕一ト コードは無視し、 まず、 ビクチャレイヤのス夕一トコ一ドを検索する。 次に、 3 2ビッ トの u s e r_d a t a— s t a r t —code をストリーム中から 見つけることによってピクチャレイャのユーザデ一タエリアを見つけることがで きる。 次に、 このユーザデ一夕エリアにおいて、 Pi cture orde r
() に関するデ一夕エレメントを見つけるために、 "05" D a t a— I D を探す。 この P i c t u r e — o rder () 関数の 10ビット目から 16 ビット目及び 17ビット目から 23ビッ ト目には、 PTS —c ount er と DTS— c ount er が夫々記述されているので、 パージング回路 34 2、 この PTS —count er と DTS— c ount e r とを抜き出 して、 パケッ ト化回路 343に供給する。
パケット化回路 3'43は、 パージング回路 342から P T S — count e r 及び DTS —count er を受け取り、 この PTS — count e r 及び DTS —count er に関する情報に基づいて P T Sと D T Sを 新たに生成する。 本実施例では、 ?丁3の値として?丁3 —c ount er の値そのものを使用し、 D T Sの値として、 D T S —count er の値そ のものを使用するようにしている。
図 30は、 本実施例のパケタイザを使用した場合において発生する最小遅延に ついて説明するための図である。 図 3 OAは、 入力ビデオデ一夕を表し、 図 30 Bは、 その入力ビデオデータを符号化した際のエレメン夕リーストリームを表し ており、 図 30Cは、 本実施例の MPEGエンコーダによって生成した符号化ス トリームを使用し、 本実施例のパケッタイザ一を使用した際の、 バケツタイズド エレメンタリーストリームを表している。
この図 30 Aと図 30 Bについては、 図 2 A及び図 2 Bと同じである。 しかし ながら、 図 2 Cと図 30 Cを比較すると理解できるように、 従来は、 PTSを決 定するバケツタイズドエレメンタリーストリームを生成する、 つまり、 PTSを 決定するためには、 Iピクチャを Pピクチヤの間に存在する Bピクチヤの数を N とすると (N+2) フレーム分の遅延が発生していたという問題については説明 済みである。
本実施例のェンコ一ディング方法及びバケツト化方法によれば、 符号化ストリ —ムから P T Sを決定する遅延を 1フレーム時間に押さえることができる。 さら に、 Iピクチャを Pピクチヤの間に存在する Bピクチヤの数に限らず、 Iピクチ
ャを Pピクチヤの間に何枚もの Bピクチャが存在していたとしても、 1フレーム の最小遅延となる。 また、 図 27のような 9チャンネル用のパケッタイザを設計 しょうとしたときに、 9個のフレームメモリで実現できるという、 極めて大きな な効果がある。
次に、 図 31を参照して、 MPEGデコーダ 144A— 144Dについて説明 する。 各 MP EGデコーダは、 受信バッファ 401と、 可変長復号化回路 402 と、 逆量子化回路 403と、 逆 DCT回路 404と、 コントローラ 405と、 演 算回路 41 1と、 動き補償回路 412と、 メモリ 413及び 414と、 送信バッ ファ 415と、 バースバンドビデオ生成回路 416と、 多重化回路 417とを備 えている。
可変長復号回路 402は、 受信バッファからエレメン夕リーストリームを受け 取り、 そのエレメンタリーストリームに対して可変長復号化処理を行うことによ つて所定のデ一夕長を有したデ一夕エレメントからなるストリームを生成する。 さらに、 可変長復号回路 402は、 可変長復号化されたデータストリームのシン タックスをパージング (解析) することによって、 ストリーム中から全てのコ一 デイングパラメ一夕を抽出し、 コントローラ 405に供給する。 ストリーム中に 重畳することが MP EG規格によって義務付けられているコ一ディングパラメ一 夕の例としては、 ビクチャタイプ、 動きベクトル、 予測モード、 DCTモード、 量子化スケールコード、 量子化テーブル情報等であって、 基本的には、 この符号 化ストリームを生成する符号化処理において発生したパラメ一夕である。
本実施例のユニークな点は、 可変長符号化回路 402は、 上述した MP EG格 によって定められているコ一ディングパラメ一夕だけではなく、 エレメン夕リ一 ストリームのュ一ザ一デ一夕エリアに MPEG —ES— Ed i t ing _ inf o rma t i on () として記述されている情報を抽出することが、 本 実施例の特徴である。 具体的には、 符号化ストリーム中のシーケンスレイヤのュ —ザデ一夕エリアには、 V— phas e () H-phas e () に関する情 報が MPEG .ES— Ed i t ing inf o rma t i o n () と
して記述されており、 符号化ストリーム中のビクチャレイヤのユーザデータエリ ァには、 Time— c ode ()、 Pi cture— orde r () 、 A nc i l lary一 dat a ()、 Hi s t ory― dat a () に! る 情報が MPEG —ES— Ed i t ing _i nf o rma t i o n () として記述されており、 可変長符号化回路 402は、 ストリーム中から、 これら の V— phas e () H— phas e () 、 T ime— code ()、 P i cture― o rder () 、 . Anc i l lar ― a a t a () 及び Hi s t ory— dat a () に関連する情報を抽出し、 コントローラ 405に 供給する。
逆量子化回路 403は、 可変長復号化回路 402より供給された可変長復号化 された DCT係数デ一夕を、 同じく可変長復号化回路 402から供給された量子 化スケールに基づいて逆量子化し、 逆 DC T回路 404に出力する。
逆 DCT回路 404は、 逆量子化回路 403から供給された量子化 DCT係数 に対して、 逆離散コサイン変換処理を施し、 逆 D CTされた画像データとして、 演算器 411に供給される。
逆 DC T回路 404より演算器 41 1に供給された画像データが、 Iピクチャ のデータである場合、 そのデ一夕は演算器 411より出力され、 演算器 411の 後に入力される画像デ一夕 (Pビクチャ又は Bビクチャのデ一夕) の予測画像デ —夕生成のために、 フレームメモリの前方予測画像部 414に供給されて記憶さ れる。
逆 D CT回路 404より供給された画像デ一夕が、 その 1フレーム前の画像デ —夕を予測画像データとする Pビクチャのデータであり、 前方予測モ一ドのデ一 夕である場合、 フレームメモリの前方予測画像部 414に記憶されている、 1フ レーム前の画像デ一夕 (Iビクチャのデ一夕) が読み出され、 動き補償回路 41 2で可変長復号化回路 402より出力された動きべクトルに対応する動き補償が 施される。 そして、 演算器 411において、 逆 DCT回路 404より供給された 画像デ一夕 (差分のデータ) と加算され、 出力される。 この加算されたデ一夕、
すなわち、 復号された Pピクチャのデ一夕は、 演算器 4 1 1に後に入力される画 像データ (Bピクチャ又は Pビクチャのデ一夕) の予測画像データ生成のために 、 フレームメモリの後方予測画像部 4 1 3に供給されて記憶される。
Pビクチャのデータであっても、 画像内予測モードのデータは、 Iピクチャの データと同様に、 演算器 4 1 1において処理は行われず、 そのまま後方予測画像 部 4 1 3に記憶される。
この Pピクチャは、 次の Bピクチャの次に表示されるべき画像であるため、 こ の時点では、 まだフォ一マツト変換回路 3 2へ出力されない (上述したように、 Bビクチャの後に入力された Pピクチヤが、 Bピクチャより先に処理され、 伝送 されている)。
逆 D C T回路 4 0 4より供給された画像デ一夕が、 Bピクチャのデ一夕である 場合、 可変長復号化回路 4 0 2より供給された予測モードに対応して、 フレーム メモリの前方予測画像部 4 1 4に記憶されている Iピクチャの画像デ一夕 (前方 予測モードの場合)、 後方予測画像部 4 1 3に記憶されている Pピクチャの画像 デ一夕 (後方予測モ一ドの場合)、 又は、 その両方の画像データ (両方向予測モ —ドの場合) が読み出され、 動き補償回路 4 1 2において、 可変長復号化回路 4 0 2より出力された動きべクトルに対応する動き補償が施されて、 予測画像が生 成される。 但し、 動き補償を必要としない場合 (画像内予測モードの場合)、 予 測画像は生成されない。
このようにして、 動き補償回路 4 1 2で動き補償が施されたデータは、 演算器 4 1 1において、 逆 D C T回路 4 0 4の出力と加算される。 この加算出力は、 バ ッファ 4 1 5を介してベースバンドビデオ生成回路 4 1 6に供給される。 この送 信バッファ 4 1 5から出力されるビデオデ一夕は、 アクティブビデオエリアのみ のビデオデータであってブランキング期間などの補助的データは付与されていな い o
コントローラ 4 0 5は、 可変長復号化回路 4 0 2から供給されたビクチャタイ プ、 動きベクトル、 予測モード、 D C Tモード、 量子化スケールコード、 量子化
W 5
テーブル情報等のコ一ディングパラメ一夕に関する情報にもとづいて、 上述した 各回路のオペレーションをコントロールする。
さらには、 コントローラ 405は、 可変長符号化回路 402から MPEG— E S— Ed i t ing _ i n f o r m a t i o n () として供給された V— phas e 及び H— phas e に関する情報に基づいて、 ペースバンドビ デォ生成回路 416をコントロールする。 符号化ストリーム中から抽出された V -phas e は、 入力ビデオデ一夕の全画素エリアにおけるアクティブビデオ エリアの垂直方向の位置を示しており、 また、 その H— phas e は、 入力ビ デォデ一夕の全画素エリアにおけるアクティブビデオエリアの水平方向の位置を 示している。 よって、 コントローラ 405は、 バッファ 415から出力された復 号化ビデオデ一夕を、 ブランキングイメージを有した全画素エリア上に、 V— p ha s e 及び H— p ha s eによって示される垂直及び水平位置にマヅピン グするようにべ一スバンドビデオ生成回路をコントロールする、 または、 V_p hase 及び H—p ha s eによって示される垂直及び水平位置に基づいて 、 アクティブエリアの復号ビデオデ一夕と、 全画素エリアのブランキングィメー ジを合成するようにベースバンドビデオ生成回路をコントロールする。 その結果 、 ベースバンドビデオ生成回路 416から出力されるビデオデータは、 MPEG エンコーダに供給された入力ビデオデータのブランキング期間と全く同じブラン キング期間を有している。
コントローラは 405は、 符号化ストリームから抽出された Anc i 11 a r ― d a t a、 L ine
— unmber、 F i e 1 d— I D、 T ime — c ode— 1 及び T ime —code— 2 を供給する、 又は F i e 1 d
― IDに基づいて、 Anc i l lary 一 d a t a、 T ime一 code一 1 又は T ime_c o d e— 2 の多重化回路 417の多重化処理をコントロール する。 具体的には、 既に図 7 Cにおいて説明したように、 F i e ld —IDは フィールド毎に付与された Anc i 11 a r y d a t aと関連付けされてい
るので、 多重化回路 417はこの F i e 1 d _I Dによって同定されるフィ一 ルドのブランキング期間に、 F i e ld —IDと関連付けられている An c i 11 a r y — d a t aを重畳する。 例えば、 F i e 1 d —IDが 「2」 の場 合には、 フレームにおいて 3番目のフィールドであることがわかるので、 符号化 ストリーム中において、 Fi e ld — I Dが 「2」 に関連するアンシラリーデ —夕として伝送されてきた An c i 11 a r y —dat aを、 Fi e ld _ IDが 「2」 の 3番目のフィールドのブランキング期間に重畳する。 多重化回路 417は、 さらに、 Anc i l lary —d a t aをブランキング期間に重畳 する際、 Anc i l l ary — d a t aと一緒に伝送されている L i n e— u nmb e rによって指定されるライン位置に、 その Anc i l l ary —da t aを重畳する。
従って、 多重化回路 417から出力されたビデオデータは、 MPEGェンコ一 ダに供給された入力ビデオデ一夕と全く同じブランキング期間、 全く同じ位置の アクティブビデオェリァ、 全く同じライン位置にかつ同じ内容のアンシラリデ一 夕を有している。
よって、 本実施例によれば、 ビデオデータを送信側システムから受信側システ ムに伝送する際に、 MP EGエンコード及びデコード処理を行ったとしても、 そ のコ一ディング処理によって入力ビデオデータがそもそも有している固有情報や 入力ビデオデ一夕に付加されたアンシラリーデ一夕が無くなることはない。 産業上の利用可能性
本発明は放送局等で頻繁にビデオデータをェンコ一ド及びデコードする際に利 用できる。
Claims
1 . 入力ビデオデ一夕を符号化するためのェンコ一ディングシステムにおいて、 上記入力ビデオデ一夕を符号化することによってエレメン夕リーストリームを 生成するとともに、 上記エレメンタリーストーム中に、 上記エレメンタリースト リームのピクチャオーダに関する情報を記述するための符号化手段と、
上記エレメン夕リーストリームを受け取り、 上記エレメン夕リーストリーム中 に記述されている上記ピクチャオーダ一に関する情報から、 上記エレメン夕リー ストリームに関するタイムスタンプ情報を生成する生成手段と
を備えたことを特徴とするェンコ一ディングシステム。
2 . 上記符号化手段は、 上記ピクチャオーダ一に関する情報を、 上記エレメン夕 リーストリームのビクチャレイヤに記述することを特徴とする請求の範囲第 1項 に記載のェンコ一ディングシステム。
3 . 上記ビクチャオーダ一に関する情報は、 上記エレメンタリーストリームのピ クチャレイヤに P i c t u r e— o r d e r ( ) として記述されていることを特 徴とする請求の範囲第 1項に記載のェンコ一ディングシステム。
4 . 上記ピクチャオーダ一に関する情報は、 上記エレメンタリーストリームのビ クチャレイヤに挿入されており、
上記生成手段は、 上記エレメン夕リーストリームのシン夕ックスをパージング することによって、 上記ピクチャオーダ一に関する情報を上記エレメン夕リース トリームから抽出することを特徴とする請求の範囲第 1項に記載のェンコ一ディ ングシステム。
5 . 上記タイムスタンプ情報は、 プレゼンテーションタイムスタンプ及び/又は デコーディングタイムスタンプを含んでいることを特徴とする請求の範囲第 1項 に記載のェンコ一ディングシステム。
6 . 上記生成手段は、 上記エレメンタリーストリームをパケッ ト化することによ つてパケヅタイズドエレメンタリーストリームを生成する手段を有し、 上記パケ ヅタイズドエレメンタリーストリームのへヅダに、 上記タイムスタンプ情報を付 加することを特徴とする請求の範囲第 1項に記載のェンコ一ディングシステム。
7 . 上記生成手段は、 上記エレメンタリーストリームをパケット化することによ つてパケッタイズドエレメン夕リーストリームを生成する手段を有し、 上記タイ ムスタンプ情報を使用して、 上記パケヅタイズドエレメンタリーストリームのへ ッダとして、 上記タイムスタンプ情報を付加することを特徴とする請求の範囲第 1項に記載のェンコ一ディングシステム。
8 . 上記タイムスタンプ情報は、 プレゼンテーションタイムスタンプ及び/又は デコ一ディングタイムスタンプを含んでおり、
上記生成手段は、 上記エレメン夕リーストリームをバケツ ト化することによつ てバケツタイズドエレメン夕リーストリームを生成し、 上記パケッタイズドエレ メン夕リーストリームのヘッダとして、 上記プレゼンテーションタイムスタンプ 及び/又はデコーディングタイムスタンプを付加することを特徴とする請求の範 囲第 1項に記載のェンコ一ディングシステム。
9 . 上記ピクチャオーダーに関する情報は、 上記入力ビデオデータのフィールド をカウン卜することによって生成されることを特徴とする請求の範囲第 1項に記 載のェンコ一ディングシステム。
1 0 . 上記入力ビデオデ一夕は、 2 4ヘルツのフレーム周波数を有するソースビ デォデ一夕を、 3— 2プルダウン処理を行うことによって生成された 3 0ヘルツ のフレーム周波数を有するビデオデータであって、
上記 3 0ヘルツのフレーム周波数を有する入力ビデオデータのフィールドをカ ゥントするためのカウント手段と、
上記カウント手段と上記符号化手段との間に接続され、 上記 3 0ヘルツのフレ ーム周波数を有する入力ビデオデ一夕を、 2 4ヘルツのフレーム周波数を有する ビデオデータに変換するための逆 3— 2プルダウン処理を行うための逆プルダウ ン処理手段と、
をさらに備え、
上記符号化手段は、 上記カウント手段からのカウント情報に基づいて、 上記夕 ィムスタンプ情報を生成することを特徴とする請求の範囲第 1項に記載のェンコ 一ディングシステム。
1 1 . 入力ビデオデ一夕を符号化するためのエンコーディングシステムにおいて 上記入力ビデオデータを符号化することによってエレメン夕リーストリームを 生成するとともに、 上記エレメンタリーストリーム中に、 上記エレメンタリース トリームのピクチャオーダ一に関する情報を記述するための符号化手段と、 上記エレメン夕リーストリーム中に記述されている上記ピクチャオーダーに関 する情報に基づいて、 上記エレメン夕リーストリームをパケヅ ト化するバケツ夕 ィザ一と
を備えたことを特徴とするェンコ一ディングシステム。
1 2 . 入力ビデオデ一夕を符号化するためのエンコーディングシステムにおいて 、 そのエンコーディングシステムは以下からなる。
上記入力ビデオデ一夕を符号化することによってエレメン夕リーストリーム生
成する符号化手段。 上記エレメンタリーストリームは、 プレゼンテーションタイ ムスタンプを生成するために使用される情報が、 そのエレメン夕リーストリーム 中に記述されている。
上記エレメン夕リーストリーム中に記述されている上記プレゼンテーション夕 ィムスタンプを生成するために使用される情報に基づいて、 上記エレメン夕リー ストリームをバケツ ト化するバケツタイザ一。
1 3 . 入力ビデオデ一夕を符号化するためのエンコーディングシステムにおいて 上記入力ビデオデータを符号化することによってエレメン夕リーストリームを 生成するとともに、 上記エレメンタリーストリーム中に、 上記エレメンタリース トリ一ムのピクチャオーダに関する情報を記述するための符号化手段と、 上記エレメン夕リーストリーム中に記述されている上記ピクチャオーダ一に関 する情報に基づいて、 上記エレメン夕リーストリームをバケツ ト化するバケツ夕 ィザ一と
を備えたことを特徴とするェンコ一ディングシステム。
1 4 . 入力ビデオデ一夕を符号化するためのェンコ一ディングシステムにおいて 上記入力ビデオデ一夕を符号化することによってエレメン夕リーストリームを 生成するとともに、 上記エレメンタリーストリームに、 上記エレメンタリースト リームのデコード処理及び/又はプレゼンテーション処理に関するタイムスタン プ情報を多重化するための符号化手段と、
上記エレメン夕リーストリームを受け取り、 上記エレメン夕リーストリーム中 に記述されている上記タイムスタンプ情報に基づいて、 上記エレメン夕リースト リームに関するストリームプロセスを行う処理手段と
を備えたことを特徴とするェンコ一ディングシステム。
1 5 . 復数の入力ビデオデ一夕を符号化するェンコ一ディングシステムにおいて 上記複数の入力ビデオデ一夕を符号化することによつて複数のェレメン夕リー ストリームを生成するとともに、 上記エレメン夕リーストリームのデコ一ド処理 及び/又はプレゼンテーション処理に関するタイムスタンプ情報を、 上記各エレ メン夕リーストリーム中に記述するための符号化手段と、
上記複数のエレメン夕リーストリームを受け取り、 上記各エレメン夕リースト リーム中に付加されている上記タイムスタンプ情報に基づいて、 上記複数のエレ メン夕リーストリームを多重化する多重化手段と
を備えたことを特徴とするェンコ一ディングシステム。
1 6 . 入力ビデオデータを符号化するためのエンコーディングシステムにおいて エレメン夕リーストリームを生成するために上記入力ビデオデ一夕を符号化す るエンコーダと、
上記エレメン夕リーストリームからパケッタイズドエレメンタリーストリーム を生成するためのパケッタイザ一と
を備え、
上記エンコーダは、 上記バケツタイズドエレメン夕リーストリームのヘッダに 記述されるタイムスタンプを生成するための情報を、 上記エレメンタリーストリ —ム中に記述することを特徴とするェンコ一ディングシステム。
1 7 . 入力ビデオデ一夕を符号化するためのエンコーディングシステムにおいて エレメン夕リーストリームを生成するために上記入力ビデオデータを符号化す るエンコーダと、
上記エレメン夕リーストリームからバケツタイズドエレメン夕リーストリーム
を生成するためのパケッタイザ一と
を備え、
上記エンコーダは、 上記バケツタイズドエレメンタリーストリームのヘッダに 記述されるタイムスタンプを生成するために使用される情報を、 上記パケッタイ ザ一に伝送することを特徴とするェンコ一ディングシステム。
1 8 . 入力ビデオデ一夕を符号化するためのエンコーディング方法において、 上記入力ビデオデータを符号化することによってエレメン夕リーストリ一ム生 成するとともに、 上記エレメンタリーストリーム中に、 上記エレメンタリースト リームのビクチャオーダ一に関する情報を記述するステップと、
上記エレメン夕リーストリーム中に記述されている上記ピクチャオーダーに関 する情報に基づいて、 上記エレメン夕リーストリームをバケツト化するステップ と
からなるェンコ一ディング方法。
1 9 . 入力ビデオデ一夕を符号化するためのエンコーディング方法において、 そ のェンコ一ディング方法は以下からなる。
上記入力ビデオデ一夕を符号化することによってエレメン夕リーストリ一ムを 生成するステップ。 上記エレメンタリーストリームは、 プレゼンテーションタイ ムスタンプを生成するために使用される情報が、 そのエレメン夕リーストリーム 中に記述されている。
上記エレメン夕リーストリーム中に記述されている上記プレゼンテーション夕 ィムスタンプを生成するために使用される情報に基づいて、 上記エレメンタリ一 ストリームをバケツ ト化するステップ。
2 0 . 入力ビデオデータを符号化するためのェンコ一ディング方法において、 上記入力ビデオデ一夕を符号化することによってエレメン夕リーストリームを
生成するとともに、 上記エレメンタリーストリームに、 上記エレメンタリースト リームのデコ一ド処理及び/又はプレゼンテーション処理に関するタイムスタン プ情報を多重化するステップと、
上記エレメン夕リーストリームを受け取り、 上記エレメン夕リーストリ一ム中 に記述されている上記タイムスタンプ情報に基づいて、 上記ェレメン夕リースト リームに関するストリームプロセッシングを行うステップと
を備えたことを特徴とするェンコ一ディング方法。
2 1 . 複数の入力ビデオデ一夕を符号化するためのエンコーディング方法におい て、
上記複数の入力ビデオデ一夕を符号化することによって複数のエレメン夕リー ストリームを生成するとともに、 上記エレメン夕リーストリームのデコ一ド処理 及び/又はプレゼンテーション処理に関するタイムスタンプ情報を、 上記各エレ メン夕リーストリーム中に記述するステップと、
上記複数のエレメン夕リ一ストリームを受け取り、 上記各エレメン夕リースト リーム中に付加されている上記タイムスタンプ情報に基づいて、 上記複数のエレ メン夕リーストリームを多重化するステップと
を備えたことを特徴とするェンコ一ディング方法。
2 2 . 入力ビデオデ一夕を符号化するためのェンコ一ディング方法において、 エレメンタリーストリームを生成するために上記入力ビデオデ一夕を符号化す る符号化ステップと、
上記エレメン夕リーストリームからバケツタイズドエレメンタリーストリーム を生成するステップと
を備え、
上記符号化ステップにおいて、 上記バケツタイザ一のヘッダに記述されるタイ ムスタンプを生成するための情報が、 上記エレメン夕リーストリーム中に記述さ
れることを特徴とするェンコ一ディング方法。
2 3 . 入力ビデオデータを符号化するためのェンコ一ディング方法において、 エレメン夕リーストリームを生成するために上記入力ビデオデータを符号化す るステップと、
上記エレメン夕リーストリームとタイムスタンプを生成するために使用される 情報を伝送するステップと、
上記方法に基づいて、 上記エレメン夕リ一ストリームからバケツタイズドエレ メン夕リーストリームを生成するステップ
とからなるェンコ一ディング方法。
2 4 . 複数の入力ビデオデ一夕を符号化するためのェンコ一ディング方法におい て、
上記複数の入力ビデオデータを符号化することによつて複数のエレメン夕リー ストリームを生成するステップと、
上記エレメン夕リーストリームのデコ一ド処理及び/又はプレゼンテーション 処理に関するタイムスタンプ情報を、 上記各エレメン夕リーストリーム中に記述 するステップと、
上記複数のエレメン夕リ一ストリームを受け取り、 上記各エレメン夕リースト リーム中に付加されている上記タイムスタンプ情報に基づいて、 上記複数のエレ メン夕リーストリームを多重化するステップと
からなるェンコ一ディング方法。
2 5 . 複数の入力ビデオデータを符号化することによって生成された複数のエレ メン夕リーストリームを多重化するための多重化装置において、
上記複数のエレメン夕リーストリームから、 上記複数のエレメン夕リーストリ —ムに夫々関連付けられたタイムスタンプに関する情報を抽出する手段と、
上記各エレメン夕リーストリームから抽出した上記タイムスタンプに関する情 報に基づいて、 上記複数のエレメン夕リーストリームを多重化する手段と を備えたことを特徴とする多重化装置。
2 6 . 複数の入力ビデオデータを符号化することによって生成された複数のエレ メン夕リーストリ一ムを多重化するための多重化方法において、
上記複数のエレメン夕リーストリームから、 上記複数のエレメン夕リーストリ —ムに夫々関連付けられたタイムスタンプに関する情報を抽出するステップと、 上記各エレメン夕リーストリームから抽出した上記タイムスタンプに関する情 報に基づいて、 上記複数のエレメン夕リーストリームを多重化するステップと を備えたことを特徴とする多重化方法。
2 7 . ソースビデオデ一夕を符号化する事によって生成された符号化ストリーム をデコ一ドするためのデコ一ディングシステムにおいて、
上記符号化ストリーム中に含まれているデコ一ディングタイムスタンプを抽出 する手段と、
上記デコ一ディングタイムスタンプに基づいて、 上記符号化ストリームをデコ —ドする手段とを備え、
上記デコ一ディングタイムスタンプは、 上記ソースビデオデ一夕のフィ一ルド 数に基づいて生成された情報であることを特徴とするデコ一ディングシステム。
2 8 . ソースビデオデータを符号化することによって生成された符号化ストリ一 ムをデコードするためのデコ一ディング方法において、
上記符号化ストリ一ム中に含まれているデコ一ディングタイムスタンプを抽出 するステップと、
上記デコ一ディングタイムスタンプに基づいて、 上記符号化ストリームをデコ ードするステップとからなり、
上記デコ一ディングタイムスタンプは、 上記ソースビデオデータのフィ一ルド 数に基づいて生成された情報であることを特徴とするデコ一ディング方法。
2 9 . ソースビデオデータを符号化することによって生成された符号化ストリ一 ムを、 デコードすることによって復号化ビデオデータを生成し、 上記復号化ビデ ォデ一夕を表示するための表示システムにおいて、
上記符号化ストリーム中に含まれていたプレゼンテーションタイムスタンプを 抽出する手段と、
上記復号化ビデオデ一夕を生成するために上記符号化ストリームをデコードす る手段と、
上記プレゼンテ一シヨンタイムスタンプに従って、 上記復号化ビデオデータを 表示する手段と
を備え、
上記プレゼンテーションタイムスタンプは、 上記ソースビデオデ一夕のフィー ルド数に基づいて生成された情報であることを特徴とする表示システム。
3 0 . ソースビデオデ一夕を符号化することによって生成された符号化ストリー ムを、 デコードすることによって復号化ビデオデータを生成し、 上記復号化ビデ ォデ一夕を表示するための表示方法において、
上記符号化ストリーム中に含まれていたプレゼンテーションタイムスタンプを 抽出するステップと、
上記復号化ビデオデータを生成するために上記符号化ストリームをデコードす るステップと、
上記プレゼンテーションタイムスタンプに従って、 上記復号化ビデオデ一夕を 表示するステップと
を備え、
上記符号化ストリーム中に含まれていたプレゼンテーションタイムスタンプは、
上記ソースビデオデータのフィ一ルド数に基づいて生成された情報であることを 特徴とする表示方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/647,620 US7551672B1 (en) | 1999-02-05 | 2000-02-04 | Encoding system and method, decoding system and method, multiplexing apparatus and method, and display system and method |
EP00902104A EP1069777A4 (en) | 1999-02-05 | 2000-02-04 | SYSTEMS AND METHODS FOR ENCODING AND DECODING, MULTIPLEXING SYSTEM AND METHOD, AND DISPLAY SYSTEM AND METHOD |
US12/487,356 US8160134B2 (en) | 1999-02-05 | 2009-06-18 | Encoding system and method, decoding system and method, multiplexing apparatus and method, and display system and method |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP11/29375 | 1999-02-05 | ||
JP2937599 | 1999-02-05 |
Related Child Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US09/647,620 A-371-Of-International US7551672B1 (en) | 1999-02-05 | 2000-02-04 | Encoding system and method, decoding system and method, multiplexing apparatus and method, and display system and method |
US12/487,356 Continuation US8160134B2 (en) | 1999-02-05 | 2009-06-18 | Encoding system and method, decoding system and method, multiplexing apparatus and method, and display system and method |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2000046995A1 true WO2000046995A1 (en) | 2000-08-10 |
Family
ID=12274412
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2000/000629 WO2000046995A1 (en) | 1999-02-05 | 2000-02-04 | Encoding system, encoding method, decoding system, decoding method, multiplexing device, multiplexing method, display system and display method |
Country Status (3)
Country | Link |
---|---|
US (2) | US7551672B1 (ja) |
EP (1) | EP1069777A4 (ja) |
WO (1) | WO2000046995A1 (ja) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002125192A (ja) * | 2000-08-10 | 2002-04-26 | Sony Corp | ビデオ信号処理装置、ビデオ信号処理方法、ビデオデータ処理装置、ビデオデータ処理方法、ビデオデータ編集装置およびビデオデータ編集方法。 |
JP2009260981A (ja) * | 2003-02-18 | 2009-11-05 | Nokia Corp | ピクチャ復号化方法 |
JP2011109665A (ja) * | 2009-11-18 | 2011-06-02 | Tektronix Internatl Sales Gmbh | コード化タイミング情報のないビデオ・エレメンタリ・ストリームをマルチプレクスする方法及び装置 |
US8335265B2 (en) | 2004-02-13 | 2012-12-18 | Nokia Corporation | Picture decoding method |
US8670486B2 (en) | 2003-02-18 | 2014-03-11 | Nokia Corporation | Parameter for receiving and buffering pictures |
US9124907B2 (en) | 2004-10-04 | 2015-09-01 | Nokia Technologies Oy | Picture buffering method |
Families Citing this family (34)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100884134B1 (ko) | 2000-08-15 | 2009-02-17 | 마이크로소프트 코포레이션 | 미디어 샘플을 타임코딩하기 위한 방법 |
US20020089602A1 (en) | 2000-10-18 | 2002-07-11 | Sullivan Gary J. | Compressed timing indicators for media samples |
WO2002102077A2 (en) * | 2001-06-08 | 2002-12-19 | Thomson Licensing | Method and apparatus for progressive video material identification |
ATE348484T1 (de) * | 2002-01-22 | 2007-01-15 | Microsoft Corp | Verfahren zur verhinderung von startkode- emulation und stopfdaten |
US7149247B2 (en) | 2002-01-22 | 2006-12-12 | Microsoft Corporation | Methods and systems for encoding and decoding video data to enable random access and splicing |
JP4448334B2 (ja) | 2002-04-19 | 2010-04-07 | マイクロソフト コーポレーション | バイト整列されていない(non−byte−alignedpositions)のポジション、および/またはビット・シフトされたポジション(bit−siftedpositions)を含む位置におけるスタート・コード・エミュレーションを防ぐための方法およびシステム |
US7787539B2 (en) | 2002-07-17 | 2010-08-31 | Broadcom Corporation | Decoding and presentation time stamps for MPEG-4 advanced video coding |
US8213779B2 (en) | 2003-09-07 | 2012-07-03 | Microsoft Corporation | Trick mode elementary stream and receiver system |
US7852919B2 (en) | 2003-09-07 | 2010-12-14 | Microsoft Corporation | Field start code for entry point frames with predicted first field |
US7924921B2 (en) | 2003-09-07 | 2011-04-12 | Microsoft Corporation | Signaling coding and display options in entry point headers |
US7609762B2 (en) | 2003-09-07 | 2009-10-27 | Microsoft Corporation | Signaling for entry point frames with predicted first field |
US7839930B2 (en) | 2003-11-13 | 2010-11-23 | Microsoft Corporation | Signaling valid entry points in a video stream |
US8194707B2 (en) * | 2005-02-28 | 2012-06-05 | Broadcom Corporation | Method and system for dynamically allocating video multiplexing buffer based on queuing theory |
JP2006311508A (ja) * | 2005-03-29 | 2006-11-09 | Toshiba Corp | データ伝送システムとその送信側装置及び受信側装置 |
KR100882949B1 (ko) * | 2006-08-17 | 2009-02-10 | 한국전자통신연구원 | 화소 유사성에 따라 적응적인 이산 코사인 변환 계수스캐닝을 이용한 부호화/복호화 장치 및 그 방법 |
US20090028142A1 (en) * | 2007-07-25 | 2009-01-29 | Schmidt Brian K | Streaming data content in a network |
JP2009200595A (ja) * | 2008-02-19 | 2009-09-03 | Fujitsu Ltd | 署名管理プログラム、署名管理方法及び署名管理装置 |
WO2010046971A1 (ja) * | 2008-10-21 | 2010-04-29 | 富士通株式会社 | データ伝送装置およびデータ受信装置 |
JP4987034B2 (ja) * | 2008-12-26 | 2012-07-25 | 三菱電機株式会社 | 映像表示装置 |
JP5481923B2 (ja) * | 2009-04-28 | 2014-04-23 | 富士通株式会社 | 画像符号化装置、画像符号化方法および画像符号化プログラム |
US8731053B2 (en) | 2009-11-18 | 2014-05-20 | Tektronix, Inc. | Method of multiplexing H.264 elementary streams without timing information coded |
KR20120000485A (ko) * | 2010-06-25 | 2012-01-02 | 삼성전자주식회사 | 예측 모드를 이용한 깊이 영상 부호화 장치 및 방법 |
KR20240042116A (ko) | 2011-06-15 | 2024-04-01 | 파나소닉 인텔렉츄얼 프로퍼티 코포레이션 오브 아메리카 | 복호 방법 및 장치와, 부호화 방법 및 장치 |
CN103609116A (zh) | 2011-06-17 | 2014-02-26 | 松下电器产业株式会社 | 动态图像编码装置以及动态图像编码方法 |
US20130113882A1 (en) * | 2011-11-08 | 2013-05-09 | Sony Corporation | Video coding system and method of operation thereof |
US9554146B2 (en) * | 2012-09-21 | 2017-01-24 | Qualcomm Incorporated | Indication and activation of parameter sets for video coding |
US9479774B2 (en) | 2012-09-24 | 2016-10-25 | Qualcomm Incorporated | Buffering period and recovery point supplemental enhancement information messages |
KR20150055123A (ko) * | 2013-11-08 | 2015-05-21 | 강원대학교산학협력단 | 디지털 tv 방송에서의 영상 전송 장치 |
JP6425173B2 (ja) * | 2015-03-06 | 2018-11-21 | パナソニックIpマネジメント株式会社 | 照明装置及び照明システム |
MX2018002265A (es) | 2015-08-25 | 2018-03-23 | Sony Corp | Aparato de transmision, metodo de transmision, aparato de recepcion, y metodo de recepcion. |
US10271069B2 (en) | 2016-08-31 | 2019-04-23 | Microsoft Technology Licensing, Llc | Selective use of start code emulation prevention |
US10652293B2 (en) | 2017-08-24 | 2020-05-12 | OpenExchange, Inc. | Method to record and replay synchronized media streams, commands, and on-screen events transmitted through different internet pathways |
US10853106B2 (en) * | 2017-11-28 | 2020-12-01 | Bank Of America Corporation | Computer architecture for emulating digital delay nodes in a correlithm object processing system |
US11558444B1 (en) * | 2021-10-28 | 2023-01-17 | OpenExchange, Inc. | Automatic discovery and reporting of streaming content of interest and connection of user to same |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08205146A (ja) * | 1995-01-25 | 1996-08-09 | Hitachi Denshi Ltd | 符号化伝送方式におけるタイムスタンプ値演算方法 |
JPH08214296A (ja) * | 1994-11-30 | 1996-08-20 | Sanyo Electric Co Ltd | デコーダおよびmpegシステムデコーダ |
EP0762772A2 (en) * | 1995-08-23 | 1997-03-12 | Sony Corporation | Encoding and decoding moving pictures |
JPH09307891A (ja) * | 1996-05-14 | 1997-11-28 | Graphics Commun Lab:Kk | タイムスタンプ付加装置および方法、並びにそれを用いた動画像圧縮伸張伝送システムおよび方法 |
EP0881838A1 (en) * | 1997-05-28 | 1998-12-02 | Sarnoff Corporation | Timing correction |
Family Cites Families (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5091783A (en) * | 1990-03-01 | 1992-02-25 | Texas Instruments Incorporated | Still more feature for improved definition television digital processing units, systems, and methods |
EP0492528B1 (en) | 1990-12-27 | 1996-10-09 | Kabushiki Kaisha Toshiba | Recording/reproducing apparatus |
JP3196906B2 (ja) | 1992-08-21 | 2001-08-06 | 富士ゼロックス株式会社 | 画像信号の符号化装置 |
US5461420A (en) * | 1992-09-18 | 1995-10-24 | Sony Corporation | Apparatus for coding and decoding a digital video signal derived from a motion picture film source |
JP2975796B2 (ja) * | 1993-02-10 | 1999-11-10 | 三洋電機株式会社 | 文字表示装置 |
JP3163830B2 (ja) | 1993-03-29 | 2001-05-08 | ソニー株式会社 | 画像信号伝送方法及び装置 |
NL9301358A (nl) | 1993-08-04 | 1995-03-01 | Nederland Ptt | Transcodeerinrichting. |
US5568165A (en) * | 1993-10-22 | 1996-10-22 | Auravision Corporation | Video processing technique using multi-buffer video memory |
US5715009A (en) | 1994-03-29 | 1998-02-03 | Sony Corporation | Picture signal transmitting method and apparatus |
US5940130A (en) | 1994-04-21 | 1999-08-17 | British Telecommunications Public Limited Company | Video transcoder with by-pass transfer of extracted motion compensation data |
US5502493A (en) * | 1994-05-19 | 1996-03-26 | Matsushita Electric Corporation Of America | Variable length data decoder for use with MPEG encoded video data |
JP3629728B2 (ja) * | 1994-08-31 | 2005-03-16 | ソニー株式会社 | 動画像信号符号化方法、動画像信号符号化装置及び動画像信号記録媒体 |
US5646693A (en) * | 1994-11-04 | 1997-07-08 | Cismas; Sorin | Memory utilization for video decoding and display with 3:2 pull-down |
GB9501736D0 (en) | 1995-01-30 | 1995-03-22 | Snell & Wilcox Ltd | Video signal processing |
US5517250A (en) * | 1995-02-28 | 1996-05-14 | General Instrument Corporation Of Delaware | Acquisition of desired data from a packetized data stream and synchronization thereto |
US5612900A (en) * | 1995-05-08 | 1997-03-18 | Kabushiki Kaisha Toshiba | Video encoding method and system which encodes using a rate-quantizer model |
US5778139A (en) * | 1995-05-29 | 1998-07-07 | Samsung Electronics Co., Ltd. | Digital video data recording with outer-error-correction coding of trick-play data and apparatus for use therewith |
JP3556381B2 (ja) | 1996-03-13 | 2004-08-18 | 株式会社東芝 | 情報多重化装置 |
JP3556380B2 (ja) | 1996-03-13 | 2004-08-18 | 株式会社東芝 | 動画像符号タイミング推定方法、動画像復号化装置およびmpegシステム多重化装置 |
DE69711885D1 (de) * | 1996-07-30 | 2002-05-16 | Tiernan Communications Inc | System und verfahren zur kodierung und kompression von digitalen vertikalaustastzeitsignalen |
US6177922B1 (en) * | 1997-04-15 | 2001-01-23 | Genesis Microship, Inc. | Multi-scan video timing generator for format conversion |
JP4703794B2 (ja) | 1997-05-30 | 2011-06-15 | ソニー株式会社 | データ受信方法及び装置 |
JPH1118083A (ja) * | 1997-06-25 | 1999-01-22 | Sony Corp | ディジタル信号符号化方法及び装置、信号記録媒体並びに信号伝送方法 |
KR100247978B1 (ko) * | 1997-08-08 | 2000-03-15 | 윤종용 | 픽쳐 디코딩 동기화 회로 및 그 방법 |
-
2000
- 2000-02-04 US US09/647,620 patent/US7551672B1/en not_active Expired - Fee Related
- 2000-02-04 EP EP00902104A patent/EP1069777A4/en not_active Withdrawn
- 2000-02-04 WO PCT/JP2000/000629 patent/WO2000046995A1/ja active Application Filing
-
2009
- 2009-06-18 US US12/487,356 patent/US8160134B2/en not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08214296A (ja) * | 1994-11-30 | 1996-08-20 | Sanyo Electric Co Ltd | デコーダおよびmpegシステムデコーダ |
JPH08205146A (ja) * | 1995-01-25 | 1996-08-09 | Hitachi Denshi Ltd | 符号化伝送方式におけるタイムスタンプ値演算方法 |
EP0762772A2 (en) * | 1995-08-23 | 1997-03-12 | Sony Corporation | Encoding and decoding moving pictures |
JPH09307891A (ja) * | 1996-05-14 | 1997-11-28 | Graphics Commun Lab:Kk | タイムスタンプ付加装置および方法、並びにそれを用いた動画像圧縮伸張伝送システムおよび方法 |
EP0881838A1 (en) * | 1997-05-28 | 1998-12-02 | Sarnoff Corporation | Timing correction |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002125192A (ja) * | 2000-08-10 | 2002-04-26 | Sony Corp | ビデオ信号処理装置、ビデオ信号処理方法、ビデオデータ処理装置、ビデオデータ処理方法、ビデオデータ編集装置およびビデオデータ編集方法。 |
JP4506053B2 (ja) * | 2000-08-10 | 2010-07-21 | ソニー株式会社 | ビデオ信号処理装置、ビデオ信号処理方法、ビデオデータ処理装置、ビデオデータ処理方法、ビデオデータ編集装置およびビデオデータ編集方法。 |
JP2009260981A (ja) * | 2003-02-18 | 2009-11-05 | Nokia Corp | ピクチャ復号化方法 |
US8532194B2 (en) | 2003-02-18 | 2013-09-10 | Nokia Corporation | Picture decoding method |
US8670486B2 (en) | 2003-02-18 | 2014-03-11 | Nokia Corporation | Parameter for receiving and buffering pictures |
US8335265B2 (en) | 2004-02-13 | 2012-12-18 | Nokia Corporation | Picture decoding method |
US9124907B2 (en) | 2004-10-04 | 2015-09-01 | Nokia Technologies Oy | Picture buffering method |
JP2011109665A (ja) * | 2009-11-18 | 2011-06-02 | Tektronix Internatl Sales Gmbh | コード化タイミング情報のないビデオ・エレメンタリ・ストリームをマルチプレクスする方法及び装置 |
Also Published As
Publication number | Publication date |
---|---|
EP1069777A1 (en) | 2001-01-17 |
US20090252231A1 (en) | 2009-10-08 |
EP1069777A4 (en) | 2009-03-04 |
US8160134B2 (en) | 2012-04-17 |
US7551672B1 (en) | 2009-06-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2000046995A1 (en) | Encoding system, encoding method, decoding system, decoding method, multiplexing device, multiplexing method, display system and display method | |
US6671323B1 (en) | Encoding device, encoding method, decoding device, decoding method, coding system and coding method | |
EP0944249B1 (en) | Encoded stream splicing device and method, and an encoded stream generating device and method | |
US7209636B2 (en) | Encoded stream generating apparatus and method, data transmission system and method, and editing system and method | |
JP3672185B2 (ja) | コーディングシステム及びこれを用いた装置並びに記録媒体 | |
US8351514B2 (en) | Method, protocol, and apparatus for transporting advanced video coding content | |
WO1998043423A1 (fr) | Procede et dispositif generant un flux d'acheminement et dispositif de transmission de programme | |
RU2678149C2 (ru) | Устройство кодирования, способ кодирования, передающее устройство, устройство декодирования, способ декодирования и приёмное устройство | |
WO2000064156A1 (fr) | Procede de transmission de donnees et emetteur de donnees | |
US6834083B1 (en) | Data transmitting method and data transmitter | |
JP4387064B2 (ja) | データ伝送方法およびデータ伝送装置 | |
US9497452B2 (en) | System and method of transmission and reception of video using compressed differential time stamps | |
JP2004328771A (ja) | エンコーディング装置及び方法、デコーディング装置及び方法、並びに記録媒体 | |
JP3584460B2 (ja) | ビットストリーム変換装置および方法、並びに提供媒体 | |
JP2000228768A (ja) | デジタル信号伝送装置および方法、並びに提供媒体 | |
US9219930B1 (en) | Method and system for timing media stream modifications | |
JP2000228769A (ja) | デジタル信号伝送装置および方法、デジタル信号受信装置および方法、並びに提供媒体 | |
JP2006109513A (ja) | 符号化装置および方法、並びに記録媒体 | |
Mitchell et al. | Mpeg-2 overview | |
Sang-Yoon et al. | Fast forward and fast rewind play system based on the MPEG system stream with new concept | |
Stolitzka et al. | New JPEG 2000 Profiles for Broadcast Contribution | |
WO2003063464A2 (en) | System and method of transmission and reception of video using compressed differential time stamps | |
JP2007336574A (ja) | Mpegデータ記録再生装置 | |
JP2008005522A (ja) | Mpegデータ記録再生方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AK | Designated states |
Kind code of ref document: A1 Designated state(s): JP US |
|
AL | Designated countries for regional patents |
Kind code of ref document: A1 Designated state(s): DE FR GB |
|
WWE | Wipo information: entry into national phase |
Ref document number: 09647620 Country of ref document: US |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
WWE | Wipo information: entry into national phase |
Ref document number: 2000902104 Country of ref document: EP |
|
WWP | Wipo information: published in national office |
Ref document number: 2000902104 Country of ref document: EP |