Dismiss
InnovationQ will be updated on Tuesday, September 18, from 8-9pm ET. You may experience brief service interruptions during this time. See here for details on our Australian patent collection updates.
Browse Prior Art Database

Method of Encoding Off Macroblock Boundary Pictures

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

Publishing Venue

IBM

Related People

Dopp, CL: AUTHOR [+3]

Abstract

The task of video of compression as described by the MPEG2 (Motion Picture Experts Group, standard #2) video standard requires encoding pictures on a macroblock boundary. A problem arises in the implementation of this standard when the picture input to the encoding device is not on a macroblock boundary (one macroblock being 16 pels horizontally by 16 pels vertically). It is necessary to modify the input picture size to be on the macroblock boundary in both the horizontal and vertical dimensions.

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

Method of Encoding Off Macroblock Boundary Pictures

   The task of video of compression as described by the MPEG2
(Motion Picture Experts Group, standard #2) video standard requires
encoding pictures on a macroblock boundary.  A problem arises in the
implementation of this standard when the picture input to the
encoding device is not on a macroblock boundary (one macroblock being
16 pels horizontally by 16 pels vertically).  It is necessary to
modify the input picture size to be on the macroblock boundary in
both the horizontal and vertical dimensions.

   Disclosed is a method of creating a picture that is on the
macroblock boundary by rounding the picture up to the nearest
multiple of 16 pels in both the horizontal and vertical directions
when necessary.  In frame based encoding, the input frame size is
rounded up vertically to the nearest macroblock boundary.  In field
based encoding however, one must ensure that both fields have the
same number of macroblock rows.  That is to say that the vertical
input picture size must by a multiple of 32 pels.

   In order to extend the picture line horizontally to the
nearest macroblock boundary, the last luminous pel of the line is
replicated.  Replication of the last valid pixel value was chosen as
the desired expansion method since this method minimizes the number
of bits required to represent the macroblock in its compressed form.
The DCT (discrete cosine transform) function, used as part of the
video compression algorithm, yields a smaller result when the amount
of variability of the pixel values within a macroblock is reduced.
Pixel replication reduces pixel variability within the macroblock,
and hence improves compression effectiveness.  The encoder being
described stores the chrominance data for the input picture as
Cb,Cr,Cb,Cr etc.  When the input picture does not end on a macroblock
the chrominance data may end in either Cb or Cr.  In order to extend
the chrominance data, the last chrominance component, either Cb or Cr
is replicated to the nearest macroblock boundary.

   In order to extend the picture line vertically to the
nearest macroblock boundary the last available picture line is
replicated in its entirety.  The vertical expansion occurs after any
horizontal expansion has already taken place.

   The following Figure shows the proposed mechanism for
performing this image expansion in an optimal manner.  Expansion is
performed in part by the Pixel Buffer unit, the Dram Controller
unit, and the Macroblock Fetch unit, all components that in part
comprise the video input portion of an MPEG2 video encoding system.

   When presented with an off-macroblock-boundary video input
stream, the Pixel Buffer expands the image in the horizontal
dimension to the horizontal dimension to the nearest multiple of 4.
This is necessary in order to ensure that the input video is stored
in the video DRAM on a word boundary, being that the DRAM interface
being described is a 4 byte interfac...