WO2000046989A1 - Dispositifs de codage et de decodage et methodes correspondantes, systeme de codage et procede correspondant - Google Patents

Dispositifs de codage et de decodage et methodes correspondantes, systeme de codage et procede correspondant Download PDF

Info

Publication number
WO2000046989A1
WO2000046989A1 PCT/JP2000/000628 JP0000628W WO0046989A1 WO 2000046989 A1 WO2000046989 A1 WO 2000046989A1 JP 0000628 W JP0000628 W JP 0000628W WO 0046989 A1 WO0046989 A1 WO 0046989A1
Authority
WO
WIPO (PCT)
Prior art keywords
video data
encoding
data
stream
input video
Prior art date
Application number
PCT/JP2000/000628
Other languages
English (en)
French (fr)
Inventor
Katsumi Tahara
Yoshihiro Murakami
Original Assignee
Sony Corporation
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corporation filed Critical Sony Corporation
Priority to BR0004370-2A priority Critical patent/BR0004370A/pt
Priority to US09/647,656 priority patent/US6671323B1/en
Priority to EP00902103A priority patent/EP1069774A4/en
Publication of WO2000046989A1 publication Critical patent/WO2000046989A1/ja

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/08Systems for the simultaneous or sequential transmission of more than one television signal, e.g. additional information signals, the signals occupying wholly or partially the same frequency band, e.g. by time division
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/234309Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by transcoding between formats or standards, e.g. from MPEG-2 to MPEG-4 or from Quicktime to Realvideo
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/02Editing, e.g. varying the order of information signals recorded on, or reproduced from, record carriers
    • G11B27/031Electronic editing of digitised analogue information signals, e.g. audio or video signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/235Processing of additional data, e.g. scrambling of additional data or processing content descriptors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/236Assembling 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/23602Multiplexing isochronously with the video sync, e.g. according to bit-parallel or bit-serial interface formats, as SDI
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
    • H04N21/4342Demultiplexing isochronously with video sync, e.g. according to bit-parallel or bit-serial interface formats, as SDI
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/435Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/24Systems for the transmission of television signals using pulse code modulation

Definitions

  • Encoding device encoding method, decoding device, decoding method, coding system, coding method
  • the present invention relates to an encoding system for encoding input video data and a decoding system for decoding an encoded stream.
  • MPEG Motion Picture Experts Group
  • 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), a P picture ( P redictive
  • the encoding process is performed using one of the picture types B.
  • Picture or B picture (Bidirectionally ⁇ redict ⁇ ⁇ e Picture).
  • An I picture is a picture that has not been predicted from other pictures and has been subjected to intra-coding processing.
  • B) is a picture that has been subjected to inter-frame forward prediction coding from an I picture or P picture of the previous), and a B picture is temporally preceding (past) of an I picture or P picture and temporally later (future). It is a picture that has been bi-directionally coded from a picture in both directions, either an I picture or a P picture.
  • Figure 1 shows an example of a video processing system within and between broadcast stations.
  • a source video data is transmitted from a first video processor 1 provided as a transmitting system to a second video processor 4 provided as a receiving system.
  • a second video processor 4 provided as a receiving system.
  • MPEG encoder and an MPEG decoder between the transmission system and the reception system as shown in FIG.
  • the first video processor 1 receives source video data such as baseband video in the D1 format component format, and performs an editing process, a special effect process, a compositing process, etc. on the source video data. Device. Further, the video processor 1 receives auxiliary data (ancillary data) such as closed captions and teletext data, and performs a process of adding the ancillary data to a blanking period of the source video data. Therefore, during the blanking period of the video data output from the video processor 1, ancillary data is embedded (embedded).
  • source video data such as baseband video in the D1 format component format
  • auxiliary data such as closed captions and teletext data
  • the MPEG encoder 2 receives video data from the video processor 1 and generates an encoded stream by encoding the video data.
  • This coding stream is also called an elementary stream.
  • a television signal has a vertical blanking period and a horizontal blanking period at the top, bottom, left and right of the actual video data area called the active video area.
  • the ancillary data described above is inserted in this blanking section.
  • the MPEG standard stipulates that only the active video errorer in which actual pixels exist in the input video data must be encoded. Have been. That is, the encoded stream is data obtained by encoding only the active area of the input video data, and the encoded stream does not include the ancillary data superimposed during the blanking period. In other words, the encoding process of the input video data by the MPEG encoder 2 causes the ancillary data superimposed on the input video data to be lost.
  • the MPEG decoder 3 receives the encoded stream from the MPEG encoder, decodes the encoded stream, and generates decoded video data.
  • the decoded video data is supplied to the second video processor 4. Since the encoded stream supplied to the MPEG decoder 3 does not include information about ancillary data, the decoded video data naturally does not include information about ancillary data.
  • the video data is received from the first video processor 1 on the transmitting side.
  • the video data corresponding to the active area can be transmitted to the second video processor 4 on the side, the ancillary data added during the blanking period of the video data in the first video processor is transmitted. Otherwise, problems will occur.
  • the unique information relating to the source video data is information possessed by the source video data itself, such as a position of a blanking area or a position of an active video area with respect to all pixel areas. Specifically, the active video line starts from the vertical line of all pixel areas of the source video data, and starts from the horizontal pixel of all pixel area. This is information indicating whether the TIB is starting.
  • FIG. 2 shows a video processor in a broadcasting station and / or a broadcasting station when processing both video data having a frame frequency of 24 Hz and video data having a frame frequency of 30 Hz.
  • An example of a singing system is shown.
  • the 3-2 pull-down processing circuit 5 receives video data at a frame rate of 24 Hz (24 frames per second) and generates video data at a frame rate of 30 Hz (30 frames per second). Circuit for Phil beam material used in movies such as theater, a material recorded on the optical full Ilm at a frame rate of 2 4 H z (per 2 4 frames), 2 9. 9 7 H z The frame rate is completely different from that of the NTSC television signal having the above frame rate. Therefore, in order to convert a film material into a television signal, a process of generating 30 frames from 24 frames is performed.
  • FIG. 3A shows source video data at a frame rate of 24 Hz
  • FIG. 3B shows video data converted to a frame rate of 30 Hz by a 2-2 pull-down process.
  • a repeat field t 1 ′ is created by repeating the top field t 1 of the field F 1 and the bottom field of the frame F 3 is formed.
  • the repeat field b 3 ′ is generated by repeating the field b 3.
  • the 3-2 pull-down process converts 24 Hz video data to 30 Hz video data by converting two fields into three fields in a predetermined sequence. It is the process of doing.
  • the first video processor 1 receives the 30 Hz source video data and performs editing, special effect processing, synthesis processing, and the like on the source video data. Device. Furthermore, this video processor The receiver 1 also receives auxiliary data (ancillary data) such as closed captions and teletext data, and also performs processing to add the ancillary data to the blanking period of the source video data. Since the process of adding ancillary data is a process performed on video data having a frame frequency of 30 Hz, ancillary processing is performed on all fields included in video data having a frame frequency of 30 Hz. Rally data is added. That is, instead of adding an ancillary data only to the top fields tl, t2, ... and the bottom fields b1, b2, ..., a repeat field t1 'and a repeat field b3 are added. The ancillary data is also added to '.
  • ancillary data is also added to '.
  • the inverse 3-2 pull-down processing circuit 6 receives the video data of the 30 Hz frame rate obtained by the above-described 3-2 pull-down processing, and generates the video data of the 24 Hz frame rate. Circuit. Specifically, the inverse 3-2 pull-down processing circuit 7 removes the repeat field t 1 ′ and!) 3 ′ inserted by the inverse 3 _2 pull-down process, as shown in FIG. 3C. Circuit for This inverse -3-pull-down processing circuit 7 is processing that must be performed before performing MPEG encoding processing. The reason for this is that the repeat field is a redundant field inserted by the 3-2 pull-down processing, and no image quality degradation occurs even if it is deleted.
  • the MPEG encoder 2 is the same as the MPEG encoder 2 described in FIG. 1, and receives 24 Hz video data from the inverse pull-down processing circuit 6 and encodes the video data to convert the encoded stream. Generate.
  • the MPEG standard stipulates that only the active video area in which a pixel actually exists must be encoded in the input video data. That is, the encoded stream is data obtained by encoding only the active area of the input video data, and the encoded stream does not include the ancillary data superimposed during the blanking period. In other words, the encoding processing of the input video data is performed by the MPEG encoder 2. Therefore, the ancillary data superimposed on the input video data is lost.
  • the MPEG decoder 3 is the same as the MPEG decoder 3 described with reference to FIG. 1, receives an encoded stream from the MPEG encoder, and decodes the encoded stream to generate decoded video data. .
  • a Repeat—first—field and a Top—field—first flag are set as data representing a frame structure. Therefore, the decoded video data is video data having a frame rate of 30 Hz.
  • the present invention relates to an encoding system for encoding input video data and a decoding system for decoding an encoded stream. Specifically, MP EG encoding processing and MP EG decoding processing are repeated.
  • An object of the present invention is to provide a system and a method for transmitting together with an encoding stream so that ancillary data added to video data and information unique to video data are not lost even if returned.
  • the MPEG encoder extracts ancillary data added to the input video data, and inserts the extracted ancillary data into the encoding stream as An—ciliary—data (), thereby forming an encoding stream.
  • This ancillary data is transmitted along with the team.
  • the MPEG decoder extracts ancillary data from the encoded stream, and adds the extracted ancillary data to the baseband video data generated by the MPEG decoding process.
  • an encoding device for encoding input video data
  • ancillary data added during a blanking period of video data is extracted from the input video data, and the input video data is encoded and encoded.
  • An encoding stream is generated, and the encoding means is controlled so that the ancillary data is inserted into the encoding stream.
  • ancillary data included in the encoded stream is extracted from the encoded stream and encoded.
  • the coded stream is decoded to generate decrypted video data, and the ancillary data is multiplexed during the blanking period of the decrypted video data.
  • an ancillary data included in the coded stream is analyzed by analyzing the syntax of the coded stream.
  • a decoding device for coding obtains ancillary data included in a picture area of the encoded stream from the encoded stream, decodes the encoded stream, generates decoded video data, By multiplexing the decoded video data and the ancillary data, the same data as the input video data is generated.
  • Coding comprising encoding means for encoding input video data, and decoding means for receiving an encoded stream encoded by the encoding means, decoding the encoded stream, and generating decoded video data.
  • the encoding means includes: means for encoding the input video data to generate an encoded stream; and means for inserting ancillary data added to the input video data into the encoded stream.
  • the decoding means includes means for decoding the coded stream to generate decoded video data, and multiplexes the ancillary data transmitted together with the coded stream into the decoded video data. Means. BRIEF DESCRIPTION OF THE FIGURES
  • FIG. 1 is a block diagram showing a configuration of a system having a conventional MPEG encoder and MPEG decoder.
  • FIG. 2 is a block diagram showing a configuration of an encoding system having a 2-2 pull-down processing circuit.
  • FIG. 3 is a schematic diagram used for explaining the 2-2 pull-down process.
  • FIG. 4 is a block diagram showing a configuration of an encode decoding 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 illustrating an all-pixels error and an active video error of video data.
  • FIG. 9 is a schematic diagram showing the structure of each frame.
  • FIG. 10 is a schematic diagram showing the syntax of videosequence.
  • FIG. 11 is a schematic diagram showing the syntax of sequenecheheader.
  • FIG. 12 is a schematic diagram illustrating the syntax of sequ en c e e x t e t i o n.
  • FIG. 13 is a schematic diagram showing the syntax of exte nsio n d u ds e r d a ta.
  • FIG. 14 is a schematic diagram illustrating the syntax of userdata.
  • FIG. 15 is a schematic diagram illustrating the syntax of dataID.
  • FIG. 16 is a schematic diagram illustrating the syntax of 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 timecode.
  • FIG. 20 is a schematic diagram illustrating the syntax of picturorder.
  • FIG. 21 is a schematic diagram illustrating the syntax of anc i l l a r y d a ta
  • FIG. 22 is a schematic diagram illustrating the syntax of g ro u p o f p i c t u r e h e a de r.
  • FIG. 23 is a schematic diagram showing the syntax of pictureheadera
  • FIG. 24 is a schematic diagram showing the syntax of picturecerdinextexnios.
  • FIG. 25 is a schematic diagram illustrating the syntax of picturedata.
  • FIG. 26 is a schematic diagram showing each data 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 bucket 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
  • FIG. 4 is a diagram showing a broadcasting system including a main broadcasting station 141 and a local broadcasting station 171.
  • the main broadcasting station 14 1 has a plurality of editing processing studios 1 45 A to 1 45 D, a plurality of MP EG encoders 1 42 A to 142 D, and a plurality of MP EG decoders 144 A to 144 D, at least It has one multiplexer 16 2 A and at least one demultiplexer 16 1 A.
  • the broadcasting station 141 includes an SDT I—Serial Data Transfer Interface (CP) network 150 defined as SMPTE 305M, and each MPEG element.
  • the coder, each MPEG decoder, the multiplexer 162A and the demultiplexer 161A can transmit and receive the elementary stream via the SDT I-CP network 150.
  • SDTI-CP is a communication format proposed for transmitting an MPEG elementary stream, and is defined as SMPT E305M. Note that the elementary stream transferred on the SDTI_CP network 150 is expressed as ES-over-SDTI-CP.
  • Editing No Processing Studio 144A-145D It is a studio equipped with a bar, video editor, special effects device, video switcher, etc.
  • the baseband video data received from the MPEG decoder is decoded and image processing is performed on the baseband video data. Output to EG encoder.
  • the editing processing studios 145A to 145D are processing units for editing baseband video signals and performing image processing, not for stream processing of the coded stream.
  • the MP EG encoders 142A to 142D receive a baseband input video signal from the editing / processing studios 145A to 145D, and encode the input video data according to the MPEG standard described above. And a device for generating an elementary stream (ES).
  • the elementary stream generated by the MPEG encoder is transmitted via the SDTI-CP network 150 to any one of the MPEG decoders 144A to 144D. Supplied to 2 A.
  • 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 Performs decoding based on the EG standard.
  • Multiplexer 162A generates one transport stream by multiplexing multiple video programs produced in main broadcasting station 141 for distribution to local stations 171 or homes. This is the circuit to do.
  • the SDTI receiveives a plurality of elementary streams corresponding to a plurality of video programs via the CP network 150, and converts each elementary stream into a bucket to convert the bucketized elementary stream. Generate a transport stream bucket from the bucketized elementary stream.
  • multiplexer 162A By multiplexing transport stream buckets generated from multiple video programs, multiplexer 162A generates a multiplexed transport stream. In addition, this The configuration and processing of the multiplexer 162A will be described later.
  • the multiplexed transport stream generated by the multiplexer 162 A is transmitted to the demultiplexer 161 B of the local station 171 via an ATM or satellite line. Supplied via such a network.
  • the local station 17 1 differs in size from the main station 14 1, but since it has the exact same system configuration, detailed description is omitted.
  • the multiplexed transport stream generated by the multiplexer 162A is the MPEG decoder 170 provided in the set-top box of each home.
  • A is supplied to A via a network such as an ATM satellite line, and the decoded video data is supplied to a TV set.
  • Figure 5 shows the difference between an elementary stream transmitted over a SDTI-CP network in a broadcasting station and a transport stream transmitted over a public network.
  • This SDTI_CP network 150 is a communication format that enables a transmission rate of 27 OMbps based on SDI (Serial Data Interface) standardized by SMP TE 259M. It is possible to transmit the elementary stream (ES) of the MPEG system as it is, and is suitable for closed networks such as in studios. Specifically, as shown in Fig. 5A, video data "V” and audio data "A” are packed in video data frame units, and frame data is separated by frame boundaries (dotted lines). Edits can be made easily.
  • video data When transmitting between broadcast stations or using a public network, video data is transmitted in the form of a transport stream.
  • the transport stream is used to transfer data even in public networks with low transmission capacity.
  • all contents such as video data and audio are packed and transmitted in units of 188 bytes.
  • V indicates a transport stream packet of video data
  • A indicates a transport stream packet of audio data
  • a blank indicates a bucket of empty data.
  • the original / les source video data having a frame rate of 24 Hz is composed of two fields (top fields t1, t2, ising) with each frame F1, F2, . « , And bottom fields b 1, b 2,...), And in the 3-2 pull-down processing, as shown in FIG. 7A, the first frame F 1 which is the top field first Generates a repeat field t 1 ′ by repeating the top field t 1 to form one frame with three fields, and repeats the bottom field b 3 in the third frame F 3 that is the bottom field first To generate a repeat field b 3 '.
  • the frame of the source video data having a frame rate of 24 Hz is obtained by alternately repeating the frame of the three-field configuration and the frame of the two-field configuration.
  • Video data with a frame rate power S 3 OH z such as A can be generated.
  • the input video data is an example of the input video data generated by the 2-2 pull-down process.
  • the embodiment is not limited to the embodiment of the video data which has been pulled down by 3-2.
  • the original source video is video data having a frame rate of 30 ⁇ , and the video data which has not been subjected to 3-2 pull-down processing. Even in the case of, it can be applied without any problem.
  • the MPEG encoder shown in Fig. 6 is composed of an auxiliary data separation circuit 101, a field counter 102, an inverted 3-2 pull-down circuit 103, an encoder controller 104, and a motion vector detection circuit.
  • the auxiliary data separation circuit 101 is a circuit that extracts ancillary data from a blanking period of input video data. Specifically, as shown in Fig. 8, ancillary data inserted in the vertical blanking period of input video data
  • This ancillary data includes teletext data, closed caption data,
  • VITC Very Interim Time Code
  • LTC L inear Time Code
  • the information on the extracted ancillary data is supplied to the controller 104 as Anci 1 lary—data, and the information on the line number is supplied to the controller 104 as a Line number. Supplied.
  • Information on VITC is supplied to the controller 104 as Time-code-1 and information on LTC is supplied to the controller 104 as Time-code-2.
  • 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 is present with respect to all pixel areas 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 about the vertical position of the active video area is the V-phase information about the horizontal position of the active video area.
  • Information is supplied to the controller 104 as an 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 the subsequent field counter 102.
  • the field counter 1.02 is a circuit that counts a field 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 Field-ID. For example, when the input video data as shown in FIG. 7A is supplied to the field counter 102, there are three fields in the frame F1. ”,“ 1 ”and“ 2 ”fields—IDs are output, and since two fields are present in frame F 2, the count information includes“ 0 ”and“ 1 ”Fie 1 d_ID. Is output.
  • the field counter 102 has two counters that are counted up by counting the fields of the input video data, and information about the count value of this counter is provided by a PTS-counter and a DTS-counter. Output to the controller 104.
  • the PTS—counter is used as information to generate a presentation time stamp (PTS)
  • the DTS—counter is used as information to generate a decoding time stamp (DTS). used.
  • 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—first—field flag "1" means that it is necessary to create a repeat field when decoding MPEG
  • R epeat-"0" of the first one field flag means that there is no need to create a repeat field at the time of MPEG decoding.
  • the Top — fie 1 d first flag indicates whether the first of the fields that make up the frame is the top or bottom field.
  • FIG. 9A is a diagram for describing the frame structure of 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, the top field is copied and a repeat field is created, so Need to generate different frames. Therefore, the corresponding flag of Repeat—first_fie Id is “1”, and the flag of Top—fie 1 d—first is “1”.
  • the flag of Repeat—first—field is set to “0”, and the bottom field is a frame earlier in time than the top field. Therefore, the Top—field—first flag is set to "0".
  • the flag of Repeat—first—fie 1 d is set to “1”
  • the flag of Top_fie 1 d—first is set to “0”. Since it is not necessary to create a repeat field in the decoding process of frame F4, the flag of Repeat—first—field is set to “0”, and the flag of Topenfinfie 1 d_first is set to 1.
  • the PTS counter is the time stamp information on which the PTS is based. If the information does not match the frame order of the data, it cannot be deleted.
  • this PTS-counter is a value generated by a counter that performs a force operation that increases from 0 to 127 and then returns to 0 again. Therefore, the value of the counter PTS-counter changes as shown in FIG. 9B. More specifically, in the input video data, the first frame F1, which is an I picture, is a picture that must be displayed first, so that the value of the PTS-counter is "0".
  • the PTS of the fourth frame F 4-The counter is converted to the PTS of frame F 3-the value of the counter” 5 "and the frame F
  • the value of PTS-counter after frame F5 is calculated in the same way.
  • the DTS-counter is the time stamp information on which the DTS is based, it must be information that does not match the frame order of the input video data but the picture order in the coding stream.
  • the timing at which the frame F1 is decoded is only one frame from the display timing at which the frame F1 is displayed.
  • the field counter 102 generates a PTS-counter and a DTS-counter in accordance with the above-mentioned determination, and supplies the PTS-counter and the DTS-counter 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 pull-down processing circuit 103 receives the video data of the 30 Hz frame rate obtained by the 3-2 pull-down processing as shown in FIG. 7A, and outputs the frame rate of 24 Hz. Is a circuit for generating video data.
  • 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 reducing the 30H. Converts video data at a frame rate of z to video data at a frame rate of 24 Hz.
  • the inverse pull-down processing circuit 103 analyzes the frame structure of the supplied video data, and removes only the field identified as a repeat field appearing at a predetermined interval. ing. Therefore, when analyzing the frame structure of the video data, the reverse pull-down processing circuit 103 generates a flag of “Repeat—first—fie Id” and “Top—field—first” as information indicating the frame structure. To the controller 104.
  • the motion vector detection circuit 105 receives the video data output from the inverse 3-2 pull-down processing circuit 103 in units of macroblocks, and according to a predetermined sequence, sets the image of each frame. Data, I picture, P picture Or as a B-picture. Whether an image of each sequentially input frame is processed as an I, P, or B picture is determined in advance based on a GOP structure specified by an operator.
  • the detected motion vector MV is supplied to the controller 104 and the motion compensation circuit 119.
  • the switch circuit 1 1 1 switches the switch to contact a when the intra prediction mode is set.
  • this macroblock 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, like the I-picture data. Transmitted. 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. Also, when the forward prediction mode is set, the switch 1 1 1 is switched to the contact b, and the image data stored in the frame memory 1 18 for the forward prediction image (the image data of the I picture in this case) Is read out, and the motion compensation circuit 119 performs motion compensation based on the motion vector MV supplied from the motion vector detection circuit 105.
  • the motion compensation circuit 119 outputs the read address of the memory 118 for the forward prediction image to the motion vector detection circuit 105 currently.
  • the data is read out from the position corresponding to the position of the macro block in the position corresponding to the motion vector, and predicted image data is generated.
  • the predicted image data output from the motion compensation circuit 119 is supplied to a computing unit 120.
  • the arithmetic unit 120 subtracts the predicted image data corresponding to the macroblock supplied from the motion compensation circuit 119 from the macroblock data of the reference image, and outputs the difference (prediction error). This difference data is transmitted to the transmission path via the 00-th circuit 112, the quantization circuit 113, the variable-length encoding circuit 125, and the transmission buffer 126.
  • the difference data is locally decoded by the inverse quantization circuit 114 and the IDCT circuit 115, and is input to the arithmetic unit 116.
  • the same data as the predicted image data supplied to the computing unit 120 is also supplied to the computing unit 1 16.
  • the arithmetic unit 1 16 converts the differential data output from the IDCT circuit 1 15 into a motion compensation circuit 1 1 9 Are added together.
  • the P-picture image data is supplied to and stored in the backward prediction image section 117 of the frame memory. After the data of the I picture and the P picture are stored in the forward prediction image section 118 and the backward prediction image section 117, respectively, the motion vector detection circuit 105 Execute the process.
  • the switch 111 In the intra prediction mode or the forward prediction mode, the switch 111 is switched to the contact point a or b. At this time, the same processing as in the case of the P picture is performed, and data is transmitted. On the other hand, when the backward prediction mode or the bidirectional prediction mode is set, the switch 111 is switched to the contact c or d, respectively. In the backward prediction mode in which the switch 1 1 1 is switched to the contact point c, the image (currently, the picture of the P picture) stored in the backward prediction image section 1 17 is read out, and the motion compensation circuit 1 By 19, motion compensation is performed in accordance with the motion vector output by the motion vector detection circuit 105.
  • the motion compensation circuit 119 supplies the read address of the backward prediction image section 117 to the motion vector 105 of the currently output macro block. Data is read out from the position corresponding to the position by the amount corresponding to the motion vector, and predicted image data is generated.
  • the predicted image data output from the motion compensation circuit 119 is supplied to a computing unit 121.
  • the arithmetic unit 121 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 zero-link circuit 112, the quantization circuit 113, the variable-length encoding circuit 125, and the transmission buffer 126.
  • the image (current I-picture image) data stored in the forward prediction image section 1 18 and the backward prediction image section 1 1 1 is read out, and the motion compensation circuit 119 outputs the data to the motion vector output by the motion vector detection circuit 105. Motion compensated accordingly.
  • the motion compensation circuit 1 The read address of 117 is used as the motion vector from the position corresponding to the macroblock position that the motion vector detection circuit 105 is currently outputting from the motion vector detection circuit 105 (in this case, the motion vector is And two for the backward prediction image), and read out the data with a shift corresponding to the above to generate the prediction image data.
  • 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 predicted image data supplied from the motion compensation circuit 119 from the macroblock data of the reference image supplied from the motion vector detection circuit 105, and calculates the difference Is output.
  • This difference data is transmitted to the transmission path via the 0-link circuit 112, the quantization circuit 113, the variable-length encoding circuit 125, and the transmission buffer 126.
  • the B-picture image is not stored in the frame memories 117 and 118 because it is not used as a predicted image of another image.
  • the controller 104 controls / controls all circuits involved in the above-described processing related to the prediction mode, processing related to the DCT mode, and processing related to the quantization. Furthermore, 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 process of each picture. Supply to circuit 125.
  • the controller 104 receives information about the V-phase, the H-phase, the Time-codel, the lime-code2, the Anciliar y_data and the Line-number from the auxiliary data separation circuit 101. In addition, it receives information about the Fino redo counter 102, the DTS-1 counter PTS-counter and the Fie1 d_ID. The controller 104 receives the received information, V—pha se, H—pha se, i me—co d e l, and T i me
  • the variable length coding circuit 125 is a DCT coefficient quantized from the quantization circuit 113.
  • the coding stream is generated in accordance with the elementary stream syntax defined in the MPEG standard.
  • variable-length coding circuit 125 is supplied as a controller 1 ⁇ 4 power, etc.
  • MP EG-ES- editing 1 in.
  • For motion (i) Performs variable-length coding of information and inserts it into the coded stream.
  • the syntax of the encoding stream and the syntax of MPEG—ES—editing—information (i) will be described in detail later.
  • FIGS. 10 to 26 the syntax of the bit stream will be described. I will explain the tax.
  • FIG. 26 is an explanatory diagram showing the data structure of the MPEG encoded stream in a format that makes it easier to understand the detailed syntax described in FIGS. 10 to 25.
  • FIG. 10 is a diagram showing the syntax of the 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 data elements are shown in bold print.
  • a data item is described by a monimon (Mnemonic) indicating its name, bit length, its type and transmission order.
  • the syntax shown in FIG. 10 is used on the MPEG decoder 44 side to extract a predetermined meaningful data element from the transmitted encoded bit stream. It is syntax.
  • the syntax used on the MPEG encoder 42 side is a syntax obtained by omitting conditional statements such as if statements and whi 1 e statements from the syntax shown in FIG.
  • the next_star_t_code () described first in the video_sequence () is a function to search for the start code described in the bitstream. Generated according to the syntax shown in this Figure 10. First, the data element defined by the sequence_header () and the sequence extension () is described in the encoded stream thus obtained.
  • the sequence-header () is a function for defining the header data of the sequence layer of the MPEG bitstream
  • the sequence-extension () is for defining the extension data of the sequence layer of the MPEG bitstream. Is a function of sequence—
  • the do ⁇ whi 1 e syntax that is placed next to the extension () is a function inside the ⁇ of the do statement while the condition defined by the wh i 1 e statement is true.
  • nextbits () used in the whi1e statement is a function for comparing a bit or a bit string described in the bitstream with a 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 calculates the bits in the bit stream. When the system IJ does not match the sequence_end_code, the condition of this wh i 1 e statement is true.
  • the do ⁇ whi 1 e syntax that is placed next to the sequence-extension ⁇ is the function in the do statement while the sequenc e_end d_code indicating the end of the video sequence does not appear in the bit stream.
  • Indicates that the data element defined by is described in the encoded bit stream.
  • the data element defined by extension—and—user—data (0) is described and recorded. .
  • This extension one and one user one data (0) is a function for defining extension data and user data in the sequence layer of the MPEG bit stream.
  • the do ⁇ wh i 1 e syntax located next to this extensio n_a n d_userdata (0) is w
  • This function indicates that while the condition defined by the hi 1 e statement is true, the data element described based on the function in ⁇ of the do statement is described in the bit stream.
  • the nextbits () used in the wh i 1 e statement is used to determine whether a bit or bit sequence appearing in the bitstream matches a picture-start-code or a group-start-code. If the bit or bit string appearing in the bit stream matches the picture-start-code or group-start-code, the condition defined by the wh i 1 e statement is true. Become.
  • this do ⁇ wh i 1 e syntax is defined by the function in the do statement following the start code when picturestartcode or group-start-code appears in the encoded bit stream. This indicates that the code of the data element is described. The if statement described at the beginning of the do statement indicates that the condition occurs when group_start_code appears in the encoded bitstream. If the condition according to this if statement is true, this group—start—code is followed by group—of one picture—header in the coded bitstream.
  • Grou p_of _ pictur e_h eader is a function for defining the header data of the GOP layer of the MPEG coded bit stream
  • the extension—and_user_data (1) is an MPEG code. It is a function to define the extension data and user data of the GOP layer of the coded bitstream.
  • the picture elements defined by group_off — pictureheader () and extension-and-user-data (1) are followed by picture-header () and picture-header.
  • coding describes the data element defined by extension ().
  • eXtension_nd-user-data (2) is a function for defining extended data and user data of the picture layer of the MPEG encoded bit stream.
  • the user data transmitted by the extension-and-user-data (2) is data described in the picture layer and can be described for each picture.
  • a data element defined by picture-data () is described.
  • the picture-data () is a function for describing data elements relating to the slice layer and the macroblock layer.
  • the wh i 1 e statement described after this pictur e_d ata () is a function for determining the condition of the next if statement while the condition defined by this wh i 1 e statement is true. It is.
  • Ne X tbits () used in this whi 1 e statement is a function for determining whether picture-start-code or group-start-code T is described in the encoded bit stream. If picture-start-code or group-start-coae-power gd3 ⁇ 4 is included in the bit stream, the condition defined by this wh i 1 e statement is true.
  • the following if statement is a conditional statement for determining whether or not sequence-end-code is described in the coded bit stream. Indicates that the data element described by sequence—header () and sequence—extension () is described. Sequence— end—code indicates the end of the sequence of the encoded video stream.
  • sequenceheader () and sequence-extension () are described in the encoding stream unless the encoding stream ends.
  • the sequence-header () and sequence-extension data elements are completely different from the sequence-header () and sequence-extension () data elements described at the beginning of the video stream sequence. Is the same.
  • 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), the data in the sequence layer This prevents the stream from being received and the stream from being decoded.
  • sequence-header Following the data element defined by this last sequenceheader () and sequence-extension (), that is, at the end of the data stream, a 2-bit sequence—end—code indicating the end of the sequence.
  • Pico sequence-header (), sequence-extension (), extension-and-user-data (0), groupofpicture-header (), picture-header (), picture-coding-extension (), and Picture—data () is explained in detail.
  • FIG. 11 is a diagram for explaining the syntax of sequence—header ().
  • the data element defined by this sequenceheader () is s equence-headercode, horizontalsize-value, vertical-size-value, aspect- ratioinformation, frame-rate-code, bit-ratevalue, marker-bit, vb-buffer-sizevalue, constrained-parameter-flag, 1 oadintra-quantizer-matrix, intraquantizer matrix [64], load-non-intra-quantizer-matrix, non-intra-quantizer-matrix, etc.
  • the sequence-header-code is data representing a start synchronization code of the sequence layer.
  • horizontal—size_va1ue is data consisting of the lower 12 bits of the number of pixels in the horizontal direction of the image.
  • vertica l_size_vale is data consisting of the lower 12 bits of the number of vertical lines in the image.
  • fr ame — rat e_code is data representing the display cycle of an image.
  • bit—rate—value is the lower 18 bits of the bit rate (rounded up to the nearest 400 bsp) to limit the amount of generated bits.
  • “marker_bit” is bit data inserted to prevent start code emulation.
  • V b V — buffe r_s ize — va 1 ue is the lower 10 bits of the value that determines the size of the virtual buffer (video buffer verifier) for controlling the amount of generated code.
  • d_parameter—flag is data indicating that each parameter is within the limit.
  • the load-intra-one-quantizer-matrix is data indicating the existence of the intra MB quantization matrix 'data.
  • Intra-quantizer-matrix [64] is data indicating the direct of the intra-MB quantization matrix.
  • 1 oad—non—intr a_q uantizer matrix is the quantization matrix data for non-intra MB. This data indicates the existence of data.
  • ⁇ -intra-quantizer-matrix is data representing the value of the quantization matrix for non-intra MB.
  • Figure 12 is a diagram for explaining the syntax of sequence—extension ().
  • sequence-extension fe
  • extension-start-code extension-start-coae- ⁇ dent1fier
  • profiieandlevelindication progressivesequence
  • chroma-for mat horizontalsizeextension, vertical
  • data elements such as size-extension, bitrate-extension, vbv-buffer-size-extension, 1ow-delay, frame-rate-extensionn, and frame-rate-extension-d.
  • extension-start-code This is a data indicating the start synchronization code of extension data.
  • the extension-start-code-identifier is data indicating which extension data is sent.
  • profi 1 e-1 and 1 level-indication is data for specifying the profile and level of biodata.
  • the progressive-sequence is data indicating that the video data is progressively scanned.
  • chroma—format is data for specifying the color difference format of video data.
  • horizontal-size-extensio- ⁇ This is the data of the upper two bits that are aligned to the horiznta 1-size-va 1 ue of the sequence header.
  • vertica 1-1 size-extension The upper two bits of the sequence header vertica 1-1 size-value.
  • bitrate—extension is the upper 12 bits of data added to the bit—rate __v a 1 ue in the sequence header.
  • vbv-buffer-size-extension This is the upper 8 bits of the data that can be applied to the vbv—buffer_size—value of the data.
  • low—delay is data indicating that a B picture is not included.
  • frame-rate-extens-on-n is data to obtain the frame rate in combination with the sequence header's ir ame-rate-code.
  • the frame-rate-extension-d is data to obtain the frame rate in combination with the sequence header's frame-rate-code.
  • FIG. 13 is a diagram for explaining the syntax of extension one and one user-data (i).
  • This e X tension—and one user one data (i) is defined by use r_d ata () without describing the data element defined by extension— data () when “i” is other than 1. Describe only data elements that Therefore, extension-and-user_data (0) describes only the data element defined by user-data ().
  • ne X tbits () is a function that compares the bits or bit strings that appear in the bitstream with the next data element to be decoded.
  • the user_data () in FIG. 14 is a diagram for explaining the features of the present embodiment.
  • Figure 1 4 ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user user
  • the wh i 1 e syntax consists of 23 "0s” followed by a "1" in the bitstream. True unless 24-bit data appears.
  • the 24-bit data consisting of these 23 “0s” followed by a “1” is the data added to the start of all start codes.
  • neXtbit S () can locate each start code in the bitstream.
  • nextbits () is, V- when P hase detects a bit string (D ata one ID) indicating the of V_ P hAS e shown from the next bit in the V- P hase () of the bit string (D aTA-ID)
  • next bits () detects the data element, the next bit bit (D ata—ID) is detected.
  • the data element of H—P hase indicated by H—P hase () is described from the next bit of (ID). That.
  • V—P hase () 2 20 and H—P hase () 2 21 are described in the user data area of the sequence layer.
  • the data-ID of V-P hase is a bit string representing "01”
  • the data-ID of H-P hase is "02". It is a bit string to represent.
  • the syntax of V—P hase () described in the bitstream will be described with reference to FIG. First, as described above, D ata-ID is 8-bit data indicating that the data element of the bit string following the D ata-ID is V-P hase. The indicated value is "01".
  • V—P hase is 16-bit data indicating the first line to be encoded in the frame of the image signal. Saying In other words, V—P hase is data indicating the vertical line position of the active video area.
  • H—Phase () The syntax of H—Phase () described in the bitstream is described with reference to FIG. First, as described above, Data_ID is 8-bit data indicating that the data element of the bit string following the Data_ID is H-P hase, as shown in FIG. Value "02".
  • H—Phase is 8-bit data indicating the first sample to be encoded in the image signal frame. In other words, H-Phase is data indicating a horizontal pixel sample position in the active video area.
  • next E 1 se eif statement executes the following wh i 1 e statement when i of ex t n t i o n — an d — u s e r — d a ta (i) is 2. Since the contents of the wh i 1 e syntax are the same as those described above, the description is omitted here.
  • nextbits () detects a bit string indicating Time code 1 or detects a bit string indicating Time code 2; From the next bit of the bit string, it is known that the data element of the Time code indicated by Time_code () is described.
  • this Time — code ( ) twenty four
  • Data elements represented by 1 is that the data described in the ⁇ Taeri ⁇ user's picture layer.
  • the Data_ID of the Time codel is a bit string representing “03” as shown in FIG. 15, and the data of Timecode 1 is the time code inserted during the vertical blanking period of the image.
  • VITC Vertical Interva 1 Time Code
  • Data-ID of Timecode 2 is a bit string representing "04" as shown in Fig. 15, and Timecode 2 data indicates the time code recorded on the time code track of the recording medium.
  • LTC Longitudinal Time Code or L inear T
  • 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.
  • color-frame_f1ag represents a control flag relating to color frame information
  • Drop-frama-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
  • field—phase represents the control flag for phase correction
  • the 16th bit from the 10th bit The 7 bits up to the second represent the 'second,' part of the time code.
  • the 34th bit, 51th bit, and 1st bit of the 68th bit are marker bits for preventing 23 consecutive 0's as described above. By inserting marker bits at intervals, start code emulation can be prevented.
  • 18 bit 26, bit 27, and bit 27 binaray_grouup represent the control flag for the binary group.
  • the 7th bit of the 25th bit represents the “minute” portion of the time code, and the 6th bit from the 28th bit to the 33rd bit represents the “hour” portion of the timecode.
  • nextbits () detects a bit string indicating a Picture Order
  • the data of the Picture Order indicated by Picture — Order () starts from the next bit of the bit string.
  • Dat a ID of Pic t ure — Or d er () is a bit string representing “05” as shown in FIG.
  • the syntax of Pictu ure—O der () actually inserted into the elementary stream (ES) by the encoder will be described.
  • Da t a ID of Pic t ure — Or d er
  • PTS-counter is a value generated by the field counter 102 in the MPEG encoder, and indicates a display order in which the count-up is performed every time one field is input in the input video data. It is 7-bit data. The 7-bit data is modulo with values 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 is used to prevent the start code emulation from occurring, in which the bit string in which the userdata is described coincides with the start code described above by chance and is likely to cause image destruction. This bit is inserted for each bit.
  • DTS-counter is a value generated by the final counter 102 in the MPEG encoder, and is a 7-bit value indicating the encoding order, which counts up each time one field of encoded image data is encoded. Data.
  • the 7-bit data is modulo with a value from 0 to 127.
  • D ata — ID of An ci 11 ar y_d ata () is a bit string representing “07” as shown in Fig. 15.
  • the data elements related to Anci 11ary-data () are the same as the Picture-Order () and Time-Code (), and the user data area of the picture layer. It is described in.
  • the syntax of ancillarydata for adding an identifier to this auxiliary data will be described with reference to FIG.
  • An cillary— data () is inserted as user data of the picture layer, and the data includes a Fie 1 d identifier (Fie 1 d—ID), a line number (Line—number), and ancillary data. (Anci 1 1 arydata) is inserted.
  • Data-ID is 8-bit data indicating ancillarydata in the userdata area, and its value is "07” as shown in Fig.15.
  • Fie 1 d—ID is 2-bit data. If the input video data is progressive video or not, the flag indicating “progressive sequence” is “0”. When the input video is interlaced video data, Fie 1 d—ID is added to each field in the encoded frame.
  • the coded stream shown in FIG. 7C is a diagram related to the coded stream when the input video data shown in FIG. 7B is coded. is there. This coded stream is composed of an elementary stream composed of a plurality of access units (AU1, AU2 ...), and FIG. 7C shows ancillary data and Fie in the elementary stream. 1d is a diagram showing that information on ID is described.
  • This encoded stream is represented as Fie 1 d—ID for frame F1.
  • the Field-ID is added for each coding frame when the value of the progressive-sequence f1ag is "1", that is, when the input video data is 1.
  • An ci 1 lary—data—payload indicates the contents of ancillary data consisting of 22-bit data, and the value of An ci 1 lary—data—payload
  • An ci 1 lary—aata—1ength is j If the value is larger than the value of (initial value 0), the value j (the data length of An ci 11 ary_d at a_1 ength) is incremented by 1, and the value is written from the bit string of the value of j.
  • the following Wh i 1 e syntax describes the syntax for bytealigned (), and if the next data is not bytealigned () (when the Wh i 1 e syntax is true), Zero_bit (1 bit Describe the data "0").
  • nextbits () detects the bit string indicating Historydata, and the next bit of the bitstring is indicated by History-data (). Know that the data element of Historydata is described.
  • the Data_ID of History_data () is a bit string representing "08" as shown in Fig. 15, and the data indicated by Data_ID "08" is the history of the coding parameter. History containing information
  • FIG. 22 is a diagram for describing the syntax of group-of-picture-header ().
  • the data element defined by this group_off — picture — header () consists of group — start — code, time — code, closed — gop, and broken — link.
  • group—start—code is data indicating the start synchronization code of the GOP layer.
  • time — code is a time code indicating the time from the beginning of the sequence of the first picture of the GOP.
  • closed — gop is flag data indicating that the image in the GOP can be played independently from other GOPs.
  • broken-1 ink is flag data indicating that the first B picture in the GOP cannot be accurately reproduced due to editing or the like.
  • FIGS. 23 to 25 pictur e_h eadr (), picture—coding—extension (), and picture—data () for describing data elements related to the picture layer of the coding stream. Will be described.
  • Figure 23 is a diagram for explaining the syntax of pictur e_h eadr ().
  • Picture—headr [picture-star-code, temora 1 reference, picture-coding-type, vbvdelay, full-pel-for-ward-vector, forwardfcode, fullpelbac kwa rd-vector, bac kwa rd-f one code, extra one bit-picture, and extra-information one picture.
  • picture-start-code is data representing a start synchronization code of the picture layer.
  • tempora 1-reference is a number indicating the display order of pictures, and is data that is reset at the beginning of the GOP.
  • picture _coding—type is data indicating the picture type.
  • vb v_d e 1 ay is data indicating the initial state of the VBV buffer, and is set for each picture.
  • the picture of the coded elementary stream transmitted from the transmitting system to the receiving system is buffered in the VBV buffer provided in the receiving system, and specified by DTS (Decoding Time Stamp). At this time, it is extracted (read) from this VBV buffer and supplied to the decoder.
  • vbv The time defined by 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 coded is pulled out of the VBV buffer, or DTS. Means the time until the specified time.
  • the fu11_pe1_forword-vector is data indicating whether the accuracy of the forward motion vector is in integer units or half-pixel units.
  • wa rd — f code is data representing the forward motion vector search range.
  • the ful 1—pel—bac kwa rd—vector is data indicating whether the accuracy of the backward motion vector is in integer units or half-pixel units.
  • backward—f—code is data that represents the search range of the backward motion vector.
  • extra-bit-picture is a flag indicating the presence of the following additional information.
  • FIG. 24 is a diagram for describing the syntax of picture—coding—extension ().
  • This data element ⁇ , extensionstart-code, extension-startcode-identiiier, fcode [0] [0], f-code [0] [1], f-code [1] [0], f-code [1] [1], intra-dc-precision, picture-structure, op-field-first; , Fr ame-predictive fr ame-dct, conceal ment one motion-vectors, q-scale-type, intra-vie '_ for mat, alternate-scan, repeat-first one field, chroma-420-type, progressive -Fr ame, com oposite-disp 1 ay-f 1 ag, v-axis, fie 1 d_sequence, sub-carrier, burst-amp litude, and sub-carrier-phase force.
  • extension—start—code is a start code indicating the start of extension data of the picture layer.
  • extension—start—code—identifier is a command that indicates which extension data is sent.
  • f code [0] [0] is data representing the search range of the horizontal motion vector in the foreground direction.
  • f — code [1] [1] is data that represents the search range of the vertical motion vector in the backward direction.
  • intr a_dc precision is data representing the precision of the DC coefficient.
  • picture Data indicating whether it is a structured or frame-structured field structure. In the case of a field structure, this also indicates the upper field or lower field.
  • top fie 1 d—first is a flag that indicates whether the first field is a top or bottom field for a frame structure.
  • fr ame _p redict 1 ve— framedct is, in the case of a frame structure, data indicating that the prediction of the frame mode DCT is only the frame mode.
  • conceal ment motionvectors is Inn This data indicates that the motion vector for concealing the transmission error is attached to the tiger macro block.
  • q-scale-type is data indicating whether to use a linear quantization scale or a non-linear quantization scale.
  • intra — vie — format is data indicating whether to use another two-dimensional VLC (variable length code) for intra macro block.
  • a .lternate—sean is the data that indicates the power of using zigzag scan and the choice of using alternate scan.
  • repeat— firs t_field is a flag that indicates whether or not to generate a repeat field at the time of decoding. In the decoding process, if the repeat—first—field force is “1”, the repeat field is used. Repeat_firs t_field; ⁇ If "0" is set, no repeat field is generated.
  • chrom a — 4 20_ type is data representing the same value as the next progressive frame when the signal format is 4: 2: 0, and 0 otherwise.
  • FIG. 25 is a diagram for describing the syntax of picture-data ().
  • the data element defined by Picture-data () is the data element defined by slice ().
  • Not slice () is a function for describing a data element related to a slice layer. Specifically, siice-start-code, siicequantiser-scale-code, intra-one slicef 1ag, intra-one siice, reserved- ' This is a function for describing data elements such as bits, extra-bits 1 ice, extra-information 1s1 ice, and extra-bit-slice, and data elements defined by macroblock ().
  • siice-start-code 3. slice () This is a start code that indicates the start of the data element defined by 1.
  • Intra-one slice flagf or bit stream ⁇ ⁇ intra-one siice and reserved_b its Intra a_s1 ice is data indicating whether or not a non-intra macroblock power exists in the slice layer.
  • intra-s1 ice In the case of macroblock, intra-s1 ice is “0”, and when all the macroblocks in the slice layer are non-intra macroblocks, intra-s1ice is “1”.
  • d_b its is 7-bit data and has a value of “0.”
  • e Xtra—bit—s1 ice is a flag indicating that additional information is present as an encoded stream.
  • extra_information—s1 ice is present, it is set to “1.” If no additional information is present, it is set to “0 J.
  • macrob 1 ock () is the macroblock layer To This is a function for describing data elements related to the data element.
  • macroblock escape is a fixed sequence of bits that indicates whether the horizontal difference between the reference macroblock and the previous macroblock is greater than or equal to 34. If the horizontal difference between the reference macroblock and the previous macroblock is 34 or more, add 33 to the value of macrob 1 ock—address—in.crement. “ma crob 1 ock—address—increment” is data indicating the horizontal difference between the reference macroblock and the macroblock of the eye ij.
  • the multiplexer 162A includes a plurality of bucketizers 301-309, a plurality of transport stream generation circuits (TS G en.) 3111-319, and a plurality of system target decoder buffers (STD B uffer) 3 2 1-3 29, a multiplexing circuit 3 30, and a multiplexing controller 300.
  • the bucketizers 301 to 309 receive the elementary streams respectively output from the MPEG encoders, and generate a bucketized elementary stream (PES) by bucketing the elementary streams.
  • PES bucketized elementary stream
  • FIG. 28 is a diagram for explaining the relationship between the elementary stream (ES), the bucketized elementary stream (PES), and the transport stream bucket.
  • FIG. 28B When the source video data is encoded, an elementary stream composed of the access units AU1, AU2 is formed as shown in FIG. 28B, for example.
  • FIG. 28C is a diagram for explaining the packetization processing of the bucketizer.
  • the bucketizer packs a plurality of access units and adds a PES header to the beginning of the bucket.
  • FIG. 29 is a drawing for explaining the 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 presentation time stamp (PTS) and decoding time stamp (DTS) information.
  • Transport stream generation circuit (TS G en.) 3 1 1—3 19 is a bucketizer 30
  • a transport stream composed of a 188-byte transport stream bucket is generated.
  • STD Bufferr System target decoder buffer
  • the multiplexing circuit 330 receives the transport streams from the system target decoder buffers 321-329, respectively, and performs multiplexing processing in accordance with the scavenging rule 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 bucketizer includes a buffer 341 for buffering the received elementary stream, a parsing circuit 342 for parsing (analyzing) the syntax of the received elementary stream, and a buffer output from the buffer. And a bucket circuit 343 for bucketing the elementary stream.
  • 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 bucketing circuit 343. Specifically, the parsing circuit 342 performs variable length coding on the received elementary stream, and searches for a special data element such as a start code included in the stream. Since the purpose of this parsing process is to extract the PTS-one counter and the DTS-one counter, the sequence layer ignores the start code of the GOP layer, and first searches for the start code of the picture layer. Next, the user data area of the picture layer can be found by finding the 32-bit user-data-start-code from the stream.
  • the 10th bit of the Picture — order () function such as the 16th and 17th to 23rd bits, contains the PTS counte Since r and DTS-counter are described respectively, the parsing circuit 342, the PTS-counter and the DTS-counter are extracted and supplied to the packetizing circuit 343.
  • the packetizing circuit 343 receives the PTS-counter and the DTS-counter from the parsing circuit 342, and newly generates a PTS and a DTS based on the information on the PTS-counter and the DTS-counter.
  • the value of PTS-counter itself is used as the value of PTS
  • the value of DTS-counter itself is used as the value of DTS.
  • FIG. 30 is a diagram for explaining the minimum delay that occurs when the packetizer of the present embodiment is used.
  • FIG. 3 OA represents input video data
  • FIG. 30B represents an elementary stream when the input video data is encoded
  • FIG. 30C is generated by the MPEG encoder of the present embodiment. 4 shows a bucketized elementary stream when the encoded stream is used and the bucketizer of the present embodiment is used.
  • FIGS. 30A and 30B are the same as FIGS. 2A and 2B. However, as can be understood by comparing FIG. 2C and FIG.
  • the delay for determining the PTS from the encoding stream can be reduced to one frame time.
  • the minimum delay of one frame is not limited to the number of B-pictures that exist between I-pictures and P-pictures, even if there are many B-pictures between I-pictures and P-pictures.
  • the MPEG decoders 144A-144D will be described with reference to FIG.
  • 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 4 1 1, and a motion compensation circuit 4 12, memories 4.13 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 convert a stream composed of data elements having a predetermined data length. Generate. Further, the variable-length decoding circuit 402 extracts all coding parameters from the stream by parsing (analyzing) the syntax of the data stream subjected to the variable-length decoding, and supplies it to the controller 405. Examples of coding parameters required by the MPEG standard to be superimposed on the stream are 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 this encoded stream.
  • variable length coding circuit 402 stores the MPEG-ES-Editing-infor- mation in the user data area of the elementary stream in addition to the coding parameters defined by the MPEG standard.
  • the feature of this embodiment is to extract information described as "action ()". Specifically, in the user data area of the sequence layer in the coding stream, information on V-phase () H-phase () is described as MPEG-ES-Editing-information ().
  • the user data of the picture layer in the coded stream includes: Time — Information about code (), Pictureorder (), Allydata (), Hioryda 0.
  • the variable length coding circuit 402 extracts these V-phase () H-phase (), T i from the stream. Information related to me-code (), Picture-order (), Ancillary-data () and History_data () is extracted and supplied to the controller 405.
  • 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 computing unit 4 11 is I-picture data
  • the data is output from the computing unit 4 1 1 and the image data input after the computing unit 4 1 1
  • In order to generate predicted image data of (P picture or B picture) it is supplied to and stored in the forward predicted image section 414 of the frame memory.
  • the forward predicted image portion of the frame memory The image data of one frame before (I picture data) stored in 4 14 is read out, and the motion compensation circuit 4 12 corresponds to the motion vector output from the variable length decoding circuit 402. Motion compensation is performed. Then, the arithmetic unit 411 adds the image data (difference data) supplied from the inverse DCT circuit 404 and outputs the result. The added data, that is, the decoded P-picture data is used to generate predicted image data of image data (B-picture or P-picture data) which is input later to the arithmetic unit 411.
  • the data is supplied to and stored in the backward prediction image section 413 of the memory. Even in the case of P-picture data, the processing in the intra-picture prediction mode is performed by the arithmetic unit 4 11 1 in the same manner as the I-picture data. It is not performed, and is stored as it is in the backward prediction image section 4 13.
  • this P picture is an image to be displayed next to the next B picture, it is not yet output to the format conversion circuit 32 at this time (as described above, the P picture input after the B picture The picture is processed and transmitted before the B picture.) If the image data supplied from the inverse DCT circuit 404 is B-picture data, the image data supplied to the forward prediction image section 4 14 of the frame memory corresponds to the prediction mode supplied from the variable-length decoding circuit 402.
  • the motion compensation circuit 412 performs motion compensation corresponding to the motion vector output from the variable length decoding circuit 402 to generate a predicted image.
  • the motion compensation circuit 4 1 2 in the arithmetic unit 4 1 1, is added to the output of the inverse DCT circuit 4 0 4.
  • 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 for the active video area, and is not provided with auxiliary data such as a blanking period.
  • the controller 405 based on the picture type, motion vector, prediction mode, DCT mode, quantization scale code, quantization table information, and other information on coding parameters supplied from the variable length decoding circuit 402, The operation of each circuit described above is controlled.
  • the controller 405 based on the information on the V-phase and the H-phase supplied from the variable length coding circuit 402 as MPEG-ES-Editing-information (), generates a baseband video generation circuit 4 Control 1 6
  • the V-phase extracted from the encoded stream is active in all pixel areas of the input video data.
  • the H-phase indicates the vertical position of the video area, and the H-phase indicates the horizontal position of the active video area in all pixel areas of the input video data. Therefore, the controller 405 transfers the decoded video data output from the buffer 415 to the vertical and horizontal positions indicated by the V-phase and the H-phase on all the pixel areas having the blanking image.
  • Control the baseband video generation circuit to map or, based on the vertical and horizontal positions indicated by the V-phase and H-phase, decode the active area decoded video data and the entire pixel area. Controls the baseband video generator to combine blanking images. As a result, 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 An c i 1 1 a r y-d a t a, L i n e extracted from the encoded stream.
  • the ID controls the multiplexing processing of the multiplexing circuit 4 17 of Anci 11 ary-data, Time code 1 or Time code 2. Specifically, as already described with reference to FIG. 7C, since the Field-ID is associated with the Anciliary-data assigned to each field, the multiplexing circuit 4 17 uses this Field 1 — Overlay the Field — An nci 1 1 ary — data associated with the ID during the blanking period of the field identified by the ID.
  • Fie 1 d ID power “2”
  • this field is the third field in the frame, and thus, in the encoded stream, Field—ancillary ID associated with ID “2”
  • Anciliary data transmitted as data is superimposed on the blanking period of the third field with FieId ID “2”.
  • Many The multiplexing circuit 4 17 further transmits the Ancillary —data when the Ancillary —data is superimposed during the blanking period.
  • the video data output from the multiplexing circuit 417 is exactly the same as the input video data supplied to the MPEG encoder in the same blanking period, in the active video area in the same position, in the same line position and in the same line position. Has ancillary data of contents.
  • the input video data originally has Unique information and ancillary data added to the input video data will not be lost.
  • the present invention can be used when a broadcast station frequently encodes and decodes video data.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Description

明 細 書 エンコーディング装置、 エンコーディング方法、 デコーディング装置、 デコーデ ィング方法、 コーデイングシステム、 コ一ディング方法 技術分野
本発明は入力ビデオデータを符号化するためェンコ一ディングシステム及ぴ符 号化ストリームをデコードするためのデコーディングシステムに関する。 背景技術
近年、 テレビジョンプログラムを制作及び放送する放送局においては、 ビデオ データを圧縮/符号化するために、 I S 0ノ I E C 1 38 1 8 として規定され てレヽる MPEG (Mo v i n g P i c t u r e E x p e r t s G r o u p ) 技術が一般的に使われるようになつてきた。 特に、 ビデオカメラなどによって 生成されたビデオデ一タを、 テープゃデイスクなどのランダムアクセス可能な記 録媒体素材に記録する場合や、 放送局内において制作されたビデオプログラムを 、 ケーブルや衛星を介して伝送する場合には、 この MP EGがデファク トスタン ダードになりつつある。
この MP EG技術は、 ピクチャ間の予測符号化方式を用いることによって、 圧 縮効率を向上させることができる符号化技術である。 具体的には、 MPEG規格 においては、 フレーム内予測ゃフレーム予測を組み合わせた複数の予測符号化を 採用しており、 その予測方式に従って、 各ピクチャは I ピクチャ ( I n t r a P i c t u r e )、 Pピクチャ ( P r e d i c t i v e
P i c t u r e )、または Bピクチャ ( B i d i r e c t i o n a l l y ρ r e d i c t ί ν e P i c t u r e ) のいずれかのピクチャタイプを使用し てエンコード処理が行われる。 I ピクチャは、 他のピクチャからの予測が行われ ず、 フレーム内符号化処理されたピクチャであり、 Pピクチャは、時間的に前(過 去) の Iピクチャ又は Pピクチャからフレーム間順方向予測符号化されたピクチ ャであり、 Bピクチャは、 時間的に前 (過去) の I ピクチャ又は Pピクチャと、 時間的に後 (未来) の I ピクチャ又は Pピクチャとの両方向のピクチャから双方 向予測符号化されたピクチャである。
図 1は、 放送局内及放送局間におけるビデオプロセッシングシステムの一例を 示している。 前述したように、 放送局内や放送局間では、 送信側システムとして 設けられた第 1のビデオプロセッサ 1から、 受信側システムとしてもうけられた 第 2のビデオプロセッサ 4へ、 ソースビデオデータを伝送するために、 送信シス テムと受信システムとの間において、 図 1のように M P E Gエンコーダ及び M P E Gデコーダを使用することが提案されている。
第 1のビデオプロセッサ 1は、 D 1フォーマッ トのコンポーネント形式のベー スバンドビデオ等のソースビデオデータを受け取り、 そのソースビデオデータに 対して、 編集処理、 特殊効果処理、 合成処理などを行うための装置である。 さら には、 このビデオプロセッサ 1は、 クローズドキャプションやテレテキストデー タ等の補助データ (アンシラリーデータ) を受け取り、 そのアンシラリーデータ をソースビデオデータのブランキング期間に付加する処理も行う。 従って、 ビデ ォプロセッサ 1から出力されるビデオデータのブランキング期間には、 アンシラ リ—データが埋め込まれて (ェンベデッド) されている。
M P E Gエンコーダ 2は、 ビデオプロセッサ 1からビデオデータを受け取り、 そのビデオデータをエンコードすることによって符号化ストリームを生成する。 この符号化ス トリームは、 エレメンタリース トリームとも称される。 誰もが知つ ているように、 テレビジョン信号というのは、 アクティブビデオエリアと呼ばれ る実際のビデオデータエリァの上下及び左右に垂直ブランキング期間及び水平ブ ランキング期間が設けられており、 上述したアンシラリーデータは、 このブラン キング区間に挿入されている。
しかしながら、 M P E G規格では、 入力ビデオデータの中において、 実際に画 素が存在するァクティブビデオェリァのみを符号化しなければレ、けないと規定さ れている。 つまり、 符号化ス トリームは、 入力ビデオデータのアクティブエリア のみを符号化処理したデータであって、 その符号化ストリームにはブランキング 期間に重畳されていたアンシラリーデ一は含まれていないのである。 言いかえる と、 M P E Gエンコーダ 2によって入力ビデオデータの符号化処理を行うことに よって、 入力ビデオデータに重畳されていたアンシラ.リーデータが無くなってし まうということである。
M P E Gデコーダ 3は、 M P E Gエンコーダから符号化ストリームを受け取り 、 この符号化ス トリームをデコードして復号化ビデオデータを生成する。 復号化 ビデオデータは、 第 2のビデオプロセッサ 4に供給される。 この M P E Gデコー ダ 3に供給された符号化ストリーム中には、 アンシラリーデータに関する情報が 含まれていないので、 当然ながら、 この複号化ビデオデータにもアンシラリーデ ータに関する情報が含まれていない。
つまり、 送出側システムから受信側システムにビデオデータを伝送する途中に おいて、 M P E Gェンコ一ド処理及び M P E Gデコ一ド処理を行った場合には、 送出側である第 1のビデオプロセッサ 1から受信側である第 2のビデオプロセッ サ 4には、 アクティブエリアに相当するビデオデータは伝送することはできるが 、 第 1のビデオプ口セッサにおいてビデオデ一タのブランキング期間に付加した アンシラリーデータは伝送されなとレ、う問題が発生する。
さらに言うと、 送出側システムから受信側システムにビデオデータを伝送する 途中において、 M P E Gェンコ一ド処理及び M P E Gデコード処理を行った場合 には、 アクティブエリアのビデオデータしか伝送されないということは、 ソース ビデオデ一タが有している固有の情報も受信側システムに伝送されないという問 題もある。 このソースビデオデータに係る固有の情報とは、 ソースビデオデータ そのものが持っている情報であって、 例えば、 全画素エリアに対するブランキン グエリアの位置又はアクティブビデオエリアの位置などであ。 具体的には、 ソ一 スビデオデータの全画素エリアの垂直方向において何ライン目からアクティブビ デォのラインが始まり、 全画素ェリァの水平方向において何ピクセル目からァク ティブビデオェリアが始まるのかを示す情報である。
次に、 図 2を参照して、 3 _ 2プルダウン処理が行われたビデオデータに関す る処理ついて説明する。 図 2は、 2 4 Hzのフレーム周波数を有するビデオデー タと 3 0 Hzのフレーム周波数を有するビデオデータの両方のビデオデータに関 する処理を行う場合の、 放送局内及び又は放送局問におけるビデオプロセッシン グシステムの一例を示している。
3— 2プルダウン処理回路 5は、 2 4 H z (毎秒 2 4コマ) のフレームレート のビデオデータを受け取って、 3 0 H z (毎秒 3 0コマ) のフレームレートのビ デォデ一タを生成するための回路である。 映画等において使用されているフィル ム素材は、 劇場用として、 2 4 H z (毎秒 2 4コマ) のフレームレートで光学フ イルム上に記録された素材であって、 2 9 . 9 7 H zのフレームレートを有する N T S C方式のテレビジョン信号とはフレームレートが全く異なっている。 従つ て、 フィルム素材をテレビジョン信号に変換するために、 2 4コマから 3 0フレ ームを生成する処理が行われている。
図 3 A及び図 3 Bを参照して、 この 3— 2プルダウン処理について説明する。 図 3 Aは、 2 4 H zのフレームレートのソースビデオデータを表し、 図 3 Bは、 3 - 2プルダウン処理によって 3 0 H zのフレームレートに変換されたビデオデ ータを表している。 図 3 A及び図 3 Bに示すように、 3— 2プルダウン処理にお いては、 フィールド F 1のトップフィールド t 1をリピートすることによってリ ピートフィールド t 1 ' を作成し、 フレーム F 3のボトムブイールド b 3をリピ 一トすることによってリピートフィ一ルド b 3 'を生成する。 つまり、 3— 2プ ルダウン処理は、 2個のフィールドを、 所定のシーケンスで 3個のフィールドに 変換することによって、 2 4 H zのビデオデ一タを 3 0 H zのビデオデ一タに変 換する処理なのである。
第 1 のビデオプロセッサ 1は、 図 1において説明したように、 3 0 H zのソー スビデオデータを受け取り、 そのソースビデオデータに対して、 編集処理、 特殊 効果処理、 合成処理などを行うための装置である。 さらには、 このビデオプロセ ッサ 1は、 クローズドキャプションやテレテキス トデータ等の補助データ (アン シラリーデータ) を受け取り、 そのアンシラリーデータをソースビデオデータの ブランキング期間に付加する処理も行う。 アンシラリ一データを付加する処理は 、 3 0 H zのフレーム周波数を有するビデオデータに対して行われる処理である ので、 3 0 H zのフレーム周波数を有するビデオデータに含まれる全フィールド 対して、 アンシラリーデータが付加される。 つまり、 トップフィールド t l、 t 2、 …… 及びボトムフィールド b 1、 b 2、 …… だけに、 アンシラリーデ一 タが付加されるのではなくて、 リピートフィ一ルド t 1 '及びリピートフィール ド b 3 'にもアンシラリ一データが付加されるのである。
逆 3— 2プルダウン処理回路 6は、 上述した 3― 2プルダウン処理により得ら れた 3 0 H zのフレームレートのビデオデータを受け取って、 2 4 H zのフレー ムレートのビデオデータを生成するための回路である。 具体的には、 逆 3— 2プ ルダウン処理回路 7は、 図 3 Cに示すように、 逆 3 _ 2プルダウン処理によって 揷入されたリピ一トフィールド t 1 '及び!) 3 'を除去するための回路である。 この、 逆 3— 2プルダウン処理回路 7は、 M P E Gエンコード処理を行う前に行 われなければいけない処理である。 なぜなら、 このリピートフィールドは、 3— 2プルダウン処理によって挿入された冗長なフィールドであって、 削除したとし ても何ら画質劣化が発生しないからである。
M P E Gエンコーダ 2は、 図 1において説明した M P E Gエンコーダ 2と同じ であって、 逆プルダウン処理回路 6から 2 4 H zのビデオデータを受け取り、 そ のビデオデータをェンコ一ドすることによって符号化ストリームを生成する。 しかしながら、 M P E G規格では、 入力ビデオデータの中において、 実際に画 素が存在するアクティブビデオェリアのみを符号化しなければいけないと規定さ れている。 つまり、 符号化ス トリームは、 入力ビデオデータのアクティブエリア のみを符号化処理したデータであって、 その符号化ストリームにはブランキング 期間に重畳されていたアンシラリーデ一は含まれていないのである。 言いかえる と、 M P E Gエンコーダ 2によって入力ビデオデータの符号化処理を行うことに よって、 入力ビデオデータに重畳されていたアンシラリーデータが無くなつてし まうということである。
MP EGデコーダ 3は、 図 1において説明した MP EGデコーダ 3と同じであ つて、 MP EGエンコーダから符号化ス トリームを受け取り、 この符号化ス トリ ームをデコードして復号化ビデオデータを生成する。 尚、 MP EG規格において は、 符号化ストリーム中には、 フレーム構造を表すデータとして、 R e p e a t — f i r s t— f i e l d 及び T o p — f i e l d — f i r s t とレヽぅ フラグが設定さてれおり、 M P E Gデコーダはこのフラグに基づいてデコード処 理を行うので、 復号化ビデオデータは 30 H zのフレームレートを有したビデオ データである。
以上の説明から理解できるように、 送信側システムのプロセッサにおいて、 3 0 H zのフレームレートを有するビデオデータにアンシラリーデータを付加した としても、 MP EGェンコ一ド処理のために必要な処理である逆 3— 2プルダウ ン処理を行うと、 30 H zのフレームレ一トを有するビデオデータからリピート フィールドが除去されてしまう。 つまり、 そのリピートフィールドに付加したァ ンシラリーデータまでも除去されてしまうということである。 従って、 送出側シ ステムから受信側システムにビデオデ一タを伝送する途中において、 逆 3— 2プ ルダウン処理を行った場合には、 その逆 3— 2プルダウン処理によってリピート フィールドそのものが除去されてしまうので、 送出側である第 1のビデオプロセ ッサ 1から受信側である第 2のビデオプロセッサ 4には、 そのリピートフィール ドに付加したアンシラリ一データに関する情報が伝送されないという問題が発生 する。 発明の開示
本発明は、 入力ビデオデータを符号化するためェンコ一ディングシステム及び 符号化ストリームをデコ一ドするためのデコ一ディングシステムに関する。 具体 的には、 MP EGェンコ一ディング処理及び MP EGデコーディング処理を繰り 返したとしても、 ビデオデータに付加されているアンシラリーデ一タやビデオデ ータ固有の情報が無くならないように、 符号化ストリ一ムと一緒に伝送するため のシステム及び方法を提供するものである。
M P E Gエンコーダは、 その入力ビデオデータに付加されているのアンシラリ 一データを抽出し、抽出したアンシラリーデータを符号化ス トリーム中に A n— c i l i a r y— d a t a ( ) として挿入することによって、 符号化ストリ ームと一緒にこのアンシラリーデータを伝送する。 M P E Gデコーダは、 符号 化ストリームからアンシラリーデータを抽出し、 M P E Gデコーディング処理に よって生成されたベースバンドビデオデータに抽出したアンシラリーデータを付 加する。
入力ビデオデータをェンコ一ドするためのェンコ一ディング装置において、 入 力ビデオデータから、 ビデオデ一タのブランキング期間に付加されているアンシ ラリ—データを抽出し、 入力ビデオデータをエンコードし、 符号化ス トリームを 生成し、 符号化ス トリーム中に上記アンシラリーデータが揷入されるように、 上 記符号化手段をコントロールする。
入力ビデオデータをェンコ一ドすることによって生成された符号化ストリーム をデコードするためのデコーディング装置において、 符号化ス 卜リームから、 符 号化ストリーム中に含まれていアンシラリーデータを抽出し、 符号化ストリーム をデコードし、 複号化ビデオデータを生成し、 複号化ビデオデータのブランキン グ期間に、 アンシラリーデータを多重化する。
入力ビデオデータを符号化することによって生成された符号化ストリームをデ コ一ドするためのデコーディング装置において、 符号化ストリームのシンタック スを解析することによって、 符号化ストリーム中に含まれていアンシラリーデ一 タを得、 符号化ス ト リームをデコードし、 複号化ビデオデータを生成し、 入力ビ デォデータと符号化ビデオデータとが同じアンシラリーデ一タを有するように、 復号化ビデオデータにアンシラリ一データを多重化する。
入力ビデオデータを符号化することによって生成された符号化ストリームをデ コードするためのデコーディング装置において、 符号化ス トリ一ムのピクチヤエ リアに含まれていアンシラリ一データを、 符号化ストリームから得、 符号化ス ト リームをデコードし、 復号化ビデオデータを生成し、 復号化ビデオデータとアン シラリ一デ一タとを多重化することによって、 入力ビデオデータを同じデータを 生成する。
入力ビデオデ一タを符号化するェンコ一ディング手段と、 符号化手段によって 符号化された符号化ストリームを受け取って、 符号化ストリームを復号化し復号 化ビデオデータを生成するデコーディング手段とを備えたコーディングシステム において、 エンコーディング手段は、 符号化ス トリームを生成するために上記入 力ビデオデータを符号化する手段と、 入力ビデオデータに付与されているアンシ ラリーデータを符号化ストリーム中に挿入する手段とを備え、 デコーディング手 段は、 復号化ビデオデータを生成するために符号化ストリームを復号化する手段 と、 符号化ス トリームと共に伝送されてきたアンシラリーデータを、 複号化ビデ ォデータに多重化する手段とを備える。 図面の簡単な説明
図 1は、 従来の M P E Gエンコーダ及び M P E Gデコーダを有するシステムの 構成を示すプロック図である。
図 2は、 3— 2プルダウン処理回路を有するェンコ一ドシステムの構成を示す ブロック図である。
図 3は、 3— 2プルダウン処理の説明に供する略線図である。
図 4は本発明によるェンコ一ド デコードシステムの構成を示すブロック図で ある。
図 5は、 エレメンタリス トリーム及びトランスポ一トス トリームを示す略線図 である。
図 6は、 M P E Gエンコーダの構成を示すブロック図である。
図 7は、 3— 2プルダウン処理の説明に供する略線図である。 図 8は、 ビデオデータの全画素ェリァ及びァクティブビデオェリァを示す略線 図である。
図 9は、 各フレームの構造を示す略線図である。
図 1 0は、 v i d e o s e q u e n c eのシンタックスを示す略線図である 図 1 1は、 s e q u e n c e h e a d e rのシンタックスを示す略線図であ る。
図 1 2は、 s e q u e n c e e x t e n t i o nのシンタックスを示す略線 図である。
図 1 3は、 e x t e n s i o n a n d u s e r d a t aのシンタックス を示す略線図である。
図 1 4は、 u s e r d a t aのシンタックスを示す略線図である。
図 1 5は、 d a t a I Dのシンタックスを示す略線図である。
図 1 6は、 V_P h a s eのシンタックスを示す略線図である。
図 1 7は、 H— P h a s eのシンタックスを示す略線図である。
図 1 8は、 t i m e c o d eのシンタックスを示す略線図である。
図 1 9は、 t i m e c o d eのシンタックスを示す略線図である。
図 20は、 p i c t u r e o r d e rのシンタッタスを示す略線図である。 図 2 1は、 a n c i l l a r y d a t aのシンタックスを示す略線図である 図 2 2 ίま、 g r o u p o f p i c t u r e h e a d e rのシンタックス を示す略線図である。
図 23は、 p i c t u r e h e a d e rのシンタックスを示す略線図である 図 24は、 p i c t u r e c e r d i n g e x t e n s i o nのシンタツ クスを示す略線図である。
図 2 5は、 p i c t u r e d a t aのシンタックスを示す略線図である。 図 26は、 シーケンスレイヤ、 GOPレイヤ、 ピクチャレイヤの各データを示 す略線図である。
図 27は、 エンコーダ側の多重化部の構成を示すブロック図である。
図 28は、 ソースビデオデータから P E Sバケツ ト及び TSバケツトを生成す る方法の説明に供する略線図である。
図 29は、 P E Sヘッダのデータ構成を示す略線図である。
図 30は、 各ピクチャの配列を示す略線図である。
図 3 1は、 MP E Gデコーダの構成を示すブロック図である。 発明を実施するための最良の形態
図 4は、 メイン放送局 14 1及び地方放送局 1 7 1からなる放送システムを表 している図である。
メイン放送局 1 4 1には、 複数のエディティング プロセッシングスタジオ 1 4 5A〜 1 45 D、 複数の MP EGエンコーダ 1 42A~1 4 2D と、 複数の M P EGデコーダ 1 44 A〜 144 Dと、 少なくとも 1つのマルチプレクサ 1 6 2 Aと少なく とも 1つのデマルチプセクサ 1 6 1 Aとを備えている。 また、 この放 送局内 14 1には、 SMPTE 30 5Mとして定義されている S DT I— C P ( S e r i a l D a t a T r a n s f e r I n t e r f a c e - C o n t e n t P a c k a g e) ネッ トワーク 1 50を備え、 各 M P E Gェン コーダ、 各 MP EGデコ一ダ、 マルチプレクサ 1 62 A及びデマルチプレクサ 1 6 1 Aが、 SDT I— C Pネッ トワーク 1 50を介してエレメンタリーストリー ムを送受信するすることができる。 S DT I— C Pは、 MPEGのエレメンタリ ーストリームを伝送するために提案された通信フォーマツ 卜であって、 SMPT E 305Mとして定義されている。 尚、 この S DT I _C Pネッ トワーク 1 50 上に転送されたエレメンタリーストリームは、 E S— o v e r— SDT I— C P と表現されている。
エディティングノプロセッシングスタジオ 1 4 5 A〜 1 4 5 Dは、 ビデオサー バー、 ビデオ編集機、 特殊効果装置及びビデオスィッチャなどを備えているスタ ジォである。 MP EGデコーダから復号化されたベ一バンドのビデオデータを受 け取り、 そのベースバンドのビデオデータに対して、 編集や画像処理を行ったあ と、 編集ビデオデータ又は画像処理ビデオデータを、 MP EGエンコーダに出力 する。 すなわち、 エディティングノプロセッシングスタジオ 1 4 5 A〜l 45 D は、 符号化ス トリームのス トリームプロセッシングではなく、 ベースバンドビデ ォ信号の編集や画像処理を行うためのプロセッシングユニッ トでる。
MP E Gエンコーダ 1 42 A〜 1 4 2 Dは、 エディティング /プロセッシング スタジオ 1 45 A〜 1 45 Dからべ一スバンドの入力ビデオ信号を受け取り、 そ の入力ビデオデータを、 前述した MP E G規格に従ってエンコードし、 エレメン タリーストリーム (E S) を生成するための装置である。 MPEGエンコーダに よって生成されたエレメンタリース トリ一ムは、 S DT I— C Pネッ トワーク 1 50を介して、 MP E Gデコーダ 1 44A〜1 44 Dのうちのいずれかの MP E Gデコーダ又はマルチプレクサ 1 6 2 Aに供給される。
MPEGデコーダ 1 44 A〜 1 44Dは、 MPEGエンコーダ 142A〜 1 4 2 D又はデマルチプレクサ 1 6 1 Aから、 S DT I— C Pネッ トワーク 1 50を 介して供給されたエレメンタリース トリームを受け取り、 MP EG規格に基づい てデコード処理を行う。 マルチプレクサ 1 6 2 Aは、 メイン放送局内 1 4 1に おいて制作された複数のビデオプログラムを地方局 1 7 1又は各家庭に配信する ために、 多重化することによって一つのトランスポートストリームを生成するた めの回路である。 具体的には、 S DT I— C Pネットワーク 1 50を介して複数 のビデオプログラムに対応する複数のエレメンタリース トリーム受けとり、 各ェ レメンタリーストリームをバケツ ト化することによってバケツタイズドエレメン タリーストリームを生成し、 そのバケツタイズドエレメンタリーストリームから トランスポートストリームバケツ トを生成する。 複数のビデオプログラムから生 成されたトランスポ一トス トリームバケツ トを多重化することによって、 マルチ プレクサ 1 62 Aは多重化されたトランスポートス トリームを生成する。 尚、 こ のマルチプレクサ 1 62 Aの構成及び処理については、 後述する。
複数のビデオプログラムの伝送先が地方局 1 7 1の場合には、 マルチプレクサ 1 62 Aによって生成された多重化トランスポートストリームは、 地方局 1 7 1 のデマルチプレクサ 1 6 1 Bに ATMや衛星回線などのネットヮ一クを介して供 給される。 地方局 1 7 1は、 規模こそメイン局 1 4 1と異なるが、 全く同じシス テム構成を有しているので、 詳細については説明を省略する。
複数のビデオプログラムの伝送先が地方局 1 7 1の場合には、 マルチプレクサ 1 62 Aによって生成された多重化トランスポートス トリームは、 各家庭のセッ ト トップボックス内に設けられている MPEGデコーダ 1 70 Aに、 ATMゃ衛 星回線などのネッ トワークを介して供給され、 デコードされたビデオデータが T Vセッ トに供給される。
図 5は、 放送局内において SDT I— CPネッ トワークを介して伝送されるェ レメンタリ一ス トリームと、 公衆ネッ トワークを介しで伝送されるトランスポー トストリームとの違いを表している。
放送局内においては、 エレメンタリース トリームは、 SDT I — CPネットヮ ークを使用して伝送される。 この S DT I _C Pネッ トワーク 1 50は、 SMP TE 259Mによって規格化されている S D I (S e r i a l D a t a I n t e r f a c e ) をベースとした 27 OMb p sの伝送速度を可能にして いる通信フォーマッ トであって、 MP E G方式のエレメンタリス トリーム (E S ) をそのまま伝送することが可能であり、 スタジオ内のような閉じたネットヮー クに適している。 具体的には、 図 5 Aに示すように、 ビデオデータのフレーム単 位で、 ビデオデータ 「V」 とオーディオデータ 「A」 がパッキングされており、 フレームシンク (点線) により区切られたフレーム境界で、 簡単に編集を行うこ とができる。
放送局間の伝送や公衆ネッ トワークを使用する際には、 トランスポートストリ —ムの形態でビデオデータが伝送される。 トランスポートス ト リームは、 伝送容 量の少ない公衆ネッ トワークにおいてもデータ転送を可能にするために、 図 5 B に示すように、 ビデオデータやオーディオなどのずベてのコンテンツは、 1 8 8 バイ トの単位にパッキングされて伝送される。 同様に、 「V」はビデオデータのト ランスポートス トリームバケツ トと示し、 「A」はオーディオデータのトランスポ —トストリームパケッ トを示し、 空白は空きデータのバケツ トを示している。 次に、 図 6を参照して、 M P E Gエンコーダ 1 4 2 A〜1 4 2 Dについて説明 する。 まず最初に、 この M P E Gエンコーダに供給される入力ビデオデータに ついて補足する。 この実施例においては、 この入力ビデオデータは、 2 4 H zの フレームレ一トを有していたソースビデオデータに対して、 3 - 2プルダウン処 理を行うことによって生成された 3 0 H Zのビデオデータである。 具体的には、
2 4 Hzのフレームレートを有したオリジナ /レのソ一スビデオデータは、 各フレ ーム F l、 F 2、 ……がそれぞれ 2つのフィールド (トップフィ一ルド t 1、 t 2、 ……及びボトムフィールド b 1、 b 2、 …… ) から構成されいるビデオデー タであって、 3— 2プルダウン処理では、 図 7 Aに示すように、 トップフィール ドファーストである第 1のフレーム F 1ではトップフィールド t 1を繰り返して リピートフィールド t 1 'を生成することにより 3フィールドで 1つのフレーム を構成し、 また、 ボトムフィールドファース トである第 3のフレーム F 3ではボ トムフィールド b 3を繰り返してリピートフィ一ルド b 3 'を生成する。 このよ うにして、 3 _ 2プルダウン処理では、 3フィールド構成のフレームと 2フィ一 ルド構成のフレームを交互に繰り返すことにより、 フレームレートが 2 4 H zの ソースビデオデータカ、ら、 図 7 Aのようなフレームレート力 S 3 O H zのビデオデ ータを生成することができる。
尚、 この実施例では、 入力ビデオデータが、 3— 2プルダウン処理によって生 成された入力ビデオデータの例を示しているが、 本発明は、 入力ビデオデータが
3— 2プルダウンされたビデオデータの実施例に限られるものではなく、 オリジ ナ ソースビデオが 3 0 Η ζのフレームレートを有するビデオデータであって、 3— 2プルダウン処理が施されていないビデオデータの場合であっても問題無く 適用できるものである。 図 6に示された MP EGエンコーダは、 補助データ分離回路 1 0 1、 フィール ドカウンタ 1 0 2、 逆 3— 2プノレダウン回路 1 03、 ェンコ一ディングコント口 一ラー 1 04、 動きべク トル検出回路 1 05、 スィツチ回路 1 1 1、 DCT回路 1 1 2、 量子化回路 1 1 3、 逆量子化回路 1 1 4、 逆 DCT回路 1 1 5、 加算回 路 1 1 6、 メモリ 1 1 7及び 1 1 8、 動き捕償回路 1.1 9、 演算回路 1 20、 1 2 1、 1 22、 可変長符号化回路 1 25及び送信バッファ 1 26を備えている。 補助データ分離回路 1 0 1は、 入力ビデオデータのブランキング期間から、 ァ ンシラリーデータを抽出する回路である。 具体的には、 図 8に示したように、 入 力ビデオデ一タの垂直ブランキング期間に挿入されているアンシラリーデ一タと
、 そのアンシラリ一データが揷入されているライン番号を抽出する。 このアンシ ラリーデータとしては、 テレテキストデータ、 クローズドキャプションデータ、
SMPTE RP 1 64において定義されている V I TC (V e r t i c a l I n t e r v a l T i me C o d e ) や R P 1 96において定義されている LTC (L i n e a r T i me C o d e) 等であるが、 これのみに限定する 必要はない。 本実施例においては、 抽出したアンシラリーデータに関する情報は 、 An c i 1 l a r y— d a t aとしてコントローラ 1 04に供給されるととも に、 ライン番号に関する情報は、 L i n e— n u mb e rとしてコントローラ 1 04に供給される。 また、 V I TCに関する情報は、 T i me— c o d e— 1 と してコントローラ 1 04に供給され、 LTCに関する情報は、 T i me— c o d e— 2としてコントローラ 1 04に供給される。
また、 補助データ分離回路 1 0 1は、 入力ビデオデータが有する固有情報を入 力ビデオデータから抽出する。 この固有情報とは、 例えば、 図 8に示したように 、 入力ビデオデータの全画素ェリア AR 1に対するアクティブビデオェリア AR 2が存在する位置を示すデータであり、 具体的には、 アクティブビデオアリアの 垂直方向の開始位置を示すライン数及び水平方向の開始位置を示すサンプル数な どである。 本実施例においては、 アクティブビデオアリアの垂直方向の位置に関 する情報は、 V— p h a s e アクティブビデオアリアの水平方向の位置に関す る情報は、 H— p h a s e としてコントローラ 1 04に供給される。 その他の 固有情報の例としては、 入力ビデオデータに付与されたソース名称、 撮影場所、 撮影時間などである。
補助データ分離部 1 0 1から出力された入力ビデオデータは、 続くフィールド カウンタ 1 0 2に供給される。 フィールドカウンタ 1.0 2は、 入力ビデオデータ の各フレームを構成するフィールドを各フレームごとにカウントする回路である 。 フィールドカウンタ 1 0 2は、 そのフレーム毎のカウント情報を、 F i e l d — I Dとしてコントローラ 1 04に供給する。 たとえは、 図 7 Aに示したような 入力ビデオデータがこのフィールドカウンタ 1 0 2に供給された場合には、 フレ ーム F 1には 3つのフィールドが存在するので、 カウント情報として、 「0」 、 「 1」 及び 「2」 の F i e l d— I D が出力され、 フレーム F 2には 2つ のフィールドが存在するので、 カウント情報として、 「0」 及び 「 1」 の F i e 1 d_I Dが出力される。
さらに、 このフィ一ルドカウンタ 1 0 2は、 入力ビデオデータのフィ一ルド をカウン卜することによってカウントアップされる 2つのカウンタを備え、 この カウンタによるカウント値に関する情報を PTS— c o u n t e r及び DTS— c o u n t e rとしてコントローラ 1 04に出力する。 P E Sヘッダを生成する ときに、 PTS— c o u n t e r はプレゼンテ一ションタイムスタンプ (PT S) を生成するための情報として使用され、 DT S— c o u n t e rはデコーデ イングタイムスタンプ (DTS) を生成するための情報として使用される。
この PTS— c o u n t e r及び DT S— c o u n t e rについて、 図 9を 参照して詳細に説明する。 図 9は、 入力ビデオデータの各フレームのフレーム構 造と、 各フレームにおける PT S— c o u n t e r及び DT S— c o u n t 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 l d— f i r s tフラグについて 補足しておく。 R e p e a t— f i r s t— f i e l dのフラグの" 1 " は、 M P EGデコード時に、 リピートフィールドを作成する必要があることを意味し、 R e p e a t— f i r s t一 f i e l dのフラグの" 0" は、 MP EGデコード 時に、 リピートフィールドを作成する必要がないことを意味する。 T o p— f i e 1 d— f i r s tのフラグは、 フレームを構成するフィールドのうち、 最初の フィールドがトップフィ一ルドであるのか、 またはボトムフィールドであるのか を表している。 T o p— f i e 1 d_ f i r s tフラ.グの" 1 " は、 トップフィ —ルドがボトムブイールドょり時間的に早いフレーム構造であることを表してお り、 T o p— f i e l d— f i r s tフラグの" 0 " は、 ボトムフィールドがト ップフィールドより時間的に早いフレーム構造であることを表している。 図 9 A は、 図 7 Aにおいて説明した入力ビデオデータに関するフレーム構造について説 明するための図である。 具体的には、 最初のフレーム F 1をデコードする際に、 単純にトップフィールドとボトムフィールドからなるフレームを生成するのでは なく、 トップフィールドをコピーしてリピートフィールドを作成することで、 3 フィールドからなるフレームを生成する必要がある。 従って、 対応する R e p e a t— f i r s t _ f i e I dのフラグは" 1 " となり、 T o 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 l d のフラグは" 0" とされ 、 ボトムフィールドがトップフィ一ルドょり時間的に早いフレームであるため、 T o p— f i e l 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 l dのブラグは" 0 " とされ、 T o p „f i e 1 d_ f i r s tのフラグは 1 とされる。 さて、 上述したように、 P T S c o u n t e rは P T Sの基になるタイムスタンプ情報であるので、 入力ビ デォデ一タのフレーム順と一致している情報でなければレ、けない。 具体的には、 この PTS— c o u n t e rは、 0から 1 27まで増加した後、 再び 0に戻る力 ゥント動作を行うカウンタ一によって生成される値である。 従って、 カウンタ P TS— c o u n t e rの値は、 図 9 Bに示すように変化する。 具体的に説明する と、 入力ビデオデータにおいて、 最初のフレーム F 1,は I ピクチャであり、 最初 に表示しなければいけないピクチャであるので、 PTS— c o u n t e rの値は" 0" である。 2番目のフレーム F 2の PTS— c o u n t e rの値は、 フレーム F 1の PTS— c o u n t e rの値,, 0" に、 フレーム F 1に含まれているフィ 一ルド数 " 3 " を加算した値" 3" (=0 + 3) となる。 3番目のフレーム F 3の PTS— c o u n t e rのィ直は、 フレーム F 2の PTS— c o u n t e rの値" 3" に、 フレーム F 2に含まれているフィールド数 "2" を加算した値" 5" (= 3 + 2) となる。 4番目のフレーム F 4の P T S 一 c o u n t e rの ί直は、 フ レーム F 3の PTS— c o u n t e rの値" 5" に、 フレーム F 2に含まれてい るフィールド数 "3,, を加算した値" 8" (= 5 + 3) となる。 フレーム F 5以降 の PT S— c o u n t e rの値も同様に算出される。 さらに、 DTS— c o u n t e rは、 D T Sの基になるタイムスタンプ情報であるので、 入力ビデオデー タのフレーム順では無くて、 符号化ストリ一ム中のピクチャ順と一致する情報で なければいけない。 図 9 Cを参照して、 具体的に説明すると、 最初のフレーム F 1は、 I ピクチャであるので、 フレーム F 1が表示される表示タイミングより フレーム F 1がデコードされるタイミングが 1フレーム分だけ早くなくてはいけ ない。 すなわち、 フレーム F 1の前のフレ一ム F 0は 2つのフィールドから構成 されているため、 DTS— c o u n t e rの値は、表示タイムスタンプ P T S— c o u n t e r = 0を基準時間としたとき、 基準時間 " 0 " より " 3 " フィール ド分だけ前の値" 1 25" となる。 尚、 DTS— c o u n t e rは 27 (= 1 2 8) のモジュロで表されるため、 その値は 0から 1 27の間の値を循環する。 フレーム F 1の次に符号化されるフレーム F 4の DTS— c o u n t e rの値は 、 フレーム F 1の DTS— c o u n t e rの ί直 " 1 25 " に、 フレーム F 1のフ ィールド数 "3" を加えた値 "0" (= 1 28 = 1 25 + 3) となる。 次に符号化 されるフレーム F 2は Bピクチヤであるため、 DTS— c o u n t e rの値は、 PTS— c o u n t e rと同じ値になり、 その値は" 3" となる。 同様に、 次に 符号化されるフレーム F 3も Bピクチヤであるので、 DTS— c o u n t e rの 値は、 PTS— c o u n t e rの値と同一とされ、 そ,の値は" 5" とされる。 以 下、 フレーム F 7以降の DTS— c o u n t e rの値も、 同様に算出されるので 、 ここでは、 その説明を省略する。 フィールドカウンター 1 02は、 上述した決 まりに従って、 PTS— c o u n t e r及び DT S— c o u n t e rを生成し、 コントロ一ラ 1 04に供給する。
逆 3— 2プルダウン回路 1 03は、 フィールドカウンタ 1 0 2から出力され たビデオデータを受け取り、 逆 3— 2プルダウン処理を行う。 この逆 3— 2プル ダウン処理回路 1 03は、 図 7 Aに示すような 3— 2プルダウン処理により得ら れた 30H zのフレームレ一トのビデオデータを受け取って、 24 H zのフレー ムレートのビデオデータを生成するための回路である。 具体的には、 逆 3— 2プ ルダウン処理回路 7は、 図 7 Bに示すように、 3— 2プルダウン処理によって挿 入されたリピートフィールド t 1 '及び b 3 'を除去することによって、 30H zのフレームレー卜のビデ才データを、 24 H zのフレームレートのビデオデー タに変換する。 逆プルダウン処理回路 1 03は、 リピートフィールドを除去する 際に、 供給されたビデオデータのフレーム構造を解析し、 所定間隔で出現するリ ピ一トフィールドであると認定したフィールドのみを除去するようにしている。 よって、 逆プルダウン処理回路 1 0 3は、 ビデオデータのフレーム構造を解析し たときに、 フレーム構造を表す情報として、 Re p e a t— f i r s t— f i e I dと To p— f i e l d— f i r s tのフラグを生成し、 コントローラ 1 04 に供給する。
動きべク トル検出回路 1 05は、 逆 3— 2プルダウン処理回路 1 03から出 力されたビデオデータを、 マクロブロック単位で受け取り、 予め設定されている 所定のシーケンスに従って、 各フレ一ムの画像データを、 I ピクチャ、 Pピクチ ャ、 又は Bピクチャとして処理する。 シーケンシャルに入力される各フレームの 画像を、 I、 P又は Bのいずれのピクチャとして処理するかは、 オペレータによ つて指定される G O P構造に基づいて予め定められている。 検出された動きべク トル 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がから 供給されている動きべク トル MVに基づいて動き補償が行われる。 すなわち、 動 き補償回路 1 1 9は、 前方予測モードの設定が指令されたとき、 前方予測画像用 のメモリ 1 1 8の読出しァドレスを、 動きべク トル検出回路 1 0 5力 現在出力 しているマクロブロックの位置に対応する位置から動きべク トルに対応する分だ けずらしてデータを読み出し、 予測画像データを生成する。 動き補償回路 1 1 9 より出力された予測画像データは、 演算器 1 2 0に供給される。 演算器 1 2 0は 、 参照画像のマクロブロックのデータから、 動き補償回路 1 1 9より供給された 、 このマクロブロックに対応する予測画像データを減算し、 その差分 (予測誤差 ) を出力する。 この差分データは、 0 0丁回路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は、 I D C T回路 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より供給された予測画像データを減算し、 その差分を出力する 。 この差分データは、 0じ丁回路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は、 両方 向予測モードの設定が指定されたとき、 前方予測画像部 1 1 8と後方予測画像部 1 1 7の読み出しァドレスを、 動きべク トル検出回路 1 05がいま出力している マクロブロックの位置に対応する位置から動きべク トル (この場合の動きべク ト ルは、 前方予測画像用と後方予測画像用の 2つとなる) に対応する分だけずらし てデータを読み出し、 予測画像データを生成する。 動き補償回路 1 1 9より出力 された予測画像データは、 演算器 1 22に供給される。 演算器 1 22は、 動きべ ク トル検出回路 1 0 5より供給された参照画像のマクロブロックのデータから、 動き補償回路 1 1 9より供給された予測画像データの平均値を減算し、 その差分 を出力する。 この差分データは、 0じ丁回路1 1 2、 量子化回路 1 1 3、 可変長 符号化回路 1 25及び送信バッファ 1 26を介して伝送路に伝送される。 Bピ チクャの画像は、 他の画像の予測画像とされることがないため、 フレームメモリ 1 1 7、 1 1 8には記憶されない。 コントローラ 1 04は、 上述した予測モード に関する処理、 DCTモ一ドに関する処理及び量子化に関する処理に携わる全て の回路をコントロー/レする。 さらには、 コントローラ 1 04は、 各ピクチャのェ ンコーディング処理において発生した、 動きべク トル、 ピクチャタイプ、 予測モ ード、 DCTモード、 量子化ステップなどの全てのコーディングパラメータを、 可変長符号化回路 1 25に供給する。
また、 コントローラ 1 04は、 補助データ分離回路 1 0 1から、 V— p h a s e、 H— p h a s e、 T i me― c o d e l、 r i m e― c o d e 2、 A n c i l i a r y_d a t a及び L i n e— n umb e rに関する情報を受け取ると共 に、 フィーノレドカウンタ 1 02力、ら DTS一 c o u n t e r PTS— c o u n t e r及び F i e 1 d_I Dに関する情報を受け取る。 コントロ一ラ 1 04は、 受 I丁取った、 V— p h a s e、 H— p h a s e、 i me― c o d e l、 T i me
.c o d e 2、 A n c i 1 1 a r y― d a t a Λ L i n e一 n umb e r、 D T S— c o u n t e r PTS— c o u n t e r及び F i e 1 d— I Dに関する情報 を、 MP E G一 E S一 e d i t i n g一 i n f o r ma t i o n ( i ) として可 変長符号化回路 1 25に供給する。
可変長符号化回路 1 25は、 量子化回路 1 1 3から量子化された DCT係数 及びコントローラ i o 4から供給されたコーディングパラメータを可変長符号化 すると共に、 MP E G規格において定められているエレメンタリーストリームの シンタックスに従って、 符号化ス ト リームを生成する。
実施例の特徴ある点として、 さらに、 可変長符号化回路 1 2 5は、 コント口一 ラ 1 ◦ 4力、ら MP E G— E S一 e d i t i n g一 i n. f o r ma t i o n ( i ) として供給された情報を可変長符号化し、 符号化ストリーム中に挿入する処理を 行う。 符号化ス トリ一ムのシンタックス及び MP EG— E S— e d i t i n g — i n f o r ma t i o n ( i ) のシンタックスについては、 詳しくは後述する 次に、 図 1 0乃至図 26を参照してビットストリームのシンタックスについて 説明する。 尚、 図 26は、 図 1 0から図 25において説明している詳細なシンタ ックスを、 より理解しやすい形式で MP EG符号化ストリームのデータ構造を示 している説明図である。 図 1 0は、 MP EGのビデオス トリームのシンタック スを表わした図である。 MP EGエンコーダ 4 2は、 この図 1 0に示されたシン タックスに従った符号化エレメンタリス トリームを生成する。 以下に説明するシ ンタックスにおいて、 関数や条件文は細活字で表わされ、 データエレメントは、 太活字で表されている。 データ項目は、 その名称、 ビット長およびそのタイプ · 伝送順序を示す二一モニック (Mn e mo n i c ) で記述されている。 まず、 この図 1 0に示されているシンタックスにおいて使用されている関数について説 明する。 実際には、 この図 1 0に示されているシンタックスは、 MPEGデコー ダ 44側において、 伝送されてきた符号化ビッ トストリームから所定の意味のあ るデータエレメントを抽出するために使用されるシンタックスである。 MPEG エンコーダ 42側において使用されるシンタックスは、 図 1 0に示されたシンタ ックスから if文や wh i 1 e文等の条件文を省略したシンタックスである。 v i d e o一 s e q u e n c e () におレヽて琅初に記述されてレヽる n e x t一 s t a r t_c o d e () は、 ビットストリ一ム中に記述されているスタートコ一 ドを探すための関数である。 この図 1 0に示されたシンタックスに従って生成さ れた符号化ストリームには、 まず最初に、 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 q u e n c e一 h e a d e r () は、 MPEG ビッ トス トリームのシーケンスレイヤのヘッダデータを定義するための関数であ つて、 s e q u e n c e― e x t e n s i o n () は、 MPEGビットス 卜リー ムのシーケンスレイヤの拡張データを定義するための関数である。 s e q u e n c e— e x t e n s i o n () の次に酉 S置されている d o { } w h i 1 e構 文は、 wh i 1 e文によって定義されている条件が真である間、 d o文の { } 内の関数に基いて記述されたデータエレメントが符号化デ一タストリーム中に記 述されていることを示す構文である。 この wh i 1 e文に使用されている n e x t b i t s () は、 ビッ トストリ一ム中に記述されているビッ ト又はビット列と 、 参照されるデータエレメントとを比較するための関数である。 この図 1 0に示 されたシンタックスの例では、 n e X t b i t s () は、 ビッ トストリーム中の ビット列とビデオシーケンスの終わりを示す s e q u e n c e— e n d— c o d eとを比較し、 ビッ トストリーム中のビット歹 IJと s e q u e n c e _ e n d_c o d eとが一致しないときに、 この wh i 1 e文の条件が真となる。 従って、 s e q u e n c e― e x t e n s i o n 〇 の次に目 置 れてレヽる d o { } w h i 1 e構文は、 ビッ トストリーム中に、 ビデオシーケンスの終わりを示す s e q u e n c e_e n d_c o d eが現れない間、 d o文中の関数によって定義さ れたデータエレメントが符号化ビッ トストリーム中に記述されていることを示し て ヽる。 符号ィ匕ビッ トストリームにおいて、 s e q u e n c e— e x t e n s i o n () によって定義された各データエレメン卜の次には、 e x t e n s i o n — a n d— u s e r— d a t a (0) によって定義されたデータエレメン卜が記 述されてレヽる。 この e x t e n s i o n 一 a n d 一 u s e r一 d a t a ( 0 ) は、 MPEGビッ トストリームのシーケンスレイヤにおける拡張データとユー ザデータを定義するための関数である。 この e x t e n s i o n_a n d_u s e r d a t a (0) の次に配置されている d o { } wh i 1 e構文は、 w h i 1 e文によって定義されている条件が真である間、 d o文の { } 内の関 数に基いて記述されたデータエレメントが、 ビッ トストリームに記述されている ことを示す関数である。 この wh i 1 e文において使用されている n e x t b i t s () は、 ビッ トス トリーム中に現れるビッ ト又はビッ ト列と、 p i c t u r e― s t a r t― c o d e又は g r o u p― s t a r t― c o d eとの一致を判 断するための関数であるって、 ビッ トストリーム中に現れるビッ ト又はビット列 と、 p i c t u r e一 s t a r t一 c o d e又は g r o u p一 s t a r t一 c o d eとが一致する場合には、 wh i 1 e文によって定義された条件が真となる。 よって、 この d o { } wh i 1 e構文は、 符号化ビッ トストリーム中において 、 p i c t u r e s t a r t c o d e又は g r o u p― s t a r t― c o d eが現れた場合には、 そのスタートコードの次に、 d o文中の関数によって定義 されたデータエレメントのコ一ドが記述されていることを示している。 この d o 文の最初に記述されている i f 文は、 符号化ビッ トストリ一ム中に g r o u p _s t a r t_c o d eが現れた場合、 という条件を示しいる。 この i f 文によ る条件は真である場合には、 符号化ビットス トリーム中には、 この g r o u p— s t a r t —c o d eの次に g r o u p― o f 一 p i c t u r e― h e a d e r
0 および e x t e n s i o n一 a n d一 u s e r一 d a t a ( 1) によって疋 義されているデータエレメン卜が順に記述されている。 この g r o u p_o f _ p i c t u r e_h e a d e r () は、 MP EG符号化ビッ トス トリームの GO Pレイヤのヘッダデータを定義するための関数であって、 e x t e n s i o n— a n d_u s e r _d a t a (1) は、 MPEG符号化ビッ トス トリームの GO Pレイヤの拡張データおよびユーザデータを定義するための関数である。 さらに 、 この符号化ビッ トス トリームにおいて、 g r o u p_o f — p i c t u r e h e a d e r () および e x t e n s i o n― a n d一 u s e r― d a t a ( 1 ) によって定義されているデ一タエレメン卜の次には、 p i c t u r e— h e a d e r () と p i c t u r e一 c o d i n g― e x t e n s i o n () によって 定義されたデータエレメントが記述されている。 もちろん、 先に説明した i ί文 の条件が真とならない場合には、 g r ο u p_o f — p i c t u r e— h e a d e r () および e x t e n s i o n― a n d― u s e r― d a t a (1) によつ て定義されているデータエレメントは記述されていないので、 e X t e n s i o n_a n d_u s e r _d a t a (0) によって定義されているデータエレメン 卜の次に、 p i c t u r e― h e a d e r ()、 p i c 't u r e― c o d i n g一 e x t e n s i o n () および e x t e n s 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 () は、 MP EG符号化ビッ トストリームのピクチャレイ ャのヘッダデータを定義するための関数であって、 p i c t u r e— c o d i n g— e x t e n s i o n () は、 MP EG符号化ビッ トストリ一ムのピクチャレ ィャの第 1の拡張データを定義するための関数である。 e X t e n s i o n_a n d —u s e r— d a t a (2) は、 MP EG符号化ビットストリームのピク チヤレイヤの拡張データおよびュ一ザデータを定義するための関数である。 この e x t e n s i o n一 a n d― u s e r一 d a t a (2) によって疋義^れるュ 一ザデータは、 ピクチャレイヤに記述されているデータであって、 各ピクチャ毎 に記述することのできるデータである。 符号化ビットストリームにおいて、 ピク チヤレイヤのユーザデータの次には、 ρ i c t u r e— d a t a () によって定 義されるデータエレメントが記述されている。 この p i c t u r e— d a t a () は、 スライスレイヤおよびマクロブロックレイヤに関するデータエレメントを記 述するための関数である。 この p i c t u r e_d a t a () の次に記述されて いる wh i 1 e文は、 この wh i 1 e文によって定義されている条件が真である 間、 次の i f 文の条件判断を行うための関数である。 この wh i 1 e文において 使用されている n e X t b i t s () は、 符号化ビッ トストリーム中に、 p i c t u r e― s t a r t― c o d e又は g r o u p― s t a r t― c o d e T 記述 されているか否かを判断するための関数であって、 ビッ トストリーム中に p i c t u r e― s t a r t — c o d e又は g r o u p一 s t a r t一 c o a e力 gd¾ されている場合には、 この wh i 1 e 文によって定義された条件が真となる。 次の i f 文は、 符号化ビットストリ一ム中に s e q u e n c e— e n d— c o d eが記述されているか否かを判断するための条件文であって、 s e q u 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 () とによって疋義 5れた データエレメントが記述されていることを示している ώ s e q u 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 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 り によって c述さ れたデータエレメントは、 ビデオス トリームのシーケンスの先頭に記述された 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 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 () とによつ て定義されたデータエレメントの次、 つまり、 データス トリームの最後には、 シ 一ケンスの終わりを示す 2ビッ トの s e q u 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 ()、 e x t e n s i o n一 a n d― u s e r― d a t a (0 )、 g r o u p o f p i c t u r e一 h e a d e r ()、 p i c t u r e一 h e a d e r ()、 p i c t u r e― c o d i n g― e x t e n s i o n ()、 およ び p i c t u r e— d a t a () について詳細に説明する。 図 1 1は、 s e q u e n c e— h e a d e r () のシンタックスを説明するための図である。 この s e q u e n c e h e a d e r () によって定義されたデータエレメントは、 s e q u e n c e― h e a d e r c o d e、 h o r i z o n t a l s i z e一 v a l u e、 v e r t i c a l一 s i z e— v a l u e、 a s p e c t― r a t i o i n f o r ma t i o n、 f r ame― r a t e一 c o d e、 b i t一 r a t e v a l u e、 ma r k e r一 b i t、 v b ― b u f f e r― s i z e v a l u e、 c o n s t r a i n e d― p a r a me t e r― f l a g、 1 o a d i n t r a一 q u a n t i z e r一 m a t r i x、 i n t r a q u a n t i z e r ma t r i x [64]、 l o a d― n o n一 i n t r a― q u a n t i z e r m a t r i x、 および n o n― i n t r a― q u a n t i z e r― ma t r i x等である。 s e q u e n c e一 h e a d e r― c o d eは、 シーケ ンスレイヤのスタ一ト同期コードを表すデータである。 h o r i z o n t a l— s i z e_v a 1 u eは、 画像の水平方向の画素数の下位 1 2ビットから成るデ ータである。 v e r t i c a l_s i z e_v a l u e は、 画像の縦のライン 数の下位 1 2ビッ トからなるデータである。 a s p e c t— r a t i o— i n f o r ma t i o nは、 画素のァスぺク ト比 (縦横比) または表示画面ァスぺク ト 比を表すデータである。 f r ame— r a t e_c o d eは、 画像の表示周期を 表すデータである。 b i t— r a t e— v a l u eは、 発生ビッ ト量に対する制 限のためのビッ ト ' レートの下位 1 8ビット ( 400 b s p単位で切り上げる) データである。 ma r k e r __ b i tは、 スタートコードエミュレ一ションを防 止するために挿入されるビットデータである。 V b V— b u f f e r_s i z e — v a 1 u eは、 発生符号量制御用の仮想バッファ (ビデオバッファべリファイ ヤー) の大きさを決める値の下位 1 0ビッ トデータである。 c o n s t r a i n e d_p a r a me t e r— f l a gは、 各パラメータが制限以内であることを 示すデータである。 l o a d一 i n t r a一 q u a n t i z e r― m a t r i x は、 イントラ MB用量子化マトリックス 'データの存在を示すデータである。 i n t r a一 q u a n t i z e r一 m a t r i x [64] は、 イントラ MB用量子 化マトリックスの直を示すデータである。 1 o a d— n o n— i n t r a_q u a n t i z e r ma t r i xは、 非ィントラ MB用量子化マトリックス ·デー タの存在を示すデ一タである。 η ο η― i n t r a― q u a n t i z e r― m a t r i xは、非イントラ MB用量子化マ トリ ックスの値を表すデータである。 図 1 2は s e q u e n c e— e x t e n s i o n () のシンタックスを説明するた めの図である。 この s e q u e n c e一 e x t e n s i o n () によって定義 れたテ一タエレメン卜と fe、 e x t e n s i o n一 s t a r t一 c o d e、 e x t e n s i o n一 s t a r t― c o a e― ι d e n t 1 f i e r、 p r o f i i e a n d l e v e l i n d i c a t i o n、 p r o g r e s s i v e s e q u e n c e、 c h r oma― f o r ma t、 h o r i z o n t a l s i z e e x t e n s i o n、 v e r t i c a l一 s i z e― e x t e n s i o n、 b i t r a t e一 e x t e n s i o n、 v b v一 b u f f e r― s i z e― e x t e n s i o n、 1 o w― d e l a y、 f r a me一 r a t e― e x t e n s i o n n、 および f r ame― r a t e一 e x t e n s i o n一 d等のデータ エレメントである。
e x t e n s i o n一 s t a r t一 c o d e ίま、 ェクステンションデータのスタ 一ト同期コ一ドを表すテータである。 e x t e n s i o n― s t a r t― c o d e— i d e n t i f i e rは、 どの拡張データが送られるかを示すデータである 。 p r o f i 1 e一 a n d一 l e v e l― i n d i c a t i o nは、 ビアォデー タのプロファイルとレベルを指定するためのデータである。 p r o g r e s s i v e— s e q u e n c eは、 ビデオデータが順次走査であることを示すデータで ある。 c h r o m a— f o r m a tは、 ビデオデータの色差フォ一マットを指定 するためのデータである。 h o r i z o n t a l一 s i z e一 e x t e n s i o η ίま、 シーケンスへッダの h o r i z n t a 1― s i z e一 v a 1 u eに力ロぇる 上位 2ビッ トのデ一タである。 v e r t i c a 1一 s i z e一 e x t e n s i o n ίま、 シーケンスヘッダの v e r t i c a 1一 s i z e― v a l u eカロえる上位 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 1 u eに加える上位 1 2ビッ 卜のデータであ る。 v b v― b u f f e r一 s i z e一 e x t e n s i o nは、 シーケンスへッ ダの v b v— b u f f e r _ s i z e— v a l u eに力 Hえる上位 8ビットのデ一 タである。 l o w— d e l a yは、 Bピクチャを含まないことを示すデータであ る。 f r a m e一 r a t e一 e x t e n s 1 o n一 nは、 シーケンスへッタの i r ame— r a t e一 c o d eと組み合わせてフレームレートを得るためのデー タである。 f r a m e一 r a t e一 e x t e n s i o n― dは、 シーケンスへッ ダの f r ame— r a t e— c o d eと組み合わせてフレームレートを得るため のテータである。 図 1 3は、 e x t e n s i o n一 a n d一 u s e r― d a t a ( i ) のシンタックスを説明するための図である。 この e X t e n s i o n— a n d一 u s e r一 d a t a ( i ) は、 「 i」 が 1以外のときは、 e x t e n s i o n— d a t a () によって定義されるデータエレメントは記述せずに、 u s e r_d a t a () によって定義されるデータエレメントのみを記述する。 よつ て、 e x t e n s i o n― a n d一 u s e r _ d a t a (0) は、 u s e r― d a t a () によって定義されるデータエレメントのみを記述する。 まず、 図 1 3 に示されているシンタックスにおいて使用されている関数について説明する。 n e X t b i t s () は、 ビットストリーム中に現れるビットまたはビット列と、 次に復号されるデータエレメントとを比較するための関数である。 図 1 4の u s e r _d a t a () は、 本実施例の特徴のあつ点を説明している図である。 図 1 4 ίこ示すよつ ίこ、 u s e r一 d a t a () ίま、 u s e r一 d a t a一 s t a r t c o d e, V— p h a s e (), H— p h a s e (), Γ ι m e c o d e リ, P i c t u r e一 o r d e r (), An c i l l a r y― d a t a (), h i s t o r y_d a t a (), および u s e r _d a t a () に関するデータエレメント を記述するための関数である。 u s e r _d a t a— s t a r t— c o d eは、 MP EG方式のビッ トス トリ一ムのピクチャレイヤのュ一ザデータエリァの開始 を示すためのスタートコ一ドである。 この u s e r— d a t a_s t a r t— c o d eの次に記述されている i f 文は、 u s e r— d a t a ( i ) の iカ , 0 " のとき、 次に記述されている wh i 1 e 構文を実行する。 この wh i 1 e構文 は、 ビッ トストリーム中に、 23個の" 0" とそれに続く " 1 " から構成される 24ビッ トのデータが現れない限り真となる。 この 2 3個の" 0 " とそれに続く" 1 " から構成される 24ビッ トのデータは、 すべてのスタートコードの先頭に付 与されるデータであって、 すべてのスタートコードは、 この 2 4ビッ トの後ろに 設けられることによって、 n e X t b i t S () は、 ビットストリーム中におい て、 各スタートコードの位置を見つけることができる。 wh i 1 e 構文が真の とき、 u s 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; を示すことになる。 つまり、 図 2 6において、 シーケンスレイヤにおいて、 e x t n t i o n— a n d —u s e r— d a t a (0) 20 5に関するデータエレ メントが記述されていることを示している。 その次に記述されている i f 文の n e x t b i t s () は、 V— P h a s e を示すビット列 (D a t a一 I D) を 検出すると、 そのビッ ト列 (D a t a— I D) の次ビットから V— P h a s e () で示される V_ P h a s eのデータエレメントが記述されていることを知る。 次 の E 1 s e i f 文の n e x t b i t s () は、 H— P h a s eを示すビット歹 lj ( D a t a_ I D) を検出すると、 そのビッ ト列 (D a t a— I D) の次ビットか ら H— P h a s e () で示される H— P h a s eのデータエレメントが記述され ていることを知る。
つまり、 図 2 6に示したように V— P h a s e () 2 20及び H— P h a s e () 2 2 1に関するデータエレメントは、 シーケンスレイヤのユーザデータェ リアに記述されているということを意味する。 ここで、 図 1 5に示すように、 V - P h a s eの D a t a— I Dは、" 0 1 "を表すビッ ト列であり、 H— P h a s eの D a t a— I Dは、" 0 2" を表すビット列である。 ビットス トリームに記述 される V— P h a s e () のシンタックスについて、 図 1 6を参照して説明する 。 まず、 D a t a— I Dは、 前述したように、 その D a t a— I Dの次のビッ ト 列のデータエレメントが V— P h a s eであることを表す 8ビッ トのデータであ り、 図 1 5で示した値" 0 1 " である。 V— P h a s eは、 画像信号のフレーム において、 符号化される最初のラインを示す 1 6 ビッ トのデータである。 言いか えると、 V— P h a s eは、 アクティブビデオエリアの垂直方向のライン位置を 示すデータである。
ビッ トス トリームに記述される H— P h a s e () のシンタックスについて、 図 Γ7を参照して説明する。 まず、 D a t a— I Dは、 前述したように、 その D a t a_ I Dの次のビット列のデ一タエレメントが H— P h a s eであることを 表す 8ビッ トのデータであり、 図 1 5で示した値" 0 2" である。 H— P h a s eは、 画像信号フレームにおいて、 符号化される最初のサンプルを示す 8ビッ ト のデータである。 言いかえると、 H—P h a s eは、 アクティブビデオエリアの 水平方向の画素サンプル位置を示すデータである。
図 1 4に戻って、 次の 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 文において、 n e x t b i t s () は、 T i me c o d e 1を示すビット列を検出するか、 または、 T i me c o d e 2を示すビッ ト列を検出すると、 そのビット列の次ビットか ら T i me_c o d e () で示される T i me c o d eのデータエレメントが 記述されていることを知る。 つまり、 e x t n t i o n— a n d— u s e r— d a t a ( i ) の iが 2のときとは、 このユーザデータがピクチャレイヤにある ことを意味し、 つまり、 図 2 6に示すように、 この T i m e— c o d e () 24
1によって表されるデータエレメントは、 ピクチャレイヤのユーザーで Λタエリ ァに記述されているデータであるということである。
T i me c o d e lの D a t a— I Dは、 図 1 5に示すように、" 03 "を表 すビット列であり、 T i m e c o d e 1のデータは、 画像の垂直ブランキング 期間に揷入されたタイムコ一ドを示す、 V I TC (V e r t i c a l I n t e r v a 1 T i m e C o d e ) である。 T i m e c o d e 2の D a t a— I Dは、 図 1 5に示すように、" 04 " を表すビッ ト列であり、 T i m e c o d e 2 のデータは、 記録媒体のタイムコードトラックに記録されたタイムコードを示す 、LTC(L o n g i t u d i n a l T i me C o d e又は L i n e a r T
1 m e C o d e) である。
図 1 8及び図 1 9は、 T i m e c o d e () のシンタックスを示している図で ある。 図 1 8に示されているように、 タイムコードは、 72ビッ トのデータで表 されており、 図 1 9具体的なデータ構造を示している'
図 1 9において、 c o l o r— f r a m e_ f 1 a gは、 カラーフレーム情報 に関するコントロールフラグを表わし、 次の D r o p— f r a me— f l a gは 、 ドロップフレームに関するコン トロールフラグを表わしている。 次の 3ビッ ト 目から 8ビット目までの 6ビットは、 タイムコードの 'フレーム' の部分を表わ し、 f i e l d— p h a s e は、 フェイズコレクションに関するコントロール フラグを表わし、 1 0ビット目から 1 6ビッ ト目までの 7ビッ トは、 タイムコ一 ドの '秒, の部分を表わしている。 1 7ビット目、 34ビット目、 5 1ビッ ト目 及び 68ビット目の ' 1 ' は、 前述したように 0が 23個連続しないようにする ためのマーカービッ トであって、 このように所定間隔でマーカービットを挿入す ることによって、 スタートコ一ドエミュレ一ションを防止することができる。
1 8ビッ ト目、 26ビッ ト目及び 27ビッ ト目の b i n a r y_g r o u p は、 バイナリグループに関するコントロールフラグを表わし、 1 9ビット目から
25ビッ ト目の 7ビットは、 タイムコードの '分' の部分を表わし、 28ビッ ト 目から 33ビット目の 6ビッ トは、 タイムコードの '時, の部分を表わしている 。 図 14の E l s e i f 文において、 n e x t b i t s () は、 P i c t u r e O r d e rを示すビッ ト列を検出すると、 そのビッ ト列の次ビットから P i c t u r e— O r d e r () で示される P i c t u r e O r d e rのデータエレ メントが記述されていることを知る。 ここで、 P i c t u r e— O r d e r () の D a t a— I Dは、 図 1 5に示すように、" 05" を表すビッ 卜列である。 実際 に、 エンコーダでエレメンタリス トリーム (E S) に挿入する P i c t u r e— O r d e r () のシンタックスを、 図 20を参照して説明する。 まず、 Da t a
. I Dは前述したように、 その D a t a I D以降のデータが P i c t u r e O r d e rのデータであることを示す 8ビッ トのデータであり、その値は" 0 5" である。 DTS— p r e s e n c eは、 符号化順序 DT S— c o u n t e r の 有無を表す 1 ビッ トのデータである。 例えば、 Bピクチャのように DT S— c o u n t e r =PTS__c o u n t e r となる場合、 表示順序 P T S_c o u n t e rのみが存在し、 DT S— p r e s e n c eのビッ.トは" 0" となる。 逆に、
Pピクチャおよび I ピクチャの場合、 符号化順序 DTS— c o u n t e rと表示 順序 PTS— c o u n t e rは同一ではないので、 表示順序 PTS— c o u n t e rと符号化順序 DT S— c o u n t e rの双方が存在し、 DT S— p r e s e n c eのビットは 1 となる。 尚、 P i c t u r e— O r d e r () に関するデー タエレメントは、 図 26に示したように、 T i me— C o d e 〇 と同じように
、 ピクチャレイヤのユーザ一データエリアに記述されている。 PTS— c o u n t e rは、 前述したように、 MP E Gエンコーダ内のフィールドカウンタ 1 0 2 によって生成される値であって、 入力ビデオデータにおいて 1フィールドが入力 されるごとにカウントアップを行う、 表示順序を表す 7ビットのデータである。 この 7ビッ トのデータは、 0から 1 27までの値をとるモジュロである。 i f 文 以降は、 DTS— p r e s e n c eのビッ トが 1のとき、 すなわち、 Pピクチャ および I ピクチャのとき、 DTS— c o u n t e rのカウントアップが実行され る。 Ma r k e r— b i t sは、 u s e r d a t aの記述されたビット列が、 偶然に前述したスタートコ一ドと一致し、 画像破錠を引き起こす可能正が高い、 スタートコードエミユレーシヨンを防止するために、 1 6ビッ トごとに揷入され るビッ トである。 DTS— c o u n t e rは、 MP E Gエンコーダ内のフィ 一ノレ ドカウンタ 1 02によって生成される値で、 1フィールド分の符号化画像データ が符号化されるごとにカウントアップを行う、 符号化順序を表す 7ビッ トのデ一 タである。 この 7ビッ トのデータは、 0から 1 2 7までの値をとるモジュロであ る。 図 1 4に戻って、 その次に記述されている w h i 1 e構文も、 内容は前述し た場合と同様であるので、 ここではその説明を省略する。 wh i 1 e構文が真の とき、 次の i f 文において、 n e x t b i t s () は、 An c i l l a r y d a t aを示すビッ ト列を検出すると、 そのビッ ト列の次ビットから An c i l i a r y_d a t a () で示される An c i l i a r y d a t aのデータエレメン 卜が記述されていることを知る。 An c i 1 1 a r y_d a t a () の D a t a — I Dは、 図 1 5に示すように、" 07" を表すビッ ト列である。 尚、 An c i 1 1 a r y— d a t a () に関するデータエレメントは、 図 26に示したように、 P i c t u r e— O r d e r () や T i m e一 C o d e () と同じように、 ピク チヤレイヤのユーザーデータェリアに記述されている。 この補助データに識別子 を付加する a n c i l l a r y d a t aのシンタックスを図 2 1を参照して説 明する。 An c i l l a r y— d a t a () はピクチャレイヤの u s e r d a t aとして挿入され、 デ一タとしては F i e 1 d識別子 (F i e 1 d— I D)、 ラ インの番号 (L i n e— n umb e r) およびアンシラリーデータ (a n c i 1 1 a r y d a t a) が挿入される。 D a t a— I Dは、 u s e r d a t a領 域において、 a n c i l l a r y d a t aであることを示す 8ビットのデータ であり、 その値は図 1 5に示したように" 0 7" である。 F i e 1 d— I Dは 2 ビットのデータであり、 入力ビデオデ一タがプログレッシブビデオであるか否か ¾■示すフラグで ¾>る p r o g r e s s i v e― s e q u e n c e一 f l a gの値 が" 0" のとき、 つまり、 入力ビデオがインターレースのビデオデータであると き、 符号化フレーム内のフィールドごとに F i e 1 d— I Dが付加される。
この F i e 1 d _ I Dについて、 図 7を参照して説明する。
r e p e a t— f i r s t_f i e 1 d に" 0" が設定されているとき、 こ の符号化フレームにはフィールドが 2枚存在し、 F i e 1 d— I Dは、 最初のフ ィールドに" 0"、 およびその次のフィールドに" 1" が設定される。 r e p 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の符号化ストリームは、図 7 B に 示される入力ビデオデータを符号化したときの、 符号化ス トリ一ムに関する図で ある。 この符号化ス トリームは、 複数のアクセスュニット (AU 1、 AU 2... ) からなるエレメンタリーストリームから構成されており、 図 7 Cは、 そのエレ メンタリーストリーム中にアンシタリーデータと F i e 1 d— I Dに関する情報 が記述されていることを示している図である。
この符号化ストリームは、 フレーム F 1に関しては、 F i e 1 d— I Dとして
0、 1及び 2が設定されている。 つまり、 F i e 1 d— I D= 0のときに、 その フィールドに関連するアンシラリーデータ 「0」 がス トリーム中に記述され、 F
1 e 1 d— I D= 1のときに、 そのフィールドに関連するアンシラリーデータ 「 1 J がストリ一ム中に記述され、 F i e 1 d— I D= 2のときに、 そのフィール ドに関連するアンシラリーデータ 「2」 がス トリーム中に記述される。 つまり、 フレーム F 1に関するピクチャにおいて、 図 2 6に示すように、 An c i 1 1 a r y —d a t a () 24 3に関するデータエレメントは、 フレーム F 1内のフ ィールド数だけ操り返されることを意味している。
F i e l d ― I Dは、 p r o g r e s s i v e― s e q u e n c e一 f 1 a gの値が" 1 " のとき、 つまり入力ビデオデータが 1であるとき、 符号化フレ —ムごとに付加される。 F i e 1 d— I Dには、 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 r o g r e s s i v e f r a m eが存在す るので、 値" 0" が設定され、 r e p e a t— f i r s t— f i e l dに値" 1 " および T o p— f i e 1 d_f i r s tに値" 0" が設定されているとき、 その 符号化フレームは 2枚の p r o g r e s s i v e f r a m eが存在するので、 値" 0 ", " 1 " が設定され、 r e p e a t— f i r s t_f i e I dと T o p— f i e 1 d_ f i r s tにともに" 1 " が設定されているとき、 その符号化フレ —ムは 3枚の p r o g r e s s i v e f r a m eが存在するので、 ί直" 0 " 乃 至" 2" が設定される。 L i n e— n u mb e rは、 1 4ビッ トのデータであり 、各フレームにおけるアンシラリーデータが記述されている、 I TU— R B T. 6 56— 3, SMPTE 2 74M, SMPTE 2 9 3M, SMPTE 2 9 6Mで 規定されたライン番号を示す。 An c i 1 1 a r y 一 d a t a一 l e n g t h は、 1 6ビッ トのデータであり、 a n c i 1 1 a r y _d a t a _p a y 1 o a dのデータ長を示す。 An c i 1 l a r y— d a t a— p a y l o a dは、 2 2 ビッ トのデータからなる補助データの内容を表しており、 An c i 1 l a r y— d a t a一 p a y l o a dの An c i 1 1 a r y― a a t a― 1 e n g t hの値 が jの値 (初期値 0) より大きいとき、 値 j (An c i 1 1 a r y_d a t a_ 1 e n g t hのデータ長) を 1だけィンクリメントして、 その j の値のビット列 目から記述される。 次の Wh i 1 e構文は、 b y t e a l i g n e d () のため のシンタックスを表しており、 次のデータが b y t e a l i g n e d () でない とき (Wh i 1 e構文が真のとき)、 Z e r o_b i t (1ビッ 卜のデータ" 0" ) を記述する。 図 1 4に戻って、 次の E 1 s e i f 文において、 n e x t b i t s () は、 H i s t o r y d a t aを示すビッ ト列を検出すると、 そのビッ ト列の次ビッ トカ、ら H i s t o r y— d a t a ()で示される H i s t o r y d a t aのデータエレメントが記述されていることを知る。 H i s t o r y_d a t a () の D a t a— I Dは、 図 1 5に示すように、" 08" を表すビット列であ り、 D a t a— I Dが" 08" で示されるデータは、 符号化パラメータの履歴情 報を含む H i s t o r y
d a t aを表している。 この H i s t o r y— d a t a () については、 U S特 許出願 09 265 723 に詳しく説明されているので、 ここでは省略する。 最後の i f 文において、 n e x t b i t s () は、 u s e r d a t a を示す ビット列を検出すると、 そのビッ ト列の次ビットから u s e r _d a t a () で 示される u s e r— d a t aのデータエレメントが記述されていることを知る。 図 14の n e X t b i t s () 力 、 それぞれのデータエレメントが記述されてい ることを知るビット列は、 図 1 5に示す D a t a— I Dとして記述されている。 ただし、 Da t a— I Dとして" 00" を使用することは禁止されている。 D a t a— I Dが" 80" で示されるデータは、 制御フラグを表しており、 Da t a I Dが" F F"で示されるデータは、 u s e r d a t a を表している。 図 22は、 g r o u p一 o f — p i c t u r e一 h e a d e r () のシンタックス を説明するための図である。 この g r o u p_o f — p i c t u r e— h e a d e r ()によって定義されたデータエレメントは、 g r o u p —s t a r t ― c o d e、 t i me― c o d e、 c l o s e d― g o p、 および b r o k e n― l i n kから構成される。 g r o u p— s t a r t— c o d eは、 GOPレイヤ の開始同期コードを示すデータである。 t i me— c o d eは、 GOPの先頭ピ クチャのシーケンスの先頭からの時間を示すタイムコードである。 c l o s e d — g o pは、 GOP内の画像が他の GOPから独立再生可能なことを示すフラグ データである。 b r o k e n— 1 i n kは、 編集などのために G O P内の先頭の Bピクチャが正確に再生できないことを示すフラグデータである。
e x t e n s i o n a n d― u s e r― d a t a (1) 、 e x t e n s i o n一 a n d一 u s e r一 d a t a i, ϋ ) と同しよつに、 u s 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 n g― e x t e n s i o n ()、 および p i c t u r e― d a 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 u r e一 s t a r 一 c o d e、 t e m o r a 1 r e f e r e n c e、 p i c t u r e― c o d i n g― t y p e、 v b v d e l a y、 f u l l一 p e l― f o r wa r d― v e c t o r、 f o r w a r d f c o d e , f u l l p e 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― p i c t u r e、 およ び e x t r a― i n f o r m a t 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 e n c eは、 ピクチャの表示 順を示す番号で、 GOPの先頭でリセッ トされるデータである。 p i c t u r e _c o d i n g— t y p eは、 ピクチャタイプを示すデータである。 v b v_d e 1 a yは、 V B Vバッファの初期状態を示すデータであって、 各ピクチャ毎に 設定されている。 送信側システムから受信側システムに伝送された符号化工レメ ンタリストリームのピクチャは、 受信側システムに設けられた VBVバッファに ノ ッファリングされ、 DTS (D e c o d i n g T i me S t amp ) に よって指定された時刻に、 この VBVバッファから引き出され (読み出され)、 デ コーダに供給される。 v b v— d e 1 a yによって定義される時間は、 複号化対 象のピクチャが VBVバッファにバッファリングされ始めてから、 符号化対象の ピクチャが VBVバッファから引き出されるまでの時間、 つまり DTS によつ て指定された時刻までの時間を意味する。 このピクチャヘッダに格納された V b v_d e 1 a yを使用することによって、 V B Vバッファのデータ占有量が不連 続にならないシームレスなスプライシングが実現できる。 f u 1 1 _p e 1 _f o r wa r d— v e c t o rは、 順方向動きべク トルの精度が整数単位か半画素 単位かを示すデータである。 f o r wa r d— f — c o d eは、 順方向動きべク トノレ探索範囲を表すデータである。 f u l 1— p e l— b a c kwa r d— v e c t o rは、 逆方向動きべク トルの精度が整数単位か半画素単位かを示すデータ である。 b a c k w a r d— f — c o d eは、 逆方向動きべク トル探索範囲を表 すデータである。 e x t r a— b i t— p i c t u r eは、 後続する追加情報の 存在を示すフラグである。 この e x t r a— b i t _p i c t u r e力 S 「 1」 の 場合に ίま、 次に e x t r a一 i n f o r ma t i o n一 p i c t u r eカ存在し 、 e x t r a— b i t— p i c t u r e力 S 「0」 の場合には、 これに続くデータ 力 S無 ヽことを示してレヽる。 e X t r a一 i n f o r m a t i o n一 p i c t u r eは、 規格において予約された情報である。 図 24は、 p i c t u r e— c o d i n g— e x t e n s i o n () のシンタツクスを説明するための図である。 こ の p i c t u r e一 c o d i n g― e x t e n s i o n () {こよつ飞定 ¾g ^れ 7こ データエレメント ίま、 e x t e n s i o n s t a r t一 c o d e、 e x t e n s i o n― s t a r t c o d e― i d e n t i i i e r、 f c o d e [ 0 ] [0]、 f 一 c o d e [0] [1]、 f 一 c o d e [ 1] [0]、 f — c o d e [ 1 ] [1]、 i n t r a― d c一 p r e c i s i o n, p i c t u r e一 s t r u c t u r e、 o p― f i e l d一 f i r s t;、 f r ame― p r e d i c t i v e f r ame— d c t、 c o n c e a l me n t一 m o t i o n― v e c t o r s、 q― s c a l e― t y p e、 i n t r a― v i e' _ f o r ma t、 a l t e r n a t e― s c a n、 r e p e a t一 f i r s t一 f i e l d、 c h r oma ― 420一 t y p e、 p r o g r e s s i v e― f r ame、 c omp o s i t e― d i s p 1 a y― f 1 a g、 v― a x i s、 f i e 1 d _ s e q u e n c e 、 s u b一 c a r r i e r、 b u r s t― a mp l i t u d e、 および s u b一 c a r r i e r一 p h a s e力 ら構成され 。
e x t e n s i o n— s t a r t— c o d eは、 ピクチャレイヤのェクステンシ ョンデータのスタートを示す開始コードである。 e x t e n s i o n— s t a r t— c o d e— i d e n t i f i e rは、 どの拡張データが送られるかを示すコ 一ドである。 f — c o d e [0] [0] は、 フォア一ド方向の水平動きべク トル探 索範囲を表すデータである。 f — c o d e [0] [ 1 ] は、 フォアード方向の垂直 動きベク トル探索範囲を表すデータである。 f — c o d e [1] [0] は、 バック ヮード方向の水平動きべク トル探索範囲を表すデータである。 f — c o d e [ 1 ] [1] は、 バックワード方向の垂直動きべク トル探索範囲を表すデータである。 i n t r a_d c— p r e c i s i o nは、 D C係数の精度を表すデータである 。 p i c t u r e — s t r u c t u r edま、 フレームス トラクチャ力 フィー レ ドストラクチャかを示すデータである。 これは、 フィールドストラクチャの場合 は、 上位フィールドか下位フィールドかもあわせて示す。 t o p— f i e 1 d— f i r s tは、 フレームス トラクチャの場合、 最初のフィールドがトップフィー ルドであるのか、 ボトムフィールドであるのかを示すフラグである。 f r ame _p r e d i c t 1 v e— f r a m e d c tは、 フレーム · ストラクチャの場 合、 フレーム ·モ一ド DC Tの予測がフレーム · モ一ドだけであることを示すデ —タであ c o n c e a l me n t mo t i o n v e c t o r sは、 イン トラマクロブロックに伝送エラ一を隠蔽するための動きべク トルがついているこ とを示すデータである。 q— s c a l e— t y p eは、 線形量子化スケールを利 用するか、 非線形量子化スケールを利用するかを示すデータである。 i n t r a — v i e — f o r m a tは、 イントラマクロブ口ックに、 別の 2次元 V L C ( 可変長符号) を使うかどうかを示すデータである。 a .l t e r n a t e— s e a nは、 ジグザグスキャンを使う力 、 オルタネート ·スキャンを使うかの選択を表 すデータである。 r e p e a t— f i r s t_f i e l dは、 複号化時にリピー トフィールドを生成するか否かを示すフラグであって、 複号化時の処理において 、 r e p e a t— f i r s t— f i e l d力 「 1」 の場合にはリピートフィール ドを生成し、 r e p e a t— f i r s t_ f i e l d ;^ 「0」 の場合にはリピー トフィールドを生成しないという処理が行われる。 c h r om a— 4 20_ t y p eは、 信号フォ一マツトが 4 : 2 : 0の場合、 次の p r o g r e s s i v e— f r a meと同じ値、 そうでない場合は 0を表すデータである。 p r o g r e s s i v e— f r a m eは、 そのピクチャが、 順次走査できているかどうかを示す テ1 ~タである。 c o mp o s i t e一 d i s p 1 a y一 f 1 a g fa-、 ソース 1 号 がコンポジット信号であったかどうかを示すデータである。 V— a x i sは、 ソ ース信号が、 PALの場合に使われるデータである。 f i e l d— s e q u e n c eは、 ソ一ス信号が、 PALの場合に使われるデータである。 s u b— c a r r i e rは、 ソース信号が、 P A Lの場合に使われるデータである。 b u r s t — a mp 1 i t u d eは、 ソース信号が、 PAL の場合に使われるデータであ る。 s u b— c a r r i e r— p h a s eは、 ソース信号が、 PALの場合に使 われるデータである。 図 2 5は、 p i c t u r e— d a t a () のシンタックス を説明するための図である。 この P i c t u r e— d a t a () によって定義さ れるデータエレメントは、 s l i c e () によって定義されるデータエレメン トである。 但し、 ビッ トス トリーム中に、 s l i c e () のスタートコードを示 す s i i c e— s t a r t— c o d eが存在しない場合には、 この s 1 i c e () によって定義されるデ一タエレメントはビットストリーム中に記述されていない s l i c e () は、 スライスレイヤに関するデータエレメントを記述するため の関数であって、 具体的には、 s i i c e— s t a r t— c o d e、 s i i c e q u a n t i s e r —s c a l e一 c o d e、 i n t r a一 s l i c e f 1 a g、 i n t r a一 s i i c e、 r e s e r v e d― 'b i t s、 e x t r a― b i t s 1 i c e、 e x t r a― i n f o r m a t i o n一 s 1 i c e、 および e x t r a— b i t— s l i c e等のデータエレメントと、 m a c r o b l o c k () によって定義されるデータエレメントを記述するための関数である。
s i i c e一 s t a r t― c o d e (3. s l i c e () ίこよつて定¾1 れるテ ータエレメントのスタートを示すスタートコ一ドである。 s 1 i c e _q u a n t i s e r— s e a 1 e— c o d eは、 このスライスレイヤに存在するマク口ブ 口ックに対して設定された量子化ステップサイズを示すデータである。 しかし、 各マクロブロック毎に、 q u a n t i s e r— s e a 1 e— c o d eが設定され ている場合には、 各マクロプロックに対して設定された m a c r o b 1 o c k— q u a n t i s e r— s e a 1 e— c o d eのデータが優先して使用される。 i n t r a一 s l i c e一 f l a g fま、 ビッ トス トリーム中 ίこ i n t r a一 s i i c eおよび r e s e r v e d _b i t sが存在する力、否力、を示すフラグである。 i n t r a_ s 1 i c eは、 スライスレイヤ中にノンイントラマクロブロック力 存在するか否かを示すデータである。 スライスレイヤにおけるマクロブロックの いずれかがノンイントラマクロプロックである場合には、 i n t r a— s 1 i c eは 「0」 となり、 スライスレイヤにおけるマクロブロックの全てがノンイント ラマクロブロックである場合には、 i n t r a— s 1 i c eは 「 1」 となる。 r e s e r v e d_b i t sは、 7ビッ トのデータであって 「0」 の値を取る。 e X t r a— b i t— s 1 i c eは、 符号化ストリームとして追加の情報が存在す ることを示すフラグであって、 次に e x t r a _ i n f o r m a t i o n— s 1 i c eが存在する場合には 「1」 に設定される。 追加の情報が存在しない場合に は 「0 J に設定される。 m a c r o b 1 o c k () は、 マクロブロックレイヤに 関するデータエレメントを記述するための関数であって、 具体的には、 m a c r o b l o c K e s c a p e、 m a c r o b l o c k— a d d r e s s i n c r e m e n t;、 および m a c r o b l o c k― q u a n t i s e r― s c a l e 一 c o d e等のデータェレメントと、 m a c r o b l o c k— m o d e s () 、 および m a c r o b l o c k 一 v e c t e r s (.s ) によって定義されたテ ータエレメントを記述するための関数である。 ma c r o b l o c k— e s c a p eは、 参照マクロブロックと前のマクロブ口ックとの水平方向の差が 34 以上であるか否かを示す固定ビッ ト列である。 参照マクロブロックと前のマクロ ブロックとの水平方向の差が 34以上の場合には、 m a c r o b 1 o c k— a d d r e s s — i n .c r e me n t の値に 33をプラスする。 ma c r o b 1 o c k一 a d d r e s s 一 i n c r e me n t は、 参照マクロブロックと目 ij のマクロブロックとの水平方向の差を示すデ一タである。 もし、 この ma c r o b l o c k a d d r e s s ― i n c r e m e n t の fj'Jに m a c r o b l o c k— e s c a p e力 1つ存在するのであれは *、 この m a c r o b l o c k— a d d r e s s — i n c r e m e n t の値に 3 3をプラスした値が、 実際の参 照マクロブロックと前のマクロブロックとの水平方向の差分を示すデータとなる 。 ma c r o b l o c K― q u a n t i s e r ― s c a l e 一 c o d eは、 各マクロプロック毎に設定された量子化ステップサイズである。 各スライスレイ ャには、 スライスレイヤの量子化ステップサイズを示す s l i c e — q u a n t i s e r — s c a l e —c o d eが設定されているが、 参照マクロブ口ッ クに対して ma c r o b l o c k一 q u a n t i s e r 一 s c a l e 一 c o d eが設定されている場合には、 この量子化ステップサイズを選択する。 次に、 図 27を参照して、 マルチプレクサ 1 6 2 Aについて説明する。
マルチプレクサ 1 62 Aは、 複数のバケツタイザ 30 1— 3 09と、 複数の トランスポートス トリーム生成回路 (TS G e n. ) 3 1 1— 3 1 9と、 複 数のシステムターゲッ トデコーダバッファ (STD B u f f e r) 3 2 1 - 3 29と、 多重化回路 3 30と、 多重化コントローラ 300とを備えている。 バケツタイザ 3 0 1— 30 9は、 MP EGエンコーダからそれぞれ出力され たェレメンタリ一ストリームを受け取り、 エレメンタリーストリームをバケツ ト 化することによってバケツタイズドエレメンタリーストリーム (PES) を生成 する。
図 28は、 エレメンタリーストリーム (ES)、 バケツタイズドエレメンタリ 一ストリーム (PE S)、 そして、 トランスポ一ト トリームバケツ トの関連を説明 するための図である。
ソースビデオデータを符号化すると、 例えば図 28 Bに示すような、 各ァク セスュユッテ AU 1、 AU2、 から構成されるエレメンタリーストリ ームが形成される。 図 28 Cは、 バケツタイザ一のパケット化処理に関して説明 している図であって、 バケツタイザ一は、 複数のアクセスユニッ トをパッキング し、 そのバケツ トの先頭部分に P E Sヘッダを付加する。
図 29は、 この P E Sヘッダを説明するための図面である。 図 29に示すよ うに、 PE Sヘッダは、 パケッ ト開始コード、 ス トリーム I D、 パケット長、 記 号 「1 0」、 フラグ制御コード、 PE Sヘッダ長、 コンデイショナルコーディング から構成される。 MPEG規格では、 このコンデイショナルコーディングに、 プ レゼンテーシヨンタイムスタンプ (PTS) 及びデコーディングタイムスタンプ (DTS) の情報を入れないといけないと決められている。 トランスポート ストリーム生成回路 (TS G e n. ) 3 1 1— 3 1 9は、 バケツタイザ 3 0
1 - 309から出力されたパッケタイズドエレメンタリーストリームから、 図 2 8 Dに示すように、 1 88バイ トのトランスポ一トストリームバケツトからなる トランスポートストリームをそれぞれ生成する。
システムタ一ゲットデコーダバッファ (STD B u f f e r) 3 2 1 - 3
29は、 トランスポートストリーム生成回路 3 1 1—3 1 9から出力されたトラ ンスポートストリームを受け取り、 ノくッファリングする。 この S TDバッファは 、 M P E Gデコーダ側の受信バッファがオーバーフ口一及びァンダ一フローしな いようにシユミレ一シヨンを目的として設けられだバッファであって、 MPEG 規格によって決まっている固定容量のバッファである。 多重化回路 330は 、 システムターゲッ トデコーダバッファ 3 2 1— 329から、 トランスポートス トリームをそれぞれ受け取り、 コントローラ 300によって設定されたスケージ ユーリングに従って多重化処理を実行する。
次に、 各バケツタイザ一の詳細な構成及び処理について、 図 27及び図 30 を参照して説明する。
各バケツタイザは、 受け取ったエレメンタリストリ一ムをバッファリングす るためのバッファ 34 1と、 その受け取ったエレメンタリス トリームのシンタッ クスをパージング (解析) するためのパージング回路 342と、 バッファから出 力されたエレメンタリ一ス トリームをバケツト化するバケツト化回路 343を備 えている。
パージング回路 342は、 エレメンタリース トリームから、 そのエレメンタ リース トリーム中に記述された PTS —c o u n t e r 及び DTS — c o u n t e r を抽出し、 その PTS —c o u n t e r 及び DTS — c o u n t e r をバケツ ト化回路 343に供給する。 具体的には、 パージング回路 3 42は、 受け取ったエレメンタリース トリームを可変長符号化し、 ス トリーム中 に含まれているスタ一トコ一ドなどの特殊なデータエレメントを検索する。 この パージング処理は、 PTS 一 c o u n t e r 及び DTS 一 c o u n t e r を抽出することが目的であるので、 シーケンスレイヤは GO Pレイヤのスタート コードは無視し、 まず、 ピクチャレイヤのスタートコ一ドを検索する。 次に、 3 2ビッ トの u s e r一 d a t a— s t a r t — c o d e をス トリーム中力 ら見つけることによってピクチャレイヤのュ一ザデータェリアを見つけることが できる。 次に、 このユーザデータエリアにおいて、 P i c t u r e — o r d e r () に関するデータエレメントを見つけるために、 "0 5" Da t a_ I Dを探す。 この P i c t u r e — o r d e r () 関数の 1 0ビッ ト目力、ら 1 6ビッ ト目及び 1 7ビッ ト目から 23ビット目には、 P T S c o u n t e r と DTS— c o u n t e r が夫々記述されているので、 パージング回路 342、 この PTS —c o u n t e r と DTS— c o u n t e r とを抜 き出して、 パケッ ト化回路 343に供給する。 パケット化回路 343は、 パ 一ジング回路 34 2から P T S —c o u n t e r 及び DTS —c o u n t e r を受け取り、 この PTS —c o u n t e r 及び DTS —c o u n t e r に関する情報に基づいて PTSと DTSを新たに生成する。 本実施例では 、 PTSの値として PTS —c o u n t e r の値そのものを使用し、 DTS の値として、 DTS —c o u n t e r の値そのものを使用するようにしてい る。
図 30は、 本実施例のパケタイザを使用した場合において発生する最小遅延 について説明するための図である。 図 3 OAは、 入力ビデオデータを表し、 図 3 0 Bは、 その入力ビデオデータを符号化した際のエレメンタリーストリームを表 しており、 図 30 Cは、 本実施例の MP EGエンコーダによって生成した符号化 ス トリームを使用し、 本実施例のバケツタイザ一を使用した際の、 バケツタイズ ドエレメンタリーストリームを表している。 この図 30Aと図 30 Bについ ては、 図 2 A及び図 2 Bと同じである。 しかしながら、 図 2 Cと図 30 Cを比較 すると理解できるように、 従来は、 PT Sを決定するバケツタイズドエレメンタ リース トリームを生成する、 つまり、 PTSを決定するためには、 I ピクチャを Pピクチャの間に存在する Bピクチヤの数を Nとすると (N+ 2) フレーム分の 遅延が発生していたという問題にっレヽては説明済みである。
本実施例のエンコーディング方法及びバケツ ト化方法によれば、 符号化スト リームから PTSを決定する遅延を 1フレーム時間に押さえることができる。 さ らに、 I ピクチャを Pピクチヤの間に存在する Bピクチヤの数に限らず、 I ピク チヤを Pピクチヤの間に何枚もの Bピクチャが存在していたとしても、 1フレー ムの最小遅延となる。 また、 図 27のような 9チャンネル用のバケツタイザを設 計しょうとしたときに、 9個のフレームメモリで実現できるという、 極めて大き なな効果がある。 次に、 図 3 1を参照して、 MP EGデコーダ 144 A— 1 44 Dについて説 明する。 各 MP EGデコーダは、 受信バッファ 40 1 と、 可変長複号化回路 40 2と、 逆量子化回路 403と、 逆 DCT回路 404と、 コントローラ 405と、 演算回路 4 1 1 と、 動き補償回路 4 1 2と、 メモリ 4.1 3及び 4 1 4と、 送信バ ッファ 4 1 5と、 バースバンドビデオ生成回路 4 1 6と、 多重化回路 4 1 7とを 備えている。
可変長復号回路 402は、 受信バッファからエレメンタリース トリームを受 け取り、 そのエレメンタリーストリームに対して可変長複号化処理を行うことに よって所定のデータ長を有したデータエレメントからなるストリームを生成する 。 さらに、 可変長復号回路 402は、 可変長復号化されたデータス トリームのシ ンタックスをパージング (解析) することによって、 ストリーム中から全てのコ ーデイングパラメータを抽出し、 コントローラ 405に供給する。 ストリーム中 に重畳することが MP EG規格によって義務付けられているコーディングパラメ ータの例としては、 ピクチャタイプ、 動きベク トル、 予測モード、 DCTモ一ド 、 量子化スケールコード、 量子化テーブル情報等であって、 基本的には、 この符 号化ストリームを生成する符号化処理において発生したパラメータである。
本実施例のユニークな点は、 可変長符号化回路 402は、 上述した MPEG 規格によって定められているコ一ディングパラメータだけではなく、 エレメンタ リース トリームのユーザーデータエリアに MPEG —E S— E d i t i n g — i n f o r ma t i o n () として記述されている情報を抽出することが、 本実施例の特徴である。 具体的には、 符号化ス トリーム中のシーケンスレイヤの ユーザデータエリアには、 V— p h a s e () H— p h a s e () に関する 情報が MPEG — E S— E d i t i n g — i n f o r ma t i o n () と して記述されており、 符号化ストリーム中のピクチャレイヤのュ一ザデータェリ ァには. T i me— c o d e ()、 P i c t u r e o r d e r () 、 An l 1 y d a t a (), H i o r y d a 0 に関する情 報カ MPEG 一 E S— E d i t i n g — i n f o r ma t i o n () と して記述されており、 可変長符号化回路 402は、 ス トリーム中から、 これらの V— p h a s e () H— p h a s e () 、 T i me― c o d e ()、 P i c t u r e一 o r d e r () 、 An c i l l a r y― d a t a () 及ぴ H i s t o r y_d a t a () に関連する情報を抽出し、 コントローラ 405に供 給する。
逆量子化回路 403は、 可変長複号化回路 402より供給された可変長復号 化された DCT係数データを、 同じく可変長復号化回路 402から供給された量 子化スケールに基づいて逆量子化し、 逆 DC T回路 404に出力する。
逆 DC T回路 404は、 逆量子化回路 403から供給された量子化 D C T係 数に対して、 逆離散コサイン変換処理を施し、 逆 DCTされた画像データとして 、 演算器 4 1 1に供給される。 逆 DCT回路 404より演算器 4 1 1に供給 された画像データが、 Iピクチャのデータである場合、 そのデータは演算器 4 1 1より出力され、 演算器 4 1 1の後に入力される画像データ (Pピクチャ又は B ピクチャのデータ) の予測画像データ生成のために、 フレームメモリの前方予測 画像部 4 1 4に供給されて記憶される。 逆 DC T回路 404より供給された 画像データが、 その 1フレーム前の画像データを予測画像データとする Pピクチ ャのデータであり、 前方予測モードのデータである場合、 フレームメモリの前方 予測画像部 4 1 4に記憶されている、 1フレーム前の画像データ ( Iピクチャの データ) が読み出され、 動き補償回路 4 1 2で可変長復号化回路 402より出力 された動きべク トルに対応する動き補償が施される。 そして、 演算器 4 1 1にお いて、 逆 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ピクチャより先に処理され、伝送されている)。 逆 DCT回路 404より供給された画像データが、 Bピクチャのデータである場合 、 可変長複号化回路 402より供給された予測モードに対応して、 フレームメモ リの前方予測画像部 4 1 4に記憶されている Iピクチャの画像データ (前方予測 モードの場合)、後方予測画像部 4 1 3に記憶されている Pピクチャの画像データ (後方予測モードの場合)、 又は、 その両方の画像データ (両方向予測モードの場 合) が読み出され、 動き補償回路 4 1 2において、 可変長復号化回路 402より 出力された動きべク トルに対応する動き捕償が施されて、 予測画像が生成される 。 但し、 動き補償を必要としない場合 (画像内予測モードの場合)、 予測画像は生 成されない。 このようにして、 動き補償回路 4 1 2で動き補償が施されたデ ータは、 演算器 4 1 1において、 逆 DCT回路404の出力と加算される。 この 加算出力は、 バッファ 4 1 5を介してべ一スバンドビデオ生成回路 4 1 6に供給 される。 この送信バッファ 4 1 5から出力されるビデオデータは、 アクティブビ デォエリアのみのビデオデータであってブランキング期間などの補助的データは 付与されていない。
コントローラ 405は、 可変長復号化回路 402から供給されたピクチャタ ィプ、 動きべク トル、 予測モード、 DCTモード、 量子化スケールコード、 量子 化テーブル情報等のコーディングパラメ一タに関する情報にもとづいて、 上述し た各回路のオペレ一ションをコント口一/レする。
さらには、 コントローラ 405は、 可変長符号化回路 40 2から MP EG— E S— E d i t i n g — i n f o r ma t i o n () として供給された V -p h a s e 及び H— p h a s e に関する情報に基づいて、 ベースバ ンドビデオ生成回路 4 1 6をコントロールする。 符号化ストリーム中から抽出さ れた V— p h a s e は、 入力ビデオデータの全画素エリアにおけるアクティブ ビデオエリアの垂直方向の位置を示しており、 また、 その H— p h a s e は、 入力ビデオデータの全画素ェリアにおけるアクティブビデオェリァの水平方向の 位置を示している。 よって、 コントローラ 40 5は、 ノ ッファ 4 1 5から出力さ れた復号化ビデオデータを、 ブランキングイメージを有した全画素ェリア上に、 V— p h a s e 及び H— p h a s eによって示される垂直及び水平位置にマ ッピングするようにベースバンドビデオ生成回路をコント口ールする、 または、 V— p h a s e 及び H— p h a s eによって示される垂直及び水平位置に基 づいて、 アクティブエリアの復号ビデオデータと、 全画素エリアのブランキング イメージを合成するようにベースバンドビデオ生成回路をコントロールする。 そ の結果、 ベースバンドビデオ生成回路 4 1 6から出力されるビデオデータは、 M P E Gエンコーダに供給された入力ビデオデータのブランキング期間と全く同じ ブランキング期間を有している。
コントローラは 405は、 符号化ストリームから抽出された An c i 1 1 a r y― d a t a、 L i n e
.u nmb e r、 F i e l d一 I D、 T i me 一 c o d e― 1 及び T i me —c o d e— 2 を供給する、 又は F i e 1 d
I D {こ基づレヽて、 An c i 1 1 a r y ― d a t a、 T i me一 c o d e — 1 又は T i m e— c o d e— 2 の多重化回路 4 1 7の多重化処理をコント ロールする。 具体的には、 既に図 7 Cにおいて説明したように、 F i e l d ― I Dはブイールド毎に付与された An c i l i a r y — d a t aと関連付けさ れているので、 多重化回路 4 1 7はこの F i e 1 d —I Dによって同定される フィールドのブランキング期間に、 F i e l d — I Dと関連付けられている A n c i 1 1 a r y — d a t aを重畳する。 例えば、 F i e 1 d — I D力 「2」 の場合には、 フレームにおいて 3番目のフィールドであることがわかるので、 符 号化ストリーム中において、 F i e l d — I Dが 「2」 に関連するアンシラリ 一データ として伝送されてきた A n c i l i a r y —d a t aを、 F i e I d I Dが 「2」 の 3番目のフィールドのブランキング期間に重畳する。 多 重化回路 4 1 7は、 さらに、 An c i l l a r y —d a t aをブランキング期 間に重畳する際、 An c i l l a r y —d a t a と一緒に伝送されている
L i n e— u nmb e rによって指定されるライン位置に、 その An c i l i a r y —d a t aを重畳する。
従って、 多重化回路 4 1 7から出力されたビデオデータは、 MP EGェンコ ーダに供給された入力ビデオデータと全く同じブランキング期間、 全く同じ位置 のアクティブビデオエリア、 全く同じライン位置にかつ同じ内容のアンシラリデ ータを有している。
よって、 本実施例によれば、 ビデオデータを送信側システムから受信側シス テムに伝送する際に、 MP EGエンコード及びデコード処理を行ったとしても、 そのコーディング処理によって入力ビデオデータがそもそも有している固有情報 や入力ビデオデータに付加されたアンシラリ一データが無くなることはなレ、。 産業上の利用可能性
本発明は放送局等で頻繁にビデオデータをエンコード及びデコードする際に利 用できる。

Claims

請 求 の 範 囲
1. 入力ビデオデータをエンコードするためのェンコ一ディング装置において、 上記入力ビデオデ一タから、 上記ビデオデ一タのブランキング期間に付加され ているアンシラリーデータを抽出する抽出手段と、
上記入力ビデオデータをェンコ一ドし、 符号化ストリームを生成する符合化手 段と、
上記符号化ス トリーム中に上記アンシラリーデータが挿入されるように、 上記 符号化手段をコントロールするコントロール手段と
を備えたことを特徴とするェンコ一ディング装置。
2. 上記コントロール手段は、 上記アンシラリーデータを上記符号化ス トリーム のピクチャレイヤのユーザ一データエリヤに記述することを特徴とする請求の範 囲第 1項に記載のェンコ一ディング装置。
3. 上記コントロール手段は、 上記符号化ス トリームのピクチャレイヤの e X t e n s i o n― a n d一 u s e r― d a t ( i ) 中に、 上 §ϋァンシラリ一つ "一 タを記述することを特徴とする請求の範囲第 1項に記載のェンコ一ディング装置
3. 上記コントロール手段は、 上記符号化ス トリームのピクチャレイヤのユーザ データエリアに、 上記アンシラリ一データをフィールド単位又はフレーム単位に 記述するように上記符号化手段をコントロールすることを特徴とする請求の範囲 第 1項に記載のェンコ一ディング装置。
4. 上記コントロール手段は、 上記入力ビデオデータにおいて上記アンシラリー データが揷入されていたフィールドを示すフィ一ルド I Dと、 上記アンシラリ一 データとを関連付けて上記ピクチャレイヤに記述するように上記符号化手段をコ ントロールすることを特徴とする請求の範囲第 1項に記載のェンコ一ディング装
5 . 上記コン トロール手段は、 上記入力ビデオデータにおいて上記アンシラリー データが揷入されていたフィールドを示すフィールド I Dと、 上記アンシラリー データが挿入されていたライン番号と、 上記アンシラリーデータとを関連付けて 上記ピクチャレイヤに記述するように上記符号化手段をコントロールすることを 特徴とする請求の範囲第 1項に記載のェンコ一ディング装置。
6 . 上記入力ビデオデータの 1フレームが複数のフィールドから構成され、 上記コントロール手段は、 上記符号化ス トリームのピクチャレイヤに、 各フィー ルド毎に上記アンシラリ一データを夫々記述することを特徴とする請求の範囲第 1項に記載のェンコ一ディング装置。
7 . 上記符号化ス トリーム中に記述される上記アンシラリーデータは、 可変長符 号化されたデータストリ一ムであることを特徴とする請求の範囲第 1項に記載の ェンコ一ディング装置。
8 . 上記アンシラリ一データは、 クローズドキャプションデータ及びノ又はテレ テキストデータであることを特徴とする請求の範囲第 1項に記載のェンコ一ディ ング装置。
9 . 上記アンシラリーデータは、 上記符号化ストリームのピクチャレイヤにおい て、 A n c i l l a r y— d a t a () によって表されるシンタックスに基づい て記述されることを特徴とする請求の範囲第 1項に記載のエンコーディング装置
1 0 . 上記入力ビデオデータは、 3 — 2ブルダゥン処理さえた 3 0 H zのビデオ データであって、
上記抽出手段と上記符号化手段との間に接続され、 上記入力ビデオデータに対 して、 逆 3— 2プルダウン処理を行うことによって逆プルダウン処理されたビデ ォデータを生成するための逆プルダウン手段をさらに備えたことを特徴とする請 求の範囲第 1項に記載のェンコ一ディング装置。
1 1 . 入力ビデオデータをエンコードするためのエンコーディング方法において 上記入力ビデオデータから、 上記ビデオデータのブランキング期間に付加され ているアンシラリーデータを抽出するステップと、
上記入力ビデオデータをェンコ一ドし、 符号化ストリ一ムを生成するステップ と、
上記符合化ストリーム中に上記アンシラリ一データが揷入されるように、 上記 符号化手段をコントロールするステップと
を備えたことを特徴とするェンコ一ディング方法。
1 2 . 入力ビデオデータをェンコ一ドするためのエンコーディング装置において 上記入力ビデオデ一タから、 上記ビデオデータのブランキング期間に付加されて いるアンシラリ一データを抽出する手段と、
上記入力ビデオデータをェンコ一ドし、 符号化ストリ一ムを生成する手段と、 上記符号化ストリームと一緒に上記アンシラリ一データが伝送されるように、 上記符号化ストリ一ム中に上記アンシラリーデ一タを揷入する手段と
を備えたことを特徴とするェンコ一ディング装置。
1 3 . 入力ビデオデータをエンコードするためのェンコ一ディング方法において 上記入力ビデオデ一タから、 上記ビデオデ一タのブランキング期間に付加されて いるアンシラリ一データを抽出するステップと、
上記入力ビデオデータをェンコ一ドし、 符号化ストリームを生成するステップ と、
上記符号化ストリームと一緒に上記アンシラリ一データが伝送されるように、 上記符号化ストリーム中に上記アンシラリ一データを挿入するステップと を備えたことを特徴とするェンコ一ディング方法。
1 4 . 入力ビデオデータをェンコ一ドするためのエンコーディング装置において 上記入力ビデオデータから、 上記ビデオデータのブランキング期間に付加され ているアンシラリーデータを抽出する手段と、
上記入力ビデオデータのアクティブエリアをエンコードすることによって、 符 号化ストリームを生成する手段と、
上記アンシラリーデ一タを上記符号化ストリ一ム中に記述することによって、 上記符号化ス卜リームと一緒に上記アンシラリ一データを伝送する手段と を備えたことを特徴とするエンコーディング装置。
1 5 . 入力ビデオデータをエンコードするためのエンコーディング方法において 上記入力ビデオデータから、 上記ビデオデータのブランキング期間に付加され ているアンシラリーデータを抽出するステップと、
上記入力ビデオデータのアクティブエリアをエンコードすることによって、 符 号化ストリームを生成するステップと、
上記アンシラリーデータを上記符号化ス トリーム中に記述することによって、 上記符号化ストリ一ムと一緒に上記アンシラリ一データを伝送するステップと を備えたことを特徴とするェンコ一ディング方法。
1 6. 入力ビデオデータをエンコードするためのエンコーディング装置において 上記入力ビデオデータが有してる固有情報を上記入力ビデオデータから抽出する 抽出手段と、
上記入力ビデオデータをェンコ一ドし、 符合化ストリームを生成する符号化手 段と、 上記符合化ス トリームと一緒に上記記固有情報が伝送されるように、 上記 符号化ストリーム中に上記固有情報を挿入する手段と
を備えたことを特徴をするェンコ一ディング装置。
1 7. 上記固有情報は、 上記符号化ス トリームのシーケンスレイヤのユーザデー タエリヤに挿入されることを特徴とする請求の範囲第 1 6項に記載のェンコーデ イング装置。
1 8. 上記固有情報は、 上記入力ビデオデータにおけるアクティブビデオのスタ 一ト位置を示す情報であって、
上記符号化手段は、 上記アクティブビデオのビデオデータを符号化することを 特徴とする請求の範囲第 1 6項に記載のェンコ一ディング装置。
1 9. 上記固有情報は、 上記符号化ス トリームのシーケンスレイヤにおいて、 V — p h a s e () と H— p h a s e () によって表されるシンタックスに基づい て記述されることを特徴とする請求の範囲第 1 6項に記載のェンコ一ディング装
20. 入力ビデオデータをェンコ一ドするためのェンコ一ディング方法において 上記入力ビデオデータが有している固有情報を上記入力ビデオデータから抽出 するステップと、
上記入力ビデオデータをェンコ一ドし、 符号化ストリームを生成するステップ と、
上記符号化ストリームと一緒に上記記固有情報が伝送されるように、 上記符号 化ストリーム中に上記固有情報を挿入するステップと
を備えたことを特徴とするェンコ一ディング方法。
2 1 . 入力ビデオデータをエンコードするためのエンコーディング装置において 上記入力ビデオデータに対するアクティブビデオのフェーズを示すフエ一ズ情 報を、 上記入力ビデオデータから得る手段と、
上記入力ビデオデータをェンコ一ドし、 符号化ス トリームを生成する手段と、 上記符号化ストリームと一緒に上記フヱーズ情報が伝送されるように、 上記符 号化ストリームに上記フェーズ情報を付加する手段と
を備えたことを特徴とするェンコ一ディング装置。
2 2 . 入力ビデオデータをェンコ一ドするためのエンコーディング方法において 上記入力ビデオデータに対するアクティブビデオのフヱーズを示すフェーズ情 報を、 上記入力ビデオデータから得るステップと、
上記入力ビデオデータをェンコ一ドし、 符号化ストリームを生成するステップ と、
上記符号化ストリームと一緒に上記フ-ーズ情報が伝送されるように、 上記符 号化ストリームに上記フェーズ情報を付加するステップと
を備えたことを特徴とするェンコ一ディング方法。
2 3 . 入力ビデオデータをェンコ一ドするためのエンコーディング装匱において 上記入力ビデオデータに対するァクティブビデオのフエーズを示すフェーズ情 報を、 上記入力ビデオデータから得る手段と、
上記入力ビデオデータをェンコ一ドし、 符号化ストリームを生成する手段と、 上記符号化ストリームのシーケンスレイヤに上記フエ一ズ情報を記述する手段 と
を備えたことを特徴とするェンコ一ディング装置。
2 4 . 入力ビデオデータをェンコ一ドするためのェンコ一ディング方法において 上記入力ビデオデータに対するアクティブビデオのフェーズを示すフエ一ズ情 報を、 上記入力ビデオデータから得るステップと、
上記入力ビデオデータをェンコ一ドし、 符号化ストリームを生成するステップ と、
上記符号化ストリームのシーケンスレイヤに上記フェーズ情報を記述するステ ップと
を備えたことを特徴とするエンコーディング方法。
2 5 . 入力ビデオデータをェンコ一ドすることによって生成された符号化ストリ ームをデコードするためのデコーディング装置において、
上記符号化ストリームから、 上記符号化ストリーム中に含まれていアンシラリ 一データを抽出する抽出手段と、
上記符号化ストリームをデコ一ドし、 復号化ビデオデータを生成する復号化手 段と、
上記復号化ビデオデータのブランキング期間に、 上記アンシラリ一データを多 重化する多重化手段と を備えたことを特徴とするデコーディング装置。
2 6 . 上記抽出手段は、 上記符号化ス トリームのシンタックスをパージングする ことによって、 上記符号化ストリームのピクチャレイヤのユーザデータエリアか ら上記アンシラリーデータを抽出することを特徴とする請求の範囲第 2 5項に記 載のデコーディング装置。
2 7 . 上記符号化ス トリーム中には、 上記入力ビデオデータにおいて上記アンシ ラリーデータが挿入されていたフィールドを示すフィールド I Dが上記アンシラ リ—データと関連付けて記述されており、
上記多重化手段は、 上記フィールド I Dによって指定されたフィールドに上記 アンシラリ一データを多重化することを特徴とする請求の範囲第 2 5項に記載の デコーディング装置。
2 8 . 上記符号化ストリーム中には、 上記入力ビデオデータにおいて上記アンシ ラリ一データが挿入されていたラインを示すライン番号が上記アンシラリーデ一 タと関連付けて記述されており、
上記多重化手段は、 上記ライン番号によって指定されるラインに、 上記アンシ ラリーデータを多重化することを特徴とする請求の範囲第 2 5項に記載のデコー デイング装置。
2 9 . 上記アンシラリーデータは、 上記符合化ス トリームのピクチャレイヤの A n c i 1 1 a r y— d a t a () の中に記述されていることを特徴とする請求の 範囲第 2 5項に記載のデコーディング装置。
3 0 . 入力ビデオデータをエンコードすることによって生成された符号化ストリ ームをデコ一ドするためのデコーディング方法において、 上記符号化ストリームから、 上記符号化ストリーム中に含まれていアンシラリ —データを抽出するステップと、
上記符号化ス トリームをデコードし、 複号化ビデオデータを生成するステップ と、
上記複号化ビデオデータのブランキング期間に、 上記アンシラリーデータを多 重化するステップと
を備えたことを特徴とするデコーディング方法。
3 1 . 入力ビデオデータを符号化することによって生成された符号化ストリーム をデコードするためのデコ一ディング装置において、
上記符号化ス トリームのシンタックスを解析することによって、 上記符号化ス トリーム中に含まれていアンシラリ一データを得る手段と、
上記符号化ストリームをデコードし、 複号化ビデオデータを生成する復号化手 段と、
上記入力ビデオデータと上記符号化ビデオデータとが同じアンシラリーデータ を有するように、 上記複号化ビデオデータに上記アンシラリ一データを多重化す る手段と
を備えたことを特徴とするデコーディング装置。
3 2 . 入力ビデオデータを符号化することによって生成された符号化ストリーム をデコ一ドするためのデコーディング方法において、
上記符号化ストリームのシンタックスを解析することによって、 上記符号化ス トリーム中に含まれていアンシラリーデ一タを得るステップと、
上記符号化ストリームをデコードし、 複号化ビデオデータを生成するステップ と、
上記入力ビデオデータと上記符号化ビデオデータとが同じアンシラリーデータ を有するように、 上記複号化ビデオデータに上記アンシラリーデータを多重化す るステップと
を備えたことを特徴とするデコ一ディング方法。
3 3 . 入力ビデオデータを符号化することによって生成された符号化ストリーム をデコードするためのデコーディング装置において、
上記符号化ストリームのピクチャエリアに含まれていアンシラリーデータを、 上記符号化ストリ一ムから得る手段と、
上記符号化ストリームをデコードし、 復号化ビデオデータを生成する復号化手 段と、
上記復号化ビデオデータと上記アンシラリ一データとを多重化することによつ て、 上記入力ビデオデータを同じデータを生成する手段と
を備えたことを特徴とするデコーディング装置。
3 4 . 入力ビデオデータを符号化することによって生成された符号化ストリーム をデコードするためのデコーディング方法において、
上記符号化ストリームのピクチャエリアに含まれていアンシラリ一データを、 上記符号化ストリ一ムから得るステップと、
上記符号化ストリームをデコードし、 複号化ビデオデータを生成するステップ と、
上記復号化ビデオデータと上記アンシラリ一データとを多重化することによつ て、 上記入力ビデオデータを同じデータを生成するステップと
を備えたことを特徴とするデコーディング方法。
3 5 . 入力ビデオデータをェンコ一ドすることによって生成された符合化ストリ ームをデコードするためのデコーディング装置において、
上記符号化ス トリームから、 上記符号化ストリ一ム中に含まれている情報であ つて、 上記入力ビデオデータの固有情報を抽出する抽出手段と、 上記符号化ストリームをデコードし、 複号化ビデオデータを生成する複号化手 段と、
上記固有情報に基づいて、 上記複号化ビデオデータからベースバンドビデオデ ータを生成する生成手段と
を備えたことを特徴とするデコーディング装置。
3 6 . 上記抽出手段は、 上記符号化ス トリームのシンタックスをパージングする ことによって、 上記符号化ス トリームのシーケンスレイヤのユーザデータエリア から上記固有情報を抽出することを特徴とする請求の範囲第 3 5項に記載のデコ 一ディング装置。
3 7 . 上記固有情報は、 上記入力ビデオデータにおけるアクティブビデオの位置 を示す情報であって、 上記符号化ス トリームのシーケンスレイヤにおいて、 V— h a s e () と H一 p h a s e () によって表されるシンタックスに基づいて 記述されていることを特徴とする請求の範囲第 3 5項に記載のデコーディング装
3 8 . 上記固有情報は、 上記入力ビデオデータにおけるアクティブビデオの位置 を示す情報であって、
上記生成手段は、 上記固有情報に基づいて、 上記入力ビデオデータにおけるァ クティブビデオの位置と同じ位置に、 上記復号化ビデオデータがマツピングされ たベースバンドビデオデータを生成することを特徴とする請求の範囲第 3 5項に 記載のデコ一ディング装置。
3 9 . 上記固有情報は、 上記入力ビデオデータにおけるアクティブビデオの位置 を示す情報であって、
上記生成手段は、 上記固有情報に基づいて、 上記複号化ビデオデータに対して プランキング期間を付加することによつてべ一スパンドビデオデータを生成する ことを特徴とする請求の範囲第 3 5項に記載のデコ一ディング装置。
4 0 . 入力ビデオデータをエンコードすることによって生成された符合化ストリ ームをデコードするためのデコーディング方法において、
上記符号化ストリ一ムから、 上記符号化ストリーム中に含まれている情報であ つて、 上記入力ビデオデータの固有情報を抽出するステップと、
上記符号化ストリームをデコードし、 復号化ビデオデータを生成するステップ と、
上記固有情報に基づいて、 上記復号化ビデオデータからベースバンドビデオデ ータを生成するステップと
を備えたことを特徴とするデコ一ディング方法。
4 1 . 入力ビデオデータをェンコ一ドすることによって生成された符号化ストリ ームをデコードするためのデコーディング装置において、
上記符号化ストリームから、 上記符号化ストリーム中に含まれている情報であ つて、 上記入力ビデオデータの固有情報を抽出する抽出手段と、
上記符号化ストリームをデコードし、 複号化ビデオデータを生成する復号化手 段と、
上記固有情報に基づいて、 上記復号化ビデオデータを処理する手段と を備えたことを特徴とするデコーディング装置。
4 2 . 入力ビデオデータをェンコ一ドすることによって生成された符号化ストリ ームをデコードするためのデコーディング方法において、
上記符号化ストリームから、 上記符号化ストリ一ム中に含まれている情報であ つて、 上記入力ビデオデータの固有情報を抽出するステップと、
上記符号化ストリ一ムをデコードし、 復号化ビデオデータを生成するステップ と、
上記固有情報に基づいて、 上記複号化ビデオデータを処理するステップと を備えたことを特徴とするデコ一ディング方法。
4 3 . 入力ビデオデ一タをェンコ一ドすることによって生成された符号化ストリ ームをデコードするためのデコーディング装置において、
上記符号化ストリームから、 上記符号化ストリーム中に含まれている情報であ つて、 上記入力ビデオデータの固有情報を抽出する抽出手段と、
上記符号化ストリ一ムをデコードし、 複号化ビデオデータを生成する複号化手 段と、 上記固有情報に基づいて、 上記復号化ビデオデータを処理する手段と を備えたことを特徴とするデコーディング装置。
4 4 . 入力ビデオデ一タをェンコ一ドすることによって生成された符号化ストリ —ムをデコードするためのデコーディング方法において、
上記符号化ストリ一ムから、 上記符号化ストリ一ム中に含まれている情報であ つて、 上記入力ビデオデ一タの固有情報を抽出するステップと、
上記符号化ストリ一ムをデコードし、 複号化ビデオデータを生成するステップ と、
上記固有情報に基づいて、 上記復号化ビデオデータを処理するステップと を備えたことを特徴とするデコーディング方法。
4 5 . 入力ビデオデータを符号化するエンコーディング手段と、 上記符号化手段 によって符号化された符号化ストリームを受け取って、 上記符号化ストリームを 復号化し複号化ビデオデータを生成するデコーディング手段とを備えたコーディ ングシステムにおいて、
上記ェンコ一ディング手段は、
上記符号化ストリ一ムを生成するために上記入力ビデオデータを符号化する手 段と、
上記入力ビデオデータに付与されているアンシラリーデータを上記符号化ス ト リーム中に挿入する手段とを備え、
上記デコーディング手段は、
上記復号化ビデオデータを生成するために上記符号化ストリームを復号化する 手段と、
上記符号化ストリームと共に伝送されてきたアンシラリーデータを、 上記復号 化ビデオデータに多重化する手段とを備えていることを特徴とするコーディング システム。
4 6 . 入力ビデオデータを符号化するエンコーディングプロセスと、 上記ェンコ —ディングプロセスによって符号化された符号化ストリームを受け取って、 上記 符号化ストリームを復号化するデコーディングプロセスとを行うコーディングシ ステムを使用して、 上記入力ビデオデータに対して符号化プロセス及び複号化プ 口セスを行うためのコーディング方法において、
上記ェンコ一ディングプロセスは、
上記符号化ス トリームを生成するために上記入力ビデオデータを符号化するス テツプと、 上記入力ビデオデータに関連するアンシラリーデータを上記符号化ス トリーム中に挿入するステップとを含み、
上記デコーディングプロセスは、
上記復号化ビデオデータを生成するために上記符号化ス トリームを複号化するス テツプと、 上記符号化ストリ一ムと共に伝送されてきたアンシラリーデータを、 上記複号化ビデオデータに多重化するステップとを含んでいる
ことを特徴とするコーディング方法。
4 7 . 入力ビデオデータを符号化するエンコーディング手段と、 上記符号化手段 によって符号化された符号化ストリームを受け取って、 上記符号化ストリームを 復号化し復号化ビデオデータを生成するデコーディング手段とを備えたコーディ ングシステムにおいて、
上記ェンコ一ディング手段は、
上記符号化ストリ一ムを生成するために上記入力ビデオデータを符号化する手 段と、 上記入力ビデオデータが有してる固有情報を上記符号化ス トリーム中に挿 入する手段とを備え、
上記デコーディング手段は、
上記複号化ビデオデータを生成するために上記符号化ス トリームを復号化する手 段と、 上記符号化ス トリームと共に伝送されてきた固有情報に基づいて、 上記復 号化ビデオデータを処理する手段とを備えたことを特徴とするコーディングシス テム。
4 8 . 入力ビデオデータを符号化するエンコーディングプロセスと、 上記ェンコ —ディングプロセスによって符号化された符号化ストリームを受け取って、 上記 符号化ストリームを復号化するデコーディングプロセスとを行うコーディングシ ステムを使用して、 上記入力ビデオデータに対して符号化プロセス及び複号化プ 口セスを行うためのコーディング方法において、
上記ェンコ一ディングプロセスは、
上記符号化ストリームを生成するために上記入力ビデオデータを符号化するステ ップと、 上記入力ビデオデータに関連する固有情報を上記符号化ストリーム中に 挿入するステップとを含み、
上記デコーデイングプロセスは、
上記複号化ビデオデータを生成するために上記符号化ストリームを複号化するス テツプと、 上記符号化ス トリームと共に伝送されてきた固有情報に基づいて、 上 記復号化ビデオデータを処理するステップとを含んでいることを特徴とするコー ディング方法。
PCT/JP2000/000628 1999-02-05 2000-02-04 Dispositifs de codage et de decodage et methodes correspondantes, systeme de codage et procede correspondant WO2000046989A1 (fr)

Priority Applications (3)

Application Number Priority Date Filing Date Title
BR0004370-2A BR0004370A (pt) 1999-02-05 2000-02-04 Aparelhos e processos de codificação e de decodificação e sistema e método de codificação
US09/647,656 US6671323B1 (en) 1999-02-05 2000-02-04 Encoding device, encoding method, decoding device, decoding method, coding system and coding method
EP00902103A EP1069774A4 (en) 1999-02-05 2000-02-04 CODING AND DECODING DEVICES AND CORRESPONDING METHODS, ENCODING SYSTEM, AND CORRESPONDING METHOD

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP11/29378 1999-02-05
JP2937899 1999-02-05

Publications (1)

Publication Number Publication Date
WO2000046989A1 true WO2000046989A1 (fr) 2000-08-10

Family

ID=12274495

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2000/000628 WO2000046989A1 (fr) 1999-02-05 2000-02-04 Dispositifs de codage et de decodage et methodes correspondantes, systeme de codage et procede correspondant

Country Status (6)

Country Link
US (1) US6671323B1 (ja)
EP (1) EP1069774A4 (ja)
KR (1) KR100420740B1 (ja)
CN (1) CN100393128C (ja)
BR (1) BR0004370A (ja)
WO (1) WO2000046989A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002021845A1 (en) * 2000-09-06 2002-03-14 Sony United Kingdom Limited Combining video material and data
US7675555B2 (en) * 2003-03-25 2010-03-09 Sony Corporation Recording method, recording apparatus, recording medium, reproduction method, reproduction apparatus and image pickup apparatus

Families Citing this family (60)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4150083B2 (ja) * 1997-09-25 2008-09-17 ソニー株式会社 符号化ストリーム生成装置及び方法、ならびに編集システム及び方法
US6563953B2 (en) 1998-11-30 2003-05-13 Microsoft Corporation Predictive image compression using a single variable length code for both the luminance and chrominance blocks for each macroblock
US7284064B1 (en) 2000-03-21 2007-10-16 Intel Corporation Method and apparatus to determine broadcast content and scheduling in a broadcast system
DE60127963T2 (de) * 2000-07-21 2007-11-22 Matsushita Electric Industrial Co., Ltd., Kadoma Signalübertragungssystem
JP2002237973A (ja) * 2001-02-07 2002-08-23 Canon Inc 記録装置、記録方法及び撮像装置
US7982796B2 (en) * 2001-03-21 2011-07-19 Apple Inc. Track for improved video compression
JP4038996B2 (ja) * 2001-04-27 2008-01-30 松下電器産業株式会社 信号処理装置および信号処理方法
US20030005465A1 (en) * 2001-06-15 2003-01-02 Connelly Jay H. Method and apparatus to send feedback from clients to a server in a content distribution broadcast system
US7646816B2 (en) * 2001-09-19 2010-01-12 Microsoft Corporation Generalized reference decoder for image or video processing
US8943540B2 (en) 2001-09-28 2015-01-27 Intel Corporation Method and apparatus to provide a personalized channel
WO2003043314A1 (fr) * 2001-11-12 2003-05-22 Matsushita Electric Industrial Co., Ltd. Appareil de recueillement d'images
CN102316320B (zh) 2001-12-17 2014-07-09 微软公司 处理视频图像的方法
US20030135553A1 (en) * 2002-01-11 2003-07-17 Ramesh Pendakur Content-based caching and routing of content using subscription information from downstream nodes
KR100988006B1 (ko) * 2002-04-26 2010-10-18 소니 주식회사 복호 장치 및 방법, 그리고 기록 매체
US9948977B2 (en) 2003-01-09 2018-04-17 Avago Technologies General Ip (Singapore) Pte. Ltd. System, method, and apparatus for determining presentation time for picture without presentation time stamp
US7519615B2 (en) * 2002-08-07 2009-04-14 Intel Corporation Characterization of content based on the associated serialized data
US6891421B2 (en) * 2002-12-17 2005-05-10 Intel Corporation Method and apparatus for on die clock shrink burst mode
JP4676331B2 (ja) * 2003-02-04 2011-04-27 パナソニック株式会社 コード変換方法及びその装置
JP4324435B2 (ja) * 2003-04-18 2009-09-02 三洋電機株式会社 立体視用映像提供方法及び立体映像表示装置
CA2522022C (en) * 2003-04-10 2012-06-12 Matsushita Electric Industrial Co., Ltd. Information recording medium, device and method for recording information in information recording medium
US8175154B2 (en) * 2003-06-03 2012-05-08 General Instrument Corporation Method for restructuring a group of pictures to provide for random access into the group of pictures
US20050013498A1 (en) 2003-07-18 2005-01-20 Microsoft Corporation Coding of motion vector information
US7499495B2 (en) * 2003-07-18 2009-03-03 Microsoft Corporation Extended range motion vectors
US7724827B2 (en) 2003-09-07 2010-05-25 Microsoft Corporation Multi-layer run level encoding and decoding
US7620106B2 (en) * 2003-09-07 2009-11-17 Microsoft Corporation Joint coding and decoding of a reference field selection and differential motion vector information
US7961786B2 (en) * 2003-09-07 2011-06-14 Microsoft Corporation Signaling field type information
US8345754B2 (en) * 2003-09-07 2013-01-01 Microsoft Corporation Signaling buffer fullness
US7567617B2 (en) 2003-09-07 2009-07-28 Microsoft Corporation Predicting motion vectors for fields of forward-predicted interlaced video frames
US7623574B2 (en) * 2003-09-07 2009-11-24 Microsoft Corporation Selecting between dominant and non-dominant motion vector predictor polarities
US8107531B2 (en) * 2003-09-07 2012-01-31 Microsoft Corporation Signaling and repeat padding for skip frames
US8064520B2 (en) 2003-09-07 2011-11-22 Microsoft Corporation Advanced bi-directional predictive coding of interlaced video
US8582659B2 (en) 2003-09-07 2013-11-12 Microsoft Corporation Determining a decoding time stamp from buffer fullness
US7616692B2 (en) * 2003-09-07 2009-11-10 Microsoft Corporation Hybrid motion vector prediction for interlaced forward-predicted fields
US7590059B2 (en) * 2004-05-21 2009-09-15 Broadcom Corp. Multistandard video decoder
JP4262139B2 (ja) * 2004-06-01 2009-05-13 キヤノン株式会社 信号処理装置
US20050276548A1 (en) * 2004-06-10 2005-12-15 Jiang Fu Transcoding closed captioning data from broadcast DTV onto DVD
CN101005620B (zh) * 2004-09-03 2011-08-10 微软公司 为隔行扫描和逐行扫描视频编码和解码宏块和运动信息中的革新
US20060104356A1 (en) * 2004-11-15 2006-05-18 Microsoft Corporation Timing for decoder buffer examination
CN102270482A (zh) 2005-01-28 2011-12-07 松下电器产业株式会社 记录介质、程序和再现方法
KR101170799B1 (ko) 2005-05-21 2012-08-02 삼성전자주식회사 영상 압축 방법 및 그 장치와 영상 복원 방법 및 그 장치
US9077960B2 (en) 2005-08-12 2015-07-07 Microsoft Corporation Non-zero coefficient block pattern coding
JP2007081813A (ja) * 2005-09-14 2007-03-29 Canon Inc 記録装置
US8184660B2 (en) * 2005-09-15 2012-05-22 Lsi Corporation Transparent methods for altering the video decoder frame-rate in a fixed-frame-rate audio-video multiplex structure
US20070092149A1 (en) * 2005-10-24 2007-04-26 Sung Chih-Ta S Method and apparatus of high quality video compression
JP4221676B2 (ja) * 2006-09-05 2009-02-12 ソニー株式会社 情報処理装置および情報処理方法、記録媒体、並びに、プログラム
JP5062031B2 (ja) * 2008-05-19 2012-10-31 ソニー株式会社 信号処理装置、信号処理方法および信号処理プログラム
US20090295987A1 (en) * 2008-05-30 2009-12-03 Mediatek Inc. Apparatus and Method for Processing a Vertical Blanking Interval Signal
US8879895B1 (en) 2009-03-28 2014-11-04 Matrox Electronic Systems Ltd. System and method for processing ancillary data associated with a video stream
CA2766936C (en) 2009-06-25 2020-09-22 Visible World Inc. Time compressing video content
TWI398159B (zh) * 2009-06-29 2013-06-01 Silicon Integrated Sys Corp 具動態控制畫質功能的幀率轉換裝置及相關方法
CN102148958B (zh) * 2010-02-08 2016-04-20 北京中星微电子有限公司 一种在模拟视频数据中嵌入监控附加信息的方法及系统
US20110202509A1 (en) * 2010-02-16 2011-08-18 Microsoft Corporation Efficient extraction and compression of data
JP5583439B2 (ja) * 2010-03-17 2014-09-03 パナソニック株式会社 画像符号化装置及びカメラシステム
KR101803970B1 (ko) * 2011-03-16 2017-12-28 삼성전자주식회사 컨텐트를 구성하는 장치 및 방법
CN102298953B (zh) 2011-06-03 2014-04-30 武汉纺织大学 带保护字的二维游程长度受限约束的编解码器及使用方法
US8929290B2 (en) * 2011-08-26 2015-01-06 Qualcomm Incorporated In-band signaling to indicate end of data stream and update user context
US9008308B2 (en) * 2012-02-08 2015-04-14 Vixs Systems, Inc Container agnostic decryption device and methods for use therewith
KR20180019511A (ko) * 2015-03-31 2018-02-26 리얼네트웍스 인코포레이티드 압축된 비디오 비트스트림에 동반 메시지 데이터 포함 시스템들 및 방법들
US10127398B2 (en) 2015-09-18 2018-11-13 Rovi Guides, Inc. Methods and systems for implementing parental controls
JP2023044846A (ja) * 2021-09-21 2023-04-03 キオクシア株式会社 データ伸長装置、データ圧縮装置、及びメモリシステム

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US574184A (en) 1896-12-29 Compound tube
JPH0686250A (ja) * 1992-09-02 1994-03-25 Nec Corp Tv信号伝送装置
WO1995015660A1 (en) 1993-12-03 1995-06-08 Scientific-Atlanta, Inc. Digital video transmitting system
JPH07298212A (ja) * 1994-04-26 1995-11-10 Sony Corp テレシネ装置、画像レート変換装置及び画像圧縮装置
EP0740474A2 (en) 1995-04-27 1996-10-30 Oki Electric Industry Co., Ltd. Video coding and decoding method and system with teletext capability
JPH0946705A (ja) * 1995-08-01 1997-02-14 Matsushita Electric Ind Co Ltd ディジタルデータ伝送方法
JPH09261195A (ja) * 1996-03-25 1997-10-03 Sony Corp 送信装置及び受信装置並びに送受信装置
WO1998005167A1 (en) 1996-07-30 1998-02-05 Tiernan Communications, Inc. System and method for digitally encoding and compressing vbi signals
JPH10150630A (ja) * 1996-09-18 1998-06-02 Victor Co Of Japan Ltd デジタルディスク再生装置
EP0854648A2 (en) 1997-01-16 1998-07-22 Nextlevel Systems, Inc. Waveform generator for insertion of data into digital television signals
EP0854654A2 (en) * 1997-01-16 1998-07-22 Nextlevel Systems, Inc. Communication of VBI data in digital television data streams

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69122595T2 (de) 1990-12-27 1997-03-20 Toshiba Kawasaki Kk Aufzeichnungs- und Abspielgerät
JP3196906B2 (ja) 1992-08-21 2001-08-06 富士ゼロックス株式会社 画像信号の符号化装置
JP3163830B2 (ja) 1993-03-29 2001-05-08 ソニー株式会社 画像信号伝送方法及び装置
NL9301358A (nl) 1993-08-04 1995-03-01 Nederland Ptt Transcodeerinrichting.
US5745184A (en) * 1993-08-20 1998-04-28 Thomson Consumer Electronics, Inc. Closed caption system for use with compressed digital video transmission
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
TW377935U (en) * 1994-08-10 1999-12-21 Gen Instrument Corp Dram mapping for a digital video decompression processor
GB9501736D0 (en) 1995-01-30 1995-03-22 Snell & Wilcox Ltd Video signal processing
US5699124A (en) * 1995-06-28 1997-12-16 General Instrument Corporation Of Delaware Bandwidth efficient communication of user data in digital television data stream
US5598415A (en) * 1995-08-04 1997-01-28 General Instrument Corporation Of Delaware Transmission of high rate isochronous data in MPEG-2 data streams
JP4150083B2 (ja) * 1997-09-25 2008-09-17 ソニー株式会社 符号化ストリーム生成装置及び方法、ならびに編集システム及び方法

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US574184A (en) 1896-12-29 Compound tube
JPH0686250A (ja) * 1992-09-02 1994-03-25 Nec Corp Tv信号伝送装置
WO1995015660A1 (en) 1993-12-03 1995-06-08 Scientific-Atlanta, Inc. Digital video transmitting system
JPH07298212A (ja) * 1994-04-26 1995-11-10 Sony Corp テレシネ装置、画像レート変換装置及び画像圧縮装置
EP0740474A2 (en) 1995-04-27 1996-10-30 Oki Electric Industry Co., Ltd. Video coding and decoding method and system with teletext capability
JPH0946705A (ja) * 1995-08-01 1997-02-14 Matsushita Electric Ind Co Ltd ディジタルデータ伝送方法
JPH09261195A (ja) * 1996-03-25 1997-10-03 Sony Corp 送信装置及び受信装置並びに送受信装置
WO1998005167A1 (en) 1996-07-30 1998-02-05 Tiernan Communications, Inc. System and method for digitally encoding and compressing vbi signals
JPH10150630A (ja) * 1996-09-18 1998-06-02 Victor Co Of Japan Ltd デジタルディスク再生装置
EP0854648A2 (en) 1997-01-16 1998-07-22 Nextlevel Systems, Inc. Waveform generator for insertion of data into digital television signals
EP0854654A2 (en) * 1997-01-16 1998-07-22 Nextlevel Systems, Inc. Communication of VBI data in digital television data streams

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
DUTTA; DIMITROVA: "Conference Record of the Asilomar Conference on Signals, Systems and Computers", October 1995, IEEE COMPUTER SOCIETY PRESS, article "Smart Video Streams: 101 Uses of the User Data Field in MPEG", pages: 1462 - 1466
See also references of EP1069774A4 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002021845A1 (en) * 2000-09-06 2002-03-14 Sony United Kingdom Limited Combining video material and data
US7831127B2 (en) 2000-09-06 2010-11-09 Sony United Kingdom Limited Combining video material and data
US8494339B2 (en) 2000-09-06 2013-07-23 Sony United Kingdom Limited Combining material and data
US7675555B2 (en) * 2003-03-25 2010-03-09 Sony Corporation Recording method, recording apparatus, recording medium, reproduction method, reproduction apparatus and image pickup apparatus

Also Published As

Publication number Publication date
KR100420740B1 (ko) 2004-03-02
CN100393128C (zh) 2008-06-04
KR20010042441A (ko) 2001-05-25
CN1293868A (zh) 2001-05-02
EP1069774A4 (en) 2008-09-17
US6671323B1 (en) 2003-12-30
EP1069774A1 (en) 2001-01-17
BR0004370A (pt) 2000-12-19

Similar Documents

Publication Publication Date Title
KR100420740B1 (ko) 인코딩 장치, 인코딩 방법, 디코딩 장치, 디코딩 방법,코딩 시스템, 코딩 방법
US8160134B2 (en) Encoding system and method, decoding system and method, multiplexing apparatus and method, and display system and method
JP3672185B2 (ja) コーディングシステム及びこれを用いた装置並びに記録媒体
JP3694888B2 (ja) 復号装置および方法、符号化装置および方法、情報処理装置および方法、並びに記録媒体
US6529550B2 (en) Coded stream splicing device and method, and coded stream generating device and method
KR100766740B1 (ko) 부호화 히스토리 정보를 이용하는 데이터 변환 장치 및 방법
JP3874153B2 (ja) 再符号化装置および再符号化方法、符号化装置および符号化方法、復号装置および復号方法、並びに、記録媒体
JP2005304065A (ja) 復号装置および復号方法、符号化装置および符号化方法、情報処理装置および情報処理方法、並びに、記録媒体
JP3890838B2 (ja) 符号化ストリーム変換装置、および、符号化ストリーム変換方法、並びに、記録媒体
JP4139983B2 (ja) 符号化ストリーム変換装置、および、符号化ストリーム変換方法、並びに、ストリーム出力装置、および、ストリーム出力方法
JP3584460B2 (ja) ビットストリーム変換装置および方法、並びに提供媒体
JP2000228768A (ja) デジタル信号伝送装置および方法、並びに提供媒体
JP2004328771A (ja) エンコーディング装置及び方法、デコーディング装置及び方法、並びに記録媒体
JP4543321B2 (ja) 再生装置及び方法
JP4539637B2 (ja) ストリーム記録装置およびストリーム記録方法、ストリーム再生装置およびストリーム再生方法、ストリーム伝送装置およびストリーム伝送方法、並びに、プログラム格納媒体
JP4482811B2 (ja) 記録装置及び方法
JP2000228769A (ja) デジタル信号伝送装置および方法、デジタル信号受信装置および方法、並びに提供媒体
JP2006109513A (ja) 符号化装置および方法、並びに記録媒体
JP2007259492A (ja) 情報処理装置および方法

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 00800107.3

Country of ref document: CN

AK Designated states

Kind code of ref document: A1

Designated state(s): BR CN JP KR US

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): DE FR GB IT NL

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: 1020007011036

Country of ref document: KR

WWE Wipo information: entry into national phase

Ref document number: 2000902103

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 09647656

Country of ref document: US

WWP Wipo information: published in national office

Ref document number: 2000902103

Country of ref document: EP

WWP Wipo information: published in national office

Ref document number: 1020007011036

Country of ref document: KR

WWG Wipo information: grant in national office

Ref document number: 1020007011036

Country of ref document: KR