Browse Prior Art Database

Apparatus For Unconstrained Macroblocks Without Full-Scale Buffering

IP.com Disclosure Number: IPCOM000123167D
Original Publication Date: 1998-Jun-01
Included in the Prior Art Database: 2005-Apr-04
Document File: 2 page(s) / 137K

Publishing Venue

IBM

Related People

Greenfield, JD: AUTHOR [+2]

Abstract

A method for handling the encoding of unconstrained macroblocks without full-scale buffering in an MPEG encoder is disclosed. The involved units within the encoder use a programmable buffering scheme to reduce encoder chip size and improve performance.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 44% of the total text.

Apparatus For Unconstrained Macroblocks Without Full-Scale Buffering

   A method for handling the encoding of unconstrained
macroblocks without full-scale buffering in an MPEG encoder is
disclosed.  The involved units within the encoder use a programmable
buffering scheme to reduce encoder chip size and improve performance.

   The MPEG standard for video compression defines profiles
which are subsets of the syntax and semantics of the standard's
specifications.  The different profiles defined by the MPEG standard
are: Simple, Main, SNR, Spatial, High and 4:2:2.  One of the issues
addressed by the profile is the maximum number of bits used to encode
a macroblock.  In all profiles, 4:2:0 macroblocks have a maximum
limit of 4608 bits.  In all profiles except 4:2:2 Profile, the 4:2:2
macroblocks have a maximum limit of 6144 bits.  However, in the 4:2:2
Profile, the 4:2:2 macroblocks are unconstrained, that is, they have
no maximum limit.  Even though the other profiles have limits on the
number of bits per macroblock, unconstrained macroblocks must still
be dealt with because the standard allows for a maximum of two
unconstrained macroblocks per horizontal row in an encoded picture
regardless of profile constraints.

   A challenge for MPEG encoding, which is addressed by this
invention, is handling unconstrained macroblocks.  The challenge
comes in two forms:  chip area and performance.  Since unconstrained
means a macroblock of unlimited size, and encoder must be able to
handle macroblocks of increasingly large sizes.  However, there is an
actual extreme limit to the size of a macroblock in order for the
encoded macroblock to adhere to the MPEG standard.  This limit is
inherent to the allowable variable-length codes that are used to
encode macroblock data.  This extreme case would be a 4:2:2
macroblock in which all coefficients were encoded using escape codes
from the MPEG-1 'vlc' tables defined by the MPEG standard.  This
extreme case would produce 11280 bits for the coefficient data
without the macroblock header.  The challenge of chip area comes
from the fact that enough circuitry needs to be available to handle a
macroblock of this extreme size.  This circuitry that is affected by
macroblock size is for the most part the internal buffer arrays.  A
scheme is needed to minimize the size of the buffer arrays needed in
the involved units, but still be able to handle 11280 bit
macroblocks.

   The performance challenge arises at the compressed output
interface when nonintra macroblocks are being processed.  This
performance issue stems from the fact that macroblock header are
typically not determined until after all of the quantized
coefficients are variable-length encoded.  In waiting for the
macroblock headers, the compressed output interface must buffer the
coefficients to ensure that the macroblock header for the current
macroblock is mixed into the compressed bitstream before the encoded
coefficients.  This is need...