CN101090499A - Method and apparatus for transcoding between hybrid video codec bitstreams - Google Patents

Method and apparatus for transcoding between hybrid video codec bitstreams Download PDF

Info

Publication number
CN101090499A
CN101090499A CN 200710127241 CN200710127241A CN101090499A CN 101090499 A CN101090499 A CN 101090499A CN 200710127241 CN200710127241 CN 200710127241 CN 200710127241 A CN200710127241 A CN 200710127241A CN 101090499 A CN101090499 A CN 101090499A
Authority
CN
China
Prior art keywords
frame
macro block
codec
output
motion vector
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN 200710127241
Other languages
Chinese (zh)
Inventor
斯蒂芬·F·布朗
马尔万·A·贾布里
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Dilithium Networks Pty Ltd
Dilithium Holdings Inc
Original Assignee
Dilithium Holdings Inc
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 Dilithium Holdings Inc filed Critical Dilithium Holdings Inc
Publication of CN101090499A publication Critical patent/CN101090499A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

A method and apparatus for performing transcoding between bitstreams coded by hybrid video codecs which uses fewer resources than decoding/decompressing the original bitstream and recoding/recompressing it to the second format. According to a specific embodiment, the present method can exploits the similarity of the standard video compression algorithms to, where possible, convert encoded parameters in the incoming bitstreams directly into encoded parameters which constitute compliant data for the outgoing bitstream.

Description

Between mixed video CODEC bit stream, carry out the method and apparatus of sign indicating number conversion
The application is that the denomination of invention submitted on July 15th, 2003 is the dividing an application of patent application of 03816861.8 (PCT/US2003/022175) for " carrying out the method and apparatus of sign indicating number conversion between mixed video CODEC bit stream ", application number.
The cross reference of related application
The application requires following U.S. Provisional Application No. and by reference its content is contained in this: the No.60/431054 that the No.60/417831 that the No.60/396891 that submitted on July 17th, 2002, on October 10th, 2002 submit and on December 4th, 2002 submit.
Technical field
Relate generally to telecommunication technology of the present invention.More particularly, the invention provides a kind of method and system, be used between mixed video CODEC (codec) bit stream, carrying out sign indicating number conversion (transcoding).Only say exemplarily that the present invention has been applied to telecommunication network environment, but can recognize that the present invention has much wide range of application.
Background technology
Along with advancing of time, telecommunication technology is also improving.Some standards be used to encode Voice ﹠ Video signal by communication link is arranged now.These standards make terminal can with the other-end interoperability of supporting the identical standard collection.For the terminal of not supporting the universal standard, only inserting optional equipment between equipment is that code converter (transcoder) Shi Caineng carries out interoperability.Code converter is translated as another standard with code signal from a standard.
The I frame is encoded as rest image, and can be independent of other frame ground and decode.
The P frame is encoded as poor with one or more I of front or P frame, to utilize the similitude in the multiframe.
Some mixed video codec standards for example MPEG-4 video codec are also supported " not coding " frame, and it comprises the not coded data after the frame header.The details of some example standards is provided in more detail below.
For example H.261, H.263, H.264 some standard is the macro block of 16 * 16 pictorial elements (pixel) with MPEG-4 video codec with the boundary of source frame of video.H.261, H.263 also each macro block further is subdivided into 68 * 8 pixel block with MPEG-4 video codec.Four 16 * 16 pixel brightness values corresponding to macro block in these pieces, all the other two pieces are corresponding to the sub-sampled chrominance components of macro block.H.264 video codec is subdivided into 24 4 * 4 pixel block with each macro block, and 16 are used for brightness, 8 colourities that are used for sub-sampling.
Mixed video codec uses similar techniques to convert the source macro block to coded macroblocks usually.The coding of each piece at first adopts spatial alternation, then conversion coefficient is quantized.We are called transition coding with this.H.261, H.263 use discrete cosine transform (DCT) in this stage with MPEG-4 video codec.H.264 video codec uses integer transform.
Use persistence length (run length) and variable-length (variable length) the non-zero quantization transform coefficient of further encoding of encoding.This second stage is called as VLC (variable length code) coding.Inverse process will be called VLC decoding and conversion decoding.Can 3 kinds of mode rice coded macroblockss:
The pixel value of " interior coding " (intra coded) macro block is directly from the source frame copy that is encoded and come.
The pixel value of " mutually coding " (inter coded) macro block is that pixel value from the frame of current source and the difference between the pixel value in the reference frame form.The value of reference frame is to derive by the coded data of the frame of preceding face code is decoded.The zone controlled of calculating the described reference frame that uses when poor is in following one or more motion vectors, and this vector has been specified macro block in the present frame and the displacement between its optimum Match in reference frame.Described (a plurality of) motion vector transmits with the quantization parameter of mutual frame (inter frames).If the difference of pixel value is enough little, then only need the described motion vector of transmission.
Usually, all mixed video codec are in the frequent difference to some extent in form of motion vector that they allowed, for example the scope of the resolution of the quantity of the motion vector of each macro block, vector, vector and whether allow vector to point to the outside of reference frame.The process of estimating motion vector is called " estimation ".It is to calculate one of the most intensive part in the hybrid video coders.
" coding " macro block is to compare the macro block that does not have marked change with the frame of front, and for these macro blocks not transmitting moving data or coefficient data.
The type of the macro block that comprises in the given frame depends on frame type.For the frame type that is related to this algorithm, allow following macro block (mb) type:
The I frame can only comprise interior coded macroblocks.
The P frame can comprise interior coding, coding and " coding " macro block mutually.
Before transmission macroblock encoding data, also use harmless variable length code (VLC coding) to compress described data.
Another different aspect of mixed video codec mutually is the video frame size that they are supported.MPEG-4 and H.264 support frame sign arbitrarily, restriction is width and highly is 16 multiple, and H.261 H.263 only supports limited frame sign to gather with baseline.According to the type of mixed video codec, also have other restrictions.
Sign indicating number conversion (tandem transcoding) before and after a kind of traditional code converting method is called.The code signal that code converter common complete decoding in front and back enters has the data of original (compression) form with generation, according to the desired destination standard initial data is carried out recompile then, to produce compressed signal.Though the front and back video transcoder is very simple, is considered to a kind of " brute force " method, has consumed a large amount of computational resources.Before and after the another kind of replaceable method of sign indicating number conversion be to use information in the motion vector in the incoming bit stream to estimate the motion vector of output bit flow.This replaceable method also has restriction, still is looked at as a kind of powerful technology.
From the above, needing improved mode to change between different telecommunications forms in effective and cost-effective mode.
Summary of the invention
According to the present invention, provide the multiple technology that is used for telecommunications.More particularly, the invention provides a kind of method and system, be used between mixed video codec bit stream, carrying out the sign indicating number conversion.Only say exemplarily that the present invention has been applied to telecommunication network environment, but can recognize that the present invention has much wide range of application.
Mixing codec is a kind of compression scheme, and it has utilized two kinds of methods to carry out data compression: source code and chnnel coding.Source code is that data are relevant, and has utilized the characteristic of data.For video, source code refers to following multiple technologies, for example extracts the conversion (for example discrete cosine transform or wavelet transformation) of the fundametal component of pixel according to transformation rule.Resulting conversion coefficient can be quantized usually to reduce data bandwidth (this is the lossy compression method part).On the other hand, chnnel coding and source are irrelevant, do not consider the implication of data because it has used the statistical attribute of data.The example of chnnel coding comprises statistical coding scheme for example Huffman encoding and arithmetic coding.Video coding uses Huffman encoding usually, and its statistics based on data takes place, and replaces the data that will send with symbol (for example ' 0 ' and ' 1 ' string).The data of higher frequency are represented with shorter string, thereby have reduced the amount of bits that is used for representing whole bit stream.
Another example of chnnel coding is a run length coding, and it has utilized the repeatability of data element in the stream.Therefore, transmission be not N continuous data element, but element and repeat count thereof.This notion is used in the video coding, scans with zigzag after with the DCT coefficient quantization in the transformation matrix.The higher-frequency component that this means the lower right-most portion that is positioned at transformation matrix is zero (after the quantification) normally, and when from matrix carry out saw-tooth sweep left to bottom right the time, the zero string that repeats has appearred.Run length coding has reduced the amount of bits that variable length code needs for 0 of these repetitions of representative.Above-mentioned source technology and Channel Technology are applicable to image and video coding.
The another kind of technology of using among the mixed video codec is estimation and compensation.The redundancy of the time correlation in the successive video frames is removed in estimation and compensation.This is by estimation and two main method in replenishing realize.At first, the pixel block of change (in the threshold value of definition " change ") is counted as identical, and uses motion vector to represent that how this pixel block has moved between two successive frames.Secondly, outside the required motion vector of any position change between two pieces of expression, also use prediction type to encode to reduce pixel block is carried out direct DCT, quantification, sawtooth operation, the required amount of bits of VLC coding, this is to realize by the difference between the immediate match block in the frame of the piece discussed and front is carried out this sequence of operation.This has significantly reduced the required amount of bits of piece that representative is discussed.This prediction type coding method has many variants of considering one or more predictive frames (later on to the multiple processing of forward manner).At last, the mistake that produces from the prediction type coding may accumulate, and before distortion begins to become significantly, piece is carried out interior coding (nonanticipating formula pattern is only considered the pixel in the present frame) cycle to its coding, and eliminates the mistake of thus-far accumulated.
According to embodiments of the invention, multiple technologies are provided, change with the sign indicating number that uses intellectual technology to carry out between two mixed video codec.Intelligence in the sign indicating number conversion is because utilized the similarity and the following fact of the universal coding principle that mixed video codec utilized, and the information that bit stream comprised that promptly comprises video sequence coding can greatly be simplified and transfers described bit stream to another kind of this processing of hybrid video coding standard.Compare therewith, the bit stream decoding that front and back video codes conversion will enter is for representing the YUV graphical representation of (brightness and chrominance representation) as pixel, and is the target video standard with the pixel recompile.All information relevant with source code or chnnel coding (redundancy of pixel redundancies, time correlation or movable information) all are not used in the bit stream.
According to an interchangeable embodiment, the present invention can reduce the computation complexity of code converter by utilizing relation between the required parameter of the parameter that can obtain from the decoding incoming bit stream and coding output bit flow.Can be by reducing the required computer cycle number of sign indicating number switch bit stream and/or reducing the required memory of sign indicating number switch bit stream and reduce described complexity.
When the output codec to code converter supported all features (motion vector format, frame sign and type of spatial transform) of input codec, described device comprised VLC decoder, Semantic mapping module that is used to enter bit stream and the VLC encoder that is used for output bit flow.VLC decoder decode bitstream syntax.The Semantic mapping module is converted to the decoding symbols of a codec and is applicable to the symbol of encoding with the 2nd codec form.Then described syntactic element is carried out the VLC coding to form output bit flow.
When the output codec to code converter did not support to import all features (motion vector format, frame sign and type of spatial transform) of codec, described device comprised the decoder module that is used to import codec, be used for will input codec symbol transition being the effectively module of output codec value and the coding module that is used to generate output bit flow.
The invention provides and be used for the incoming frame size conversion for effectively exporting the method for codec frame sign.A kind of method is to make the output frame size greater than the incoming frame size, and fills the unnecessary zone of output frame with constant color.Another kind method be the output frame size less than the incoming frame size, and prune (crop) incoming frame to create output frame.
The invention provides the method that is used for the input motion vector is converted to effective output movement vector.
If input codec supports every macro block that a plurality of motion vectors are arranged, and output codec does not support the motion vector of every macro block equal number, the quantity of then changing input vector is to mate available output configuration.If the motion vector quantity of every macro block that output codec supports is greater than the quantity of input motion vector, then duplicate input vector to form effective output vector, two motion vectors of every macro block can be converted to 4 motion vectors of every macro block by duplicating each input vector.On the contrary, if the motion vector of every macro block that output codec supports is less than input codec, input vector then capable of being combined is to form one or more output vectors.
If input codec supports following P frame, it has the reference frame of the frame that is not nearest decoding, and output codec does not support, then needs convergent-divergent input motion vector, and described then motion vector just can be with reference to the frame of nearest decoding.
If the resolution of the motion vector among the output codec is lower than the resolution of the motion vector among the input codec, then the input motion component of a vector is converted into immediate effective output movement component of a vector value.For example, if input codec supports 1/4th pixel motion compensations, and output codec only supports half-pixel motion compensation, and then any 1/4th picture element movement vectors in the input all are converted into immediate half pixel value.
But if but export the allowed band of the allowed band of the motion vector among the codec less than the motion vector among the input codec, then check the motion vector that institute decodes or calculates, and then adjust if necessary with in the scope that drops into permission.
Described device has a kind of optimized operation mode, is used to have the macro block as the input motion vector of effective output movement vector.This approach has other restriction, and promptly input and output codec must use identical spatial alternation, identical reference frame and identical quantification.In this pattern, quantization transform coefficient and inverse transformed pixel values thereof are routed directly to coded portion from the decoded portion of code converter, no longer need in the coded portion of code converter, carry out conversion, quantification, re-quantization and inverse transformation.
The invention provides the method that is used for the P frame is converted to the I frame.Employed method output frame type is set to the I frame, and is interior macro block with each macroblock coding, and does not consider the macro block (mb) type in the incoming bit stream.
The invention provides and be used for " coding " frame is converted to the P frame, or with its method that from sign indicating number switch bit stream, abandons.
One embodiment of the present of invention are a kind of method and apparatus, are used at MPEG-4 (simple class) and H.263 carry out sign indicating number conversion between (baseline) video codec.
In another specific embodiment, the invention provides a kind of method, in encoder or code converter, to reduce the use of memory, wherein provide the scope of motion vector, be limited in the predetermined neighborhood of the macro block that is being encoded.This method comprises: determine one or more pixels in the reference frame being used for motion compensation, and during the one or more pixels that provide in the scope with motion vector is arranged on the predetermined neighborhood of the macro block that is being encoded this macro block is encoded.This method comprises also coded macroblocks is stored in the buffer that this buffer has been preserved other coded macroblockss simultaneously.
Purpose of the present invention, feature and advantage have novelty, and have proposed particularly in claims known to the inventor.The present invention's (with regard to its tissue and mode of operation) with and other objects and advantages by with reference to following description and can obtain best understanding in conjunction with the accompanying drawings.
Description of drawings
The simplified block diagram of Fig. 1 shows according to embodiments of the invention, and the code converter from the first mixed video codec to the second mixed video codec connects, and wherein the 2nd codec supports the feature of a codec.
The simplified block diagram of Fig. 2 shows according to embodiments of the invention, from H.263 connecting to the code converter of MPEG-4.
The simplified block diagram of Fig. 3 shows according to embodiments of the invention, and the code converter from a mixed video codec to the second mixed video codec connects.
The simplified block diagram of Fig. 4 shows according to embodiments of the invention, the optimization pattern that the code converter from a mixed video codec to the second mixed video codec connects.
The simplified block diagram of Fig. 5 shows according to embodiments of the invention, H.263 how to use reference frame and macroblock buffer during the coding.
Embodiment
According to the present invention, the multiple technologies that are used for telecommunications are provided.The invention provides a kind of method and system, be used between mixed video CODEC bit stream, carrying out the sign indicating number conversion.Only be for example to say, the present invention has been applied to telecommunication network environment, but can recognize that the present invention has much wide range of application.
Method and apparatus of the present invention at length has been discussed below.In the following description, in order to describe, a large amount of details has been proposed thoroughly to understand the present invention.Used simple class MPEG-4 and baseline situation H.263 to describe and illustration.Method as described herein is general, be applicable to any mixed video codec between sign indicating number conversion.Those skilled in the art will recognize that, can use other steps, configuration and design and can not depart from the spirit and scope of the present invention.
Fig. 1 is according to embodiments of the invention, carries out the block diagram of the preferred embodiment of sign indicating number conversion between two codec, and wherein a codec (incoming bit stream) supports a subclass of the feature of the 2nd codec (output bit flow).This figure only is an example, should not limit the scope of claim inadequately.Those skilled in the art will recognize that many variants, replaceable scheme and correction.Incoming bit stream is by variable-length decoder 1 decoding.Any difference in decoding symbols semantic and their semantemes in the second video codec in the first video codec is resolved by semantic conversion module 2.Coefficient is carried out variable length code to form output bit flow 3.The output in stage 1 is the tabulation of codec symbol, for example macro block (mb) type, motion vector and a conversion coefficient.The output in stage 2 is previous tabulations, makes described symbol meet the required any correction of the 2nd codec but have.The output in stage 3 is the bit streams by the 2nd codec standard code.
Fig. 2 is according to embodiments of the invention, with baseline H.263 the bit stream sign indicating number be converted to the block diagram of the preferred embodiment of MPEG-4 bit stream.This figure only is an example, should not limit the scope of claim inadequately.Those skilled in the art will recognize that many variants, replaceable scheme and correction.Incoming bit stream is by variable-length decoder 4 decodings.If macro block is interior coded macroblocks, then desorption coefficient is carried out reverse interior prediction 6.The interior prediction of DC DCT coefficient is compulsory.AC coefficient prediction in whether code converter can be selected to use optionally.This processing is the contrary of interior prediction specified in the MPEG-4 standard.Described coefficient is carried out variable length code to form output bit flow 8.
When will be H.263 when the bit stream sign indicating number is converted to the MPEG-4 bit stream, code converter will insert MPEG-4 VisualObjectSequence (visualized objects sequence), VisualObject (visualized objects) and VideoObjectLayer (video object layer) head before first yard transformed video frame in output bit flow.Semantic conversion module 2 is inserted VisualObjectSequence, VisualObject and VideoObjectLayer before first character of input tabulation.
When will be H.263 when the bit stream sign indicating number is converted to the MPEG-4 bit stream, H.263 the picture headers in the bit stream be converted into VideoObjectPlane (video object plane) head in yard switch bit stream.Semantic conversion module 2 is all replaced with " VideoObjectPlane head " when each appearance " picture headers ".
When will be H.263 when the bit stream sign indicating number is converted to the MPEG-4 bit stream,, then convert them to the video packets head in the output bit flow if H.263 bit stream comprises the GOB head.Semantic conversion module 2 is all replaced with " video packets head " when each appearance " GOB head ".
Fig. 3 is according to embodiments of the invention, between two mixed video codec, carry out the block diagram of the preferred embodiment of sign indicating number conversion, wherein do not support to import the feature (motion vector format, frame sign and spatial alternation type) of codec to the output codec of code converter.This figure only is an example, should not limit the scope of claim inadequately.Those skilled in the art will recognize that many variants, replaceable scheme and correction.Carry out length-changeable decoding 9 to entering bit stream, to produce codec tabulate for example macro block (mb) type, motion vector and conversion coefficient.Conversion coefficient is carried out re-quantization 10, and inverse transformation 11 is transformed into pixel domain with described coefficient then, produces the decoded picture of current macro.For mutual coded macroblocks, this image is added 12 to the macroblock image through motion compensation that recovers from reference frame 14.This comprises the standard decoder that is used to import mixed video codec.
Some output video codec standards make decoder only support to import a subclass of a plurality of frame signs that codec supports.If the incoming frame size is not supported by output codec that then code converter output comprises the legal output frame of the minimum of incoming frame fully, and carries out frame size conversion 15.Output frame is the center with the incoming frame.If incoming frame is the I frame, then the zone outside incoming frame is encoded as suitable background colour in the output frame.If incoming frame is the P frame, then the zone outside incoming frame is encoded as not coded macroblocks in the output frame.
The method of another kind of interchangeable achieve frame size conversion is to make code converter output fit in the interior maximum legal output frame size of incoming frame fully.Output frame is the center with the incoming frame.In this case, frame size conversion module 15 will be pruned incoming frame, abandon any input macro block that drops on outside, output frame border.
Motion vector has 4 kinds of features may support for input codec but do not supported for importing codec.They are the difference in the range of operation of difference in the resolution of the difference in the motion vector quantity of every macro block, the difference that is used for the reference frame of motion compensation, motion vector compensation and motion vector.Under every kind of situation, the motion vector conversion unit 16 of code converter all must be selected an effective output movement vector, and it " is similar to " input motion information best.These conversions may cause the loss of picture quality and/or send out the increase of bit stream size outward.
When (a plurality of) input motion vector is different from (a plurality of) output movement vector, must use encoder reference frame 25 to recomputate macroblock error coefficients in coding stage.
If input codec supports every macro block vector of doing more physical exercises, and output codec does not support every macro block to have the motion vector of equal number, the quantity of then changing input vector is to mate available output configuration.If the motion vector quantity of every macro block that output codec supports is greater than the quantity of input motion vector, then duplicate input vector to form effective output vector, for example, two motion vectors of every macro block can be converted to 4 motion vectors of every macro block by duplicating each input vector.On the contrary, if the motion vector of every macro block that output codec supports is less than input codec, input vector then capable of being combined is to form one or more output vectors.For example, when MPEG-4 when H.263 code converter runs into the input macro block with 4 motion vectors, it must make up described 4 vectors to obtain single output movement vector.
A kind of method that is used for the aggregate motion vector is to use the meaning of the x and the y component of input vector.
Another kind method is to obtain the x of input vector and the median (median) of y component.
The conversion of the output movement vector from a plurality of input motion vectors to requirement always at first is performed, and resulting (a plurality of) vector is used as the input of subsequent conversion if necessary.
If input codec supports following P frame, it has the reference frame of the frame that is not nearest decoding, and output codec does not support, then needs convergent-divergent input motion vector, and described then motion vector just can be with reference to the frame of nearest decoding.Add 1 by each component divided by the number of reference frames of being skipped, carry out described convergent-divergent input vector.
If the resolution of the motion vector among the output codec is lower than the resolution of the motion vector among the input codec, then the input motion component of a vector is converted into immediate effective output movement component of a vector value.For example, if input codec supports 1/4th pixel motion compensations, and output codec only supports half-pixel motion compensation, and then any 1/4th picture element movement vectors in the input all are converted into immediate half pixel value.
When code converter ran into following input motion vector, described motion vector had one or two component that is positioned at outside the output scope that codec allowed, and then it must be converted to described vector the output valve of permission.Similarly situation also can take place in following occasion, promptly may point to the zone of video frame boundary outside when the input motion vector, and the output movement vector is restricted to when pointing to image inside.Under two kinds of situations, described algorithm is all selected effective output vector based on input vector.
But a kind of conversion method is to immediate permissible value with the strangulation of output movement component of a vector.For example, the MPEG-4 motion vector may be greater than the scope of H.263-16 to 15.5 pixels.In this case, the H.263 x component μ of vector that is calculated is provided by following formula
&mu; x = - 16 v x < - 16 v x - 16 &le; v x < 16 15.5 v x &GreaterEqual; 16
Another kind of conversion method is that to make output vector be maximum effective output vector, has the direction identical with input vector.
After frame sign and motion vector conversion, the decoded macroblock pixel is carried out spatial alternation 19, this occurs in mutual macro block is cut 17 through after the reference value 25 of motion compensation.Before transmission, conversion coefficient is quantized 20 and variable length code 21.The process quantized transform coefficients is carried out re-quantization 22, and be transformed into pixel domain by inverse transformation 23.For interior macro block, described pixel directly is stored in the reference frame storing storehouse 25.Before being stored in reference frame storing storehouse 25, mutual macro block is added 24 to the process reference pixel of motion compensation.
Fig. 4 is the block diagram of the optimization pattern of following preferred embodiment, it is used for according to embodiments of the invention, when the output codec of code converter does not support to import the feature (motion vector format, frame sign and spatial alternation type) of codec, the sign indicating number conversion between described two mixed video codec.This figure only is an example, should not limit the scope of claim inadequately.Those skilled in the art will recognize that many variants, replaceable scheme and correction.Have only and when input and output codec uses identical spatial alternation, identical reference frame with identical quantification, just can use described optimization pattern.Described optimization pattern is used for following mutual macro block, and it has the input motion vector as legal output movement vector.In the optimization pattern, the output of inverse quantizer 10 and inverse spatial transform 11 is directly presented respectively after frame size conversion to variable length coder 21 and frame thesaurus and is upgraded 24.This pattern significantly more effectively reason be that it does not use modules such as encode side spatial transform 19, quantizer 20, inverse quantizer 22 and inverse transformation 23.If decoder motion compensation 12 adopts different rounding off (rounding) method with encoder motion compensation 24, each frame is all moved by complete sign indicating number transduction pathway shown in Figure 3, to guarantee between the output of original bit stream and code converter output, not having visible drift.
H.263 coding in each macro block of standard code then must carry out once for per 132 frames at least.The MPEG-4 standard does not have similar requirement.In our method, all satisfy described H.263 interior coding bound in order to ensure each macro block, code converter has been followed the tracks of a number of frames since the MEPG-4 I frame, if there has been the P frame more than 131 in MPEG-4 stream since a last I frame, is the I frame with the P frame forced coding that decodes then.
If input codec supports " not coding " frame, and output codec does not support that then described device will be changed described frame.A kind of conversion method is to make code converter abandon this frame fully from sign indicating number switch bit stream.Another kind of conversion method is that code converter is sent this frame as the P frame, and wherein all macro blocks all are encoded to " not coding " macro block.
In conventional decoder and encoder, reference frame storing storehouse 14,25 is embodied as different frames usually.One is reference frame (frame of previous coding), and one is the frame of present encoding.When the codec motion vector only allows to get limited value scope, can reduce these storage demands.In our method, by recognizing " only employed reference frame macro block is only neighbours in the permission motion vector value scope in its maximum when the coded macroblocks ", we greatly reduce described storage demand.
Fig. 5 shows the macro block buffering course, has used the frame 26 of QCIF size as example, and 9 * 11 macro block grids of its bottom are carrying out baseline and H.263 encoding.This figure only is an example, should not limit the scope of claim inadequately.Those skilled in the art will recognize that many variants, replaceable scheme and correction.The macro block 28 that hard-pressed bale encloses the current macro block that is being encoded 27 comprises the pixel in the reference frame that can be used for motion compensation during the coding.Before the macro block that is being encoded 27 and macro block be encoded 29.The baseline H.263 maximum magnitude of motion vector is-16 to 15.5 pixels.We do not store present image, but safeguard macroblock buffer 30, and it can preserve the macro block that a macro block in the image line adds 1 the so much quantity of macro block.After each macro block all was encoded, the oldest macro block was written to its position in reference picture in the buffer, and current macro is written in the buffer.
But described buffer also each macro block in the storage buffer is to have encoded or " coding ".For " coding " macro block, our method is to ignore these macro blocks are write this operation of buffer, and they are outwards write back to reference frame, because not comparing in described macro block pixel value and the reference frame changes.
The front description of preferred embodiments makes those skilled in the art can make or use the present invention.It will be apparent to one skilled in the art that and very clearly can make various corrections, and the General Principle in this definition can be applied to other embodiment and need not to pay performing creative labour these embodiment.Therefore, the present invention should be limited to shown embodiment here, on the contrary, it should have the scope with principle disclosed herein and the corresponding to maximum of novel feature.

Claims (3)

1. one kind is used for reducing the method that encoder or code converter memory use, and wherein the scope of motion vector is arranged in the predetermined neighborhood of the macro block that just is being encoded, and described method comprises:
Be identified for the interior one or more pixels of reference frame of motion compensation;
During in one or more pixels in the described predetermined neighborhood that scope of described motion vector is arranged on the macro block that just is being encoded, the described macro block of encoding; And
Coded macroblocks stores in the buffer, and this buffer is also safeguarded the macro block that other have been encoded simultaneously.
2. the method for claim 1, in the wherein said buffer without any uncoded macro block.
3. the method for claim 1, wherein said encoder or code converter are used for baseline H.263 encoder or code converter, and described method comprises:
For single reference frame, store capable a plurality of macro blocks of a macro block that add of frame of expression into buffer;
The oldest macro block in the described buffer is write reference frame; And
The oldest macro block described in the described buffer is replaced with the macro block of having encoded.
CN 200710127241 2002-07-17 2003-07-15 Method and apparatus for transcoding between hybrid video codec bitstreams Pending CN101090499A (en)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
US39668902P 2002-07-17 2002-07-17
US60/396,689 2002-07-17
US60/396,891 2002-07-17
US60/417,831 2002-10-10
US60/431,054 2002-12-04
US10/620,329 2003-07-14

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CNA038168618A Division CN1669235A (en) 2002-07-17 2003-07-15 Method and apparatus for transcoding between hybrid video CODEC bitstreams

Publications (1)

Publication Number Publication Date
CN101090499A true CN101090499A (en) 2007-12-19

Family

ID=38943620

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 200710127241 Pending CN101090499A (en) 2002-07-17 2003-07-15 Method and apparatus for transcoding between hybrid video codec bitstreams

Country Status (1)

Country Link
CN (1) CN101090499A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103583044A (en) * 2011-01-31 2014-02-12 韩国电子通信研究院 Method and apparatus for encoding/decoding images using a motion vector
US12028545B2 (en) 2011-01-31 2024-07-02 Electronics And Telecommunications Research Institute Method and apparatus for encoding/decoding images using a motion vector

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103583044A (en) * 2011-01-31 2014-02-12 韩国电子通信研究院 Method and apparatus for encoding/decoding images using a motion vector
US10244252B2 (en) 2011-01-31 2019-03-26 Electronics And Telecommunications Research Institute Method and apparatus for encoding/decoding images using a motion vector
US12003753B2 (en) 2011-01-31 2024-06-04 Electronics And Telecommunications Research Institute Method and apparatus for encoding/decoding images using a motion vector
US12028545B2 (en) 2011-01-31 2024-07-02 Electronics And Telecommunications Research Institute Method and apparatus for encoding/decoding images using a motion vector

Similar Documents

Publication Publication Date Title
CN1669235A (en) Method and apparatus for transcoding between hybrid video CODEC bitstreams
CN101411197B (en) Methods and systems for refinement coefficient coding in video compression
CN100380973C (en) Global motion compensation for video pictures
CN102144391B (en) Skip modes for inter-layer residual video coding and decoding
US6917310B2 (en) Video decoder and encoder transcoder to and from re-orderable format
CN100558168C (en) The method and apparatus that generates coded picture data and coded picture data is decoded
CN101336549B (en) Scalable video coding method and apparatus based on multiple layers
CN100521550C (en) Coding method, decoding method, coder and decoder for digital video
CA2154885C (en) Efficient transcoding device and method
KR100636229B1 (en) Method and apparatus for adaptive entropy encoding and decoding for scalable video coding
CN101090495B (en) Method and system for processing video data
KR20050032113A (en) System and method for rate-distortion optimized data partitioning for video coding using backward adaptation
KR101041973B1 (en) Flag encoding method, flag decoding method, and apparatus thereof
CN102835107A (en) Super-block for high performance video coding
CN102150428A (en) System and method for video encoding using adaptive segmentation
CN103782598A (en) Fast encoding method for lossless coding
CN100555332C (en) Use comprises that the prediction of a plurality of macro blocks and nonanticipating picture are to picture sequence Methods for Coding and device
US7158684B2 (en) Entropy coding scheme for video coding
CN1327713C (en) Context-sensitive encoding and decoding of a video data stream
KR100382516B1 (en) Object-based image signal coding/decoding apparatus and method
KR100712532B1 (en) Apparatus and method for transcoding video error-resiliently using single description and multiple description switching
US10382750B2 (en) Region-based processing of predicted pixels
WO2011148887A1 (en) Video image delivery system, video image transmission device, video image delivery method, and video image delivery program
Jeong et al. Adaptive Huffman coding of 2-D DCT coefficients for image sequence compression
CN101090499A (en) Method and apparatus for transcoding between hybrid video codec bitstreams

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Open date: 20071219