WO2001063938A1 - Video encoding apparatus and video encoding method - Google Patents
Video encoding apparatus and video encoding method Download PDFInfo
- Publication number
- WO2001063938A1 WO2001063938A1 PCT/JP2001/001514 JP0101514W WO0163938A1 WO 2001063938 A1 WO2001063938 A1 WO 2001063938A1 JP 0101514 W JP0101514 W JP 0101514W WO 0163938 A1 WO0163938 A1 WO 0163938A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- block information
- code amount
- video encoding
- variable
- counting
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims description 51
- 238000012545 processing Methods 0.000 claims abstract description 47
- 238000004364 calculation method Methods 0.000 claims description 24
- 230000001186 cumulative effect Effects 0.000 claims description 11
- 230000010354 integration Effects 0.000 claims description 5
- 230000001131 transforming effect Effects 0.000 claims description 4
- 239000013598 vector Substances 0.000 description 8
- 238000010586 diagram Methods 0.000 description 7
- 238000003780 insertion Methods 0.000 description 6
- 230000037431 insertion Effects 0.000 description 6
- 238000013139 quantization Methods 0.000 description 6
- 238000000638 solvent extraction Methods 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 3
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 239000003550 marker Substances 0.000 description 2
- 230000003139 buffering effect Effects 0.000 description 1
- 230000002542 deteriorative effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000007429 general method Methods 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
- H04N21/44004—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving video buffer management, e.g. video decoder buffer or video display buffer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/70—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/90—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
- H04N19/91—Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/23406—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving management of server-side video buffer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/2343—Processing 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/234354—Processing 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 altering signal-to-noise ratio parameters, e.g. requantization
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/236—Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
- H04N21/23611—Insertion of stuffing data into a multiplex stream, e.g. to obtain a constant bitrate
Definitions
- the present invention relates to a video encoding device and a video encoding method.
- the present invention relates to a video encoding device that encodes a signal of a digital moving image, and in particular, performs signal processing when a video signal such as a digital moving image is signal-processed by a predetermined encoding method.
- the present invention relates to a video encoding device that inserts a predetermined stuffing bit into a bitstream.
- a video coding apparatus for coding a video signal that is, a video signal
- the video signal is coded by a predetermined method and is divided into units having a predetermined coding amount. It is said that a stream must be output. That is, in order to prevent overflow or underflow from occurring in the buffer in the decoding device on the receiving side that receives the bit stream, the code on the output side of the bit stream is used. It is required that the code amount of the bit stream be controlled in the coding device.
- control of a quantization parameter and control of an encoding frame are performed, and the code amount is controlled to a predetermined code amount by these controls. Has been adjusted.
- MPEG-4 has been proposed as a video signal encoding method and is being put to practical use.
- stuffing is inserted in macroblock (MB) units.
- the stuff inserted in this macro block MB unit is called MB stuffing.
- MB stuffing it is a macro block.
- the coding method of the MB is specified, and the coding method is defined as MB type. In the MB type, any number of stacks are repeated until an MB (Intra) or an MB type indicating presence or absence of an inter (Inter) or a differential quantization scale (DQ uant) appears.
- the wing bit can be inserted.
- one unit of the stuffing bit to be inserted is defined as a 9-bit code string.
- stuffing is a method for preventing buffer underflow in a decoding device, and is usually performed for each macroblock MB (MB) in a bitstream. Insufficient code amount is calculated, and MB stuffing corresponding to the code amount is performed. That is, when the video signal is signal-processed by a predetermined method, the signal-processed signal is subjected to variable-length coding, and the generated code amount of the variable-length-coded signal does not reach the predetermined code amount. , And stuffing is performed. In this stuffing, for the code amount to be inserted, the lacking code amount is obtained, and stuffing corresponding to the code amount is performed.
- the macroblock MB (MB) stuffing can be inserted into the bitstream by using a variable-length coded macroblock MB.
- a method of inserting stuffing every time can be considered. For this reason, it is necessary to add a device for inserting stuffing at a stage before the transmission buffer for transmitting the bitstream.
- This additional device may be, for example, a buffer for temporarily storing a bit stream having no MB stuffing, or an MB stuffing during a bit stream. It is expected that the device will show the insertion point so that it can be inserted.
- Insertion of MB stuffing in the bitstream requires memory as a buffer, and the power consumption of this device is increased. Further, since an additional device is required, a circuit becomes large, power consumption increases, and there is a problem that a delay may occur in signal processing.
- Another object of the present invention is to perform variable-length encoding processing after stuffing is inserted into data to be encoded.
- An object of the present invention is to provide a video encoding device and a video encoding method capable of outputting a predetermined bitstream without increasing the number of circuits and without causing a delay.
- a signal processing means for orthogonally transforming a certain unit of video signal for each block constituting the video signal, quantizing the block, and generating block information
- Coding means for performing variable length coding on the block information of the integrated information for each block information
- Estimating calculation means for estimating a generated code amount after variable-length coding from the integrated block information and calculating a stuffing bit to be inserted for each block; Means for inserting the calculated stuffing bit into a predetermined portion of the integrated information, and converting the block information with the stuffing bit added to the coding means into a variable length code.
- a video encoding device for encoding is provided.
- the estimation calculation means calculates
- a first counting means for counting the quantized DCT coefficients included in the uncoded block information output from the signal processing means
- Average codeword length calculation means for calculating an average codeword length of block information when the block information is encoded based on outputs from the first and second count means;
- Estimating means for estimating the amount of code generated when certain block information input from the signal processing means to the integrating means is encoded
- a video encoding device further comprising:
- the estimating means includes:
- a video encoding device for estimating a generated code amount based on an estimation formula of (average codeword length) X (total number of quantized DCT coefficients).
- the average codeword length calculating means includes:
- a video coding device that calculates an average codeword length based on (cumulative generated code amount) / (cumulative number of quantized DCT coefficients).
- the estimation calculation means calculates
- a video encoding device further comprising a unit is provided. Further, according to the present invention,
- a video encoding method comprising:
- An encoding method is provided.
- FIG. 1 is a block diagram showing a configuration of a video encoding device according to one embodiment of the present invention.
- FIG. 2 is a block diagram showing the configuration of the signal processing unit 10 shown in FIG. FIG.
- FIG. 3 is a functional block diagram showing processing in the generated code amount estimating unit shown in FIG.
- FIG. 4 shows the target bit rate T br, the target frame rate T fr, and the signal-processed MAC processed by the signal processing unit 10 in the stuffing amount calculation unit 17 shown in FIG.
- This is a flowchart showing the process of calculating a target generated code amount T code (X) from the number of MBs (MB) Nmb (x).
- FIG. 5 shows the variable length coded MAC counted by the generated code amount counting unit 14 shown in FIG. 1 in the stuffing amount calculating unit 17 shown in FIG.
- 5 is a flowchart showing a process of obtaining a stuffing amount S (X) from a code amount E (X).
- Figure 6 shows the process of encoding the macroblock MB information when the stuffing is inserted and converting it to the bitstream output from the device shown in Fig. 1 and the macroblock.
- An explanatory diagram showing the structure of a bitstream including MB data is shown.
- FIG. 7 shows the process of encoding the macroblock MB information when no stuffing is inserted and converting it to the bit stream output from the device shown in Fig. 1, and
- FIG. 3 is an explanatory diagram showing a structure of a bit stream including data of a block block MB.
- 8A and 8B are a plan view illustrating a coding order of a video object plane and a plan view illustrating a relationship between a coded macroblock MB and a coded macroblock MB.
- FIG. 9 is a flowchart showing a process of obtaining a stuffing amount according to a modified embodiment of the present invention.
- a generated code amount counting unit 14 is used.
- the amount of code T code (x) and the amount of stuffing S ((S) to be inserted into the video packet from the estimated amount of code E (X) of the coded video packet calculated by the same processing as the processing shown in FIG. X) is a flow chart showing a process of obtaining X, and FIGS.
- FIG. 10A, 10B, 10 ⁇ and 100 show data output from the system shown in FIG. 1 according to a modified embodiment of the present invention.
- FIG. 7 is an explanatory diagram showing a data structure when a packet is inserted.
- FIG. 1 shows a block diagram of a video encoding device that performs variable-length encoding of a video signal, that is, a video signal, according to an embodiment of the present invention.
- the device shown in FIG. 1 includes a device control unit 20 for controlling each unit in the device and a video object display.
- a unit of video VOP
- a digitized video signal input in units of frames or fields is converted to a predetermined video signal compression format (MPE G-4 format or ITU- Signal processing for dividing into predetermined blocks, that is, macroblock MBs in accordance with the H.263 system of T Recommendation or a modified version of them, and signal processing and compression of the macroblock MBs It has a part 10.
- MPE G-4 format or ITU- Signal processing for dividing into predetermined blocks, that is, macroblock MBs in accordance with the H.263 system of T Recommendation or a modified version of them, and signal processing and compression of the macroblock MBs It has
- the signal processing section 10 includes a quantized DCT coefficient (Discrete Cosine Transform) section 24 and a quantization section 25.
- the digitized video signal input under the control of the control device 20 is subjected to orthogonal transform by the DCT unit 24 for each macro block MB, which is the minimum unit of a frame or a field. That is, the DCT coefficient obtained by the DCT operation is quantized independently for each of the DC (direct current) component and the AC (alternating current) component in the quantization unit 25, and the quantized DCT coefficient is expressed by It is output to the syntax generation unit 12 shown in FIG. 1 as a quantized DCT coefficient).
- DCT coefficient Discrete Cosine Transform
- the signal processing unit 10 shown in FIG. 2 further includes an inverse quantization unit 26 that inversely quantizes the quantized bit stream, and an inverse DCT that performs an inverse DCT transform on the inversely quantized DCT coefficients.
- the DCT coefficient is subjected to the inverse DCT transform to reproduce a decoded image as indicated by reference numeral 28, and the decoded image is input to the next frame or frame.
- the motion vector and the predicted reference image are output from the MC unit 29 based on a comparison between the two blocks in the unit of the block MB.
- the motion vector is output to the syntax generation unit 12 shown in FIG. 1 in the same manner as the texture (quantized DCT coefficient).
- the predicted reference image is compared with the next frame image before the DCT transform, and the difference is subjected to the DCT transform in the DCT section 24, the DCT coefficient is quantized, and the macroblock MB is decoded. Is output to the syntax generator 12.
- macro block MB (MB) information including the input texture (quantized DCT coefficient) and motion vector, and a sta- phing described later.
- the syntax according to the encoding mode based on the MPEG-4 standard is generated from the quantity, and this syntax is input to the variable length encoding unit 13.
- the control of this encoding mode is set by the device control unit 20.
- the syntax from the syntax generation unit 12 is sequentially coded with a variable length by the variable length coding processing unit 13, and the bit stream is variably coded. Is supplied to the transmission buffer 22 and transmitted according to the target bit rate set by the device control unit 10.
- the video encoding apparatus shown in FIG. 1 further includes a quantized DCT (distributed cosine transform) coefficient counting section 21, a variable-length encoding processing section 13, a generated code amount counting section 14, an average A code word length calculator 15, a generated code amount estimator 16, and a stuffing amount calculator 17 are provided.
- the device control unit 20 controls these units. It also controls the video signal input to the device, and controls the bitstream that the device should output.
- the control of the bit stream is the setting of a target generated code amount (target bit rate) or the number of frames (target frame rate), rate control, or error resilience. Includes setting of encoding mode, etc.
- variable-length coding unit 13 The output of the variable-length coding unit 13 is supplied to a generated code amount counting unit 16, and the generated code amount counting unit 16 counts the code amount and calculates the count value. Is supplied to the stuffing amount calculating section 17 and the average codeword length calculating section 15.
- the quantized DCT coefficient counting section 21 counts the quantized DCT coefficients included in the MB information generated by the signal processing section 10, and the count value is used as the average codeword length calculation section. 15 and the generated code amount estimation unit 16.
- the average codeword length calculator 15 is counted by the quantized DCT coefficient count unit 21 by the cumulative number of quantized DCT coefficients counted by the quantized DCT coefficient unit 21 and by the generated code amount count unit 14.
- the average codeword length L of the quantized DCT coefficient is calculated from the accumulated number of code amounts, and the average codeword length L is given to the code amount estimation unit 16. If the accumulated code amount is C sura and the accumulated number of quantized DCT coefficients is N sum, the average codeword length L is C sum / N sum.
- the cumulative number is the total number of generated code amounts or quantized DCT coefficients from the input start force of a certain frame to the processing of the corresponding macroblock MB. It is equivalent to a number.
- the generated code amount estimating unit 16 includes a quantized DCT coefficient N coef of a certain macroblock MB counted by the quantized DCT coefficient counting unit 21, and From the average codeword length of the quantized DCT coefficient calculated by the average codeword length calculation unit 16, it is expected that the macroblock MB will be generated by the variable length coding processing unit 13. The estimated value of the code amount to be calculated is calculated.
- the variable-length coding processing unit 13 calculates the estimated value before the syntax output from the syntax generation unit is subjected to the variable-length coding.
- X indicates the video object plane (VOP: Video Object Plane), that is, the frame or the number of the macroblock MB in the field. Assume a positive integer.
- the stuffing amount calculation unit 17 includes a target generated code amount (target bit rate) T br set by the device control unit 10 and a frame number (target frame rate).
- G) T fr, the target generated code amount T code) is calculated from the number of signal-processed macro blocks MB (MB) Nmb (x) in one frame obtained by the signal processing unit 11. I have.
- the predetermined total number of macroblocks MB (MB) per 1 V OP is Nvop
- the target generated code amount T code (x) is
- T code (x) (T br / ⁇ fr) X ( ⁇ mb ( ⁇ ) / ⁇ ⁇ )
- (T br / T fr) is the target bit rate per frame, that is, the target code amount in one video object plane.
- (Nmb (x) / N vop) is the ratio of the number of signaled macro block MBs to the total number of macro block MBs within one video object plane.
- the target generated code amount T code (x) is one video object after the Xth macroblock MB to be subjected to signal processing is encoded. It is defined as the target code amount to be generated cumulatively in the plane.
- coding MB (Hereinafter referred to as coding MB) target code amount Tmb ( X )
- Tmb (X) Tcode (x) — C (i)
- the estimated shortage code amount S (X) is obtained as follows. Is calculated.
- This S (x) becomes the amount of stuffing, and this value is given to the syntax generator 2.
- the amount of this stuffing is determined as an integral multiple of 9 bits as one unit.
- FIG. 1 The operation of the video encoding device shown in FIG. 1 will be described with reference to FIGS. 3 to 8B.
- image signals in the video object plane are sequentially input to the signal processing unit 10 as shown by arrows.
- the video signal is processed by the signal processing unit 10 in a macroblock MB unit as shown in FIGS.
- Macroblock MB information including (quantized DCT coefficients) and motion vectors is generated.
- the DCT coefficient of the texture (quantized DCT coefficient) is counted by the DCT coefficient counting unit 21 to calculate the code amount.
- the cumulative value of the code amount counted by the DCT coefficient counting section 21 is given to the average codeword length calculating section 15 as the cumulative number N sum of the quantized DCT coefficients.
- a syntax is generated by a syntax generation unit 12 based on the macroblock MB information, and this syntax is variable-length encoded by a variable-length encoding unit '13. Is done. The code amount of this coded bit stream is counted by the generated code amount counting section 14, and the accumulated value of the generated code amount is the same as the accumulated generated code amount C sum. Is given to the average codeword length calculation unit 15.
- This cumulative generated code amount C sum is the generated code generated after variable-length coding of the macroblock MB in the hatched area in the video object plane shown in FIG. 8B. It corresponds to the total number of issues.
- the estimated generated code amount E ( X ) is provided to a stuffing amount calculation unit 17.
- This stuffing amount calculation unit 17 has a target bit rate T br as shown in steps S41 and S42 of FIG.
- Nvop is given to the total number of macroblocks MB (MB) per one object plane VOP in parallel with the target frame rate Tfr, and is shown in step S44 in FIG.
- the number N mb (X) of signal-processed macroblocks MB (MB) in one object plane V ⁇ from the signal processing unit 10 is given.
- the target code amount (T br / T fr) in one video object plane is obtained as shown in step S43
- the target code amount in one video object plane is obtained as shown in step S45.
- the signal-processed macroblock MB (MB) rate (Nmb (X) ZN vop) at is obtained.
- the target generated code amount T code (x) of B is obtained.
- T code (x) (TbrZTfr) X (Nmb (x) / N vop)
- the target generated code amount T code (x) is obtained by coding the x-th macroblock MB by the variable-length coding processing unit 13. In this case, it corresponds to the target total code amount in the encoding video object plane VOP generated up to the X-th macroblock MB.
- T code (x) When this target generated code amount T code (x) is determined as shown in step 51 of FIG. 5, the variable-length coded macrob port supplied from the generated code amount count unit 14 is provided.
- the generated code amount of the X-th macroblock MB (MB) currently being encoded is compared with the generated code amount C) of the block MB and corresponds to the difference as shown in Fig. 8B.
- T mb (X) is required.
- the step is calculated from the average code length L and the total number of quantized DCT coefficients N coef of the coding macroblock MB, which are calculated as shown in steps S54 and S56.
- the estimated code amount E (X) of the encoded macroblock MB is calculated.
- the generated code amount T mb (x) is compared with the estimated code amount E (X), and when the estimated generated code amount is smaller than the target generated code amount, Then, as shown in step S58, the difference is set as the amount S (X) to be stuffed.
- the staffing is inserted as a macro block MB type (MB type) for each macro block MB information as shown in Fig. 6.
- the macroblock MB information is subjected to variable-length coding. And is output to the transmission buffer.
- the process proceeds as shown in FIG.
- the macro block MB information is variable-length coded without inserting any toughening.
- Fig. 6 shows the structure of macroblock MB data with stuffing inserted in the macroblock MB
- Fig. 7 shows the stuffing of macroblock MB with stuffing inserted.
- This shows the structure of the macro data.
- the macroblock MB data a plurality of variable-length-coded macroblock MB information are consecutively arranged, and as shown in Fig. 6, stuffing and motion vectors ( MV) and texture (quantized DCT coefficient) in the order of macroblock MB information.
- MV motion vector
- texture quantized DCT coefficient
- the quantized DCT coefficient count section 21 and the generated code amount count section 14 are cleared. Then, the processing described above for the next video object plane is started again.
- the method of inserting the stuffing at any time in units of macroblock MB has been described. Touching It is not necessary to decide whether or not to perform the stuffing and to insert the stuffing into the MAC block MB every time the stuffing is needed. For example, the total number of coded signals is measured up to a certain point, and only the last row of the video object plane (VOP) or the last macroblock MB is stuffed by the above-described method. May be inserted.
- VOP video object plane
- the method of performing the stuffing on a macroblock MB (MB) basis has been described, but the video bucket (VP: Video Packet) unit defined by MPEG-4 is used. May be staffed.
- the video bucket VP contains at least one adjacent MB to be coded together.
- the amount of generated code is also estimated in video packet VP units. Estimating the amount of generated codes in video packet VP units reduces the estimation accuracy slightly, but reduces the number of estimations and reduces the overall processing amount, which is effective for real-time processing.
- the coding of a data partitioning mode (Data Partitioning Mode) described below is particularly effective because a variable length coding process is performed for each video packet VP.
- the MB number X set above is set as the VP number X
- the target generated code amount T mb) of the encoded MB is set as the target generated code amount T vp) of the encoded VP.
- the calculations for the estimation are all the same.
- the generated code amount estimating unit 16 calculates the number N coef (j) obtained in the quantized DCT coefficient counting unit 21 shown in step S96 in FIG. 9 (in the video packet VP).
- an estimated value E (X) of the code amount generated by the variable-length coding processing unit 13 is calculated before the variable-length coding processing as shown in step S95 of FIG. Is done.
- the estimated code amount E (j) of the VP of the video bucket VP number j is
- j is a positive integer indicating the number of the video VP in the video object plane (VOP: Video Object Plane).
- X (j) is a positive integer indicating the number of the last macroblock MB included in the video packet VP of number j.
- the stuffing amount calculation unit 17 includes a target bit rate T br set by the device control unit 20, a target frame rate T fr, and a signal processed by the signal processing unit 10.
- the target generated code amount T code (x (j)) is calculated from the number of MBs N mb (X (j)) as shown in step S91 of FIG.
- the target generated code amount ⁇ code (x (j)) is
- T code (x (j)) (T br / T fr) X (N mb (x (j)) / N vop)
- T vp (j) T code (x (j)) - ⁇ C (i)
- the prediction that is, the estimated insufficient code amount S (j) is calculated as follows.
- step S97 when the estimated amount of generated code is larger than the target amount of generated code, as shown in step S97,
- the size of the video bucket VP may exceed the upper limit.
- a video bucket The size VP target ( ⁇ VP max) of the target video bucket VP is set by the device control unit 20 based on the upper limit value VP max of the size of the target VP.
- the size of the target video packet VP is smaller than the upper limit VPmax of the size of the video bucket VP as shown in step S99, and also depends on the estimation accuracy of the generated code amount. Is set to a numerical value considering the estimation error, for example, half of the upper limit.
- the amount of stuffing when encoding is performed in video packet VP units is based on the insufficient code amount S (j) and the estimated generated code amount.
- the sum of E (j) ensures that the target VP size does not exceed the VP target. That is, the target generated code amount T vp (j) of the encoded VP is compared with the target VP size VP target, and a value obtained by subtracting the estimated generated code amount E (j) of the encoded VP from a small value is obtained.
- the amount of buffering is S (j). This stuffing amount S (j) is provided to the syntax generation unit 21.
- the amount of staffing S (j) is the difference between the target VP size and the VP target. Determined by the difference.
- the amount of stuffing S ( j) is defined as the difference between the target VP size and the estimated amount of generated code E (j). If the target VP size exceeds the VP target and the estimated amount of generated code E (j) is smaller than the VP target, the stuffing amount S (j) becomes zero. No towing will be given.
- the above-described method of determining the amount of stuffing can be similarly applied to the encoding method in the data partitioning mode.
- FIGS. 10A to 10D show a bit stream in the data notation (Data Partitioning) mode.
- Data node 0— encoding in the partitioning mode is a macroblock MB (MB) of one or more macroblocks MB as shown in Figure 10D.
- Information motion vectors and textures (quantized DCT coefficients)
- variable-length coding is performed as shown in Fig. 10C.
- the above 1 and 2 are divided by inserting a motion marker as shown in Fig. 10B.
- the stat-fing bit is inserted into a macroblock MB (MB) type position.
- the video packets VP are separated from each other by Resync Markers as shown in FIG. 10A and are recorded.
- Such data notation jungle Data
- the above-described method is applied to the structure of the bit stream in the partitioning mode, and the code amount of the MB stuffing shown in FIG. 10B is determined.
- the header of the socket describes a resynchronization marker, a macroblock MB number, a quantization scale, and a HEC (Header Extension Code). This is followed by macro-block MB data.
- the amount of stuffing is estimated before the variable-length coding process, and the variable-length coding process is performed after the stuffing is performed.
- the variable-length coding process is performed after the stuffing is performed.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Description
Claims
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE2001604616 DE60104616T2 (de) | 2000-02-28 | 2001-02-28 | Videokodierungsverfahren und -vorrichtung |
US09/959,458 US6819712B2 (en) | 2000-02-28 | 2001-02-28 | Video encoding apparatus and video encoding method |
EP20010908152 EP1185108B1 (en) | 2000-02-28 | 2001-02-28 | Video encoding apparatus and video encoding method |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000-52457 | 2000-02-28 | ||
JP2000052457A JP4170555B2 (ja) | 2000-02-28 | 2000-02-28 | 映像符号化装置及び映像符号化方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2001063938A1 true WO2001063938A1 (en) | 2001-08-30 |
Family
ID=18573966
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2001/001514 WO2001063938A1 (en) | 2000-02-28 | 2001-02-28 | Video encoding apparatus and video encoding method |
Country Status (5)
Country | Link |
---|---|
US (1) | US6819712B2 (ja) |
EP (1) | EP1185108B1 (ja) |
JP (1) | JP4170555B2 (ja) |
DE (1) | DE60104616T2 (ja) |
WO (1) | WO2001063938A1 (ja) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4534106B2 (ja) * | 2000-12-26 | 2010-09-01 | 日本電気株式会社 | 動画像符号化システム及び方法 |
JP4349816B2 (ja) * | 2003-02-17 | 2009-10-21 | 株式会社リコー | 画像処理装置、画像圧縮装置、画像処理方法、画像圧縮方法、プログラム、及び記録媒体 |
JP2005203905A (ja) * | 2004-01-13 | 2005-07-28 | Sony Corp | 画像符号化装置、画像符号化方法並びに画像符号化プログラム |
WO2007011116A1 (en) * | 2005-07-20 | 2007-01-25 | Humax Co., Ltd. | Encoder and decoder |
KR100705971B1 (ko) | 2005-07-20 | 2007-04-12 | 주식회사 휴맥스 | 비트스트림 인코딩/디코딩 방법 및 장치 |
KR100807100B1 (ko) | 2006-07-11 | 2008-03-03 | 주식회사 휴맥스 | 통합 코덱 장치 및 방법 |
KR100767606B1 (ko) | 2006-03-31 | 2007-10-18 | 주식회사 휴맥스 | 통합 코덱 장치 및 방법 |
WO2007114586A1 (en) * | 2006-03-31 | 2007-10-11 | Humax Co., Ltd. | Device and method for unified codecs |
KR100970145B1 (ko) * | 2008-07-18 | 2010-07-14 | (주)휴맥스 | 부호화/복호화 방법 및 장치 |
US10805635B1 (en) * | 2016-03-22 | 2020-10-13 | NGCodec Inc. | Apparatus and method for coding tree unit bit size limit management |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06205393A (ja) * | 1993-01-08 | 1994-07-22 | Nippon Steel Corp | 動画像符号化情報発生量制御装置 |
JPH06350460A (ja) * | 1993-06-11 | 1994-12-22 | Victor Co Of Japan Ltd | 圧縮符号用エラー訂正回路 |
JPH0787444A (ja) * | 1993-07-16 | 1995-03-31 | Pioneer Electron Corp | 圧縮符号化データ記録方法 |
JPH0865683A (ja) * | 1994-08-17 | 1996-03-08 | Graphics Commun Lab:Kk | 動画像符号量制御方法と装置 |
JPH10155152A (ja) * | 1996-09-25 | 1998-06-09 | Matsushita Electric Ind Co Ltd | 画像圧縮符号化装置及び方法 |
JPH11122612A (ja) * | 1997-10-17 | 1999-04-30 | Kdd | 動画像の圧縮符号化装置 |
JPH11234671A (ja) * | 1998-02-12 | 1999-08-27 | Hitachi Ltd | 信号処理装置 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0453229B1 (en) * | 1990-04-17 | 1997-06-18 | Matsushita Electric Industrial Co., Ltd. | Method for transmission of variable length code |
US5392037A (en) * | 1991-05-21 | 1995-02-21 | Matsushita Electric Industrial Co., Ltd. | Method and apparatus for encoding and decoding |
JP2766919B2 (ja) * | 1991-06-07 | 1998-06-18 | 三菱電機株式会社 | ディジタル信号記録再生装置、ディジタル信号記録装置、ディジタル信号再生装置 |
KR100206261B1 (ko) * | 1992-02-28 | 1999-07-01 | 윤종용 | 디지탈 vtr의 영상신호 대역 압축장치 |
US5440345A (en) * | 1992-07-17 | 1995-08-08 | Kabushiki Kaisha Toshiba | High efficient encoding/decoding system |
JP3364281B2 (ja) * | 1993-07-16 | 2003-01-08 | パイオニア株式会社 | 時分割ビデオ及びオーディオ信号の同期方式 |
JP3224465B2 (ja) * | 1993-12-22 | 2001-10-29 | シャープ株式会社 | 画像符号化装置 |
US6094455A (en) * | 1996-09-25 | 2000-07-25 | Matsushita Electric Industrial Co., Ltd. | Image compression/encoding apparatus and system with quantization width control based on bit generation error |
KR100555164B1 (ko) * | 1997-07-25 | 2006-03-03 | 소니 가부시끼 가이샤 | 편집 장치, 편집 방법, 재부호화 장치, 재부호화 방법, 스플라이싱 장치 및 스플라이싱 방법 |
-
2000
- 2000-02-28 JP JP2000052457A patent/JP4170555B2/ja not_active Expired - Fee Related
-
2001
- 2001-02-28 EP EP20010908152 patent/EP1185108B1/en not_active Expired - Lifetime
- 2001-02-28 US US09/959,458 patent/US6819712B2/en not_active Expired - Fee Related
- 2001-02-28 WO PCT/JP2001/001514 patent/WO2001063938A1/ja active IP Right Grant
- 2001-02-28 DE DE2001604616 patent/DE60104616T2/de not_active Expired - Lifetime
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06205393A (ja) * | 1993-01-08 | 1994-07-22 | Nippon Steel Corp | 動画像符号化情報発生量制御装置 |
JPH06350460A (ja) * | 1993-06-11 | 1994-12-22 | Victor Co Of Japan Ltd | 圧縮符号用エラー訂正回路 |
JPH0787444A (ja) * | 1993-07-16 | 1995-03-31 | Pioneer Electron Corp | 圧縮符号化データ記録方法 |
JPH0865683A (ja) * | 1994-08-17 | 1996-03-08 | Graphics Commun Lab:Kk | 動画像符号量制御方法と装置 |
JPH10155152A (ja) * | 1996-09-25 | 1998-06-09 | Matsushita Electric Ind Co Ltd | 画像圧縮符号化装置及び方法 |
JPH11122612A (ja) * | 1997-10-17 | 1999-04-30 | Kdd | 動画像の圧縮符号化装置 |
JPH11234671A (ja) * | 1998-02-12 | 1999-08-27 | Hitachi Ltd | 信号処理装置 |
Non-Patent Citations (1)
Title |
---|
See also references of EP1185108A4 * |
Also Published As
Publication number | Publication date |
---|---|
EP1185108A1 (en) | 2002-03-06 |
US6819712B2 (en) | 2004-11-16 |
US20020186767A1 (en) | 2002-12-12 |
JP2001245296A (ja) | 2001-09-07 |
EP1185108B1 (en) | 2004-08-04 |
DE60104616D1 (de) | 2004-09-09 |
DE60104616T2 (de) | 2005-07-28 |
JP4170555B2 (ja) | 2008-10-22 |
EP1185108A4 (en) | 2004-01-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8345754B2 (en) | Signaling buffer fullness | |
US6826229B2 (en) | Device and method for coding video information | |
WO1999020051A1 (en) | Video data multiplexer, video data multiplexing control method, method and apparatus for multiplexing encoded stream, and encoding method and apparatus | |
JPH07203447A (ja) | ビデオ信号符号化装置 | |
KR20000071026A (ko) | 코딩 시스템내에서 속도 제어를 최적화하기 위한 장치 및 방법 | |
EP1825681A1 (en) | Quantizer parameter determination for video encoder rate control | |
US20130294502A1 (en) | Motion video encoding apparatus, motion video encoding method, and motion video encoding computer program | |
EP1661398A2 (en) | Method and apparatus for selection of scanning mode in dual pass encoding | |
WO2001063938A1 (en) | Video encoding apparatus and video encoding method | |
Kim et al. | A novel linear source model and a unified rate control algorithm for H. 263/MPEG-2/MPEG-4 | |
US20050036548A1 (en) | Method and apparatus for selection of bit budget adjustment in dual pass encoding | |
JP2003209837A (ja) | 動画像符号化方法及び動画像符号化装置 | |
WO2002080567A1 (en) | Image signal quantizing device and its method | |
US20090168891A1 (en) | Method for controlling video encoding bit rate based on transport packet length, and apparatus for coding video using the same | |
JP5772623B2 (ja) | 動画像符号化装置、動画像符号化方法及び動画像符号化プログラム | |
US6931069B2 (en) | Coding device and coding method | |
WO2003092302A1 (en) | Moving image transferring system, moving image encoding apparatus, moving image decoding apparatus, and moving image transferring program | |
Kim et al. | An accurate bit-rate control for real-time MPEG video encoder | |
JP3948597B2 (ja) | 動画像圧縮符号化送信装置、受信装置および送受信装置 | |
JPH11234671A (ja) | 信号処理装置 | |
JP2003116133A (ja) | 動画像圧縮符号化伝送品質制御方式および方法 | |
US8711927B2 (en) | System and method for video encoding | |
JP3934772B2 (ja) | 可変転送レート符号化方法および装置 | |
JPH10308944A (ja) | 符号化伝送方式 | |
JP2004147104A (ja) | 動画像符号化装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AK | Designated states |
Kind code of ref document: A1 Designated state(s): US |
|
AL | Designated countries for regional patents |
Kind code of ref document: A1 Designated state(s): DE GB |
|
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: 09959458 Country of ref document: US |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2001908152 Country of ref document: EP |
|
WWP | Wipo information: published in national office |
Ref document number: 2001908152 Country of ref document: EP |
|
WWG | Wipo information: grant in national office |
Ref document number: 2001908152 Country of ref document: EP |