Dynamic frame padding in a video hardware engine
Abstract
A video hardware engine which support dynamic frame padding is disclosed. The video hardware engine includes an external memory. The external memory stores a reference frame. The reference frame includes a plurality of reference pixels. A motion estimation (ME) engine receives a current LCU (largest coding unit), and defines a search area around the current LCU for motion estimation. The ME engine receives a set of reference pixels corresponding to the current LCU. The set of reference pixels of the plurality of reference pixels are received from the external memory. The ME engine pads a set of duplicate pixels along an edge of the reference frame when a part area of the search area is outside the reference frame.
Claims
exact text as granted — not AI-modifiedWhat is claimed is:
1 . A device comprising:
a motion estimation unit configured to:
receive a current coding unit;
define a search area around the current coding unit;
receive a reference frame;
define a boundary beyond an edge of the reference frame;
pad a portion of the search area between the boundary and the edge; and
output motion information; and
a motion compensation unit configured to:
receive the output motion information; and
generate a predicted coding unit based on the output motion information.
2 . The device of claim 1 , wherein:
the reference frame is stored in an external memory.
3 . The device of claim 1 , wherein:
the reference frame includes a set of reference pixels associated with the current coding unit.
4 . The device of claim 3 , wherein:
the portion of the search area padded by the motion estimation unit includes a set of duplicate pixels of the set of reference pixels.
5 . The device of claim 1 , wherein:
the motion compensation unit receives the current coding unit from the motion estimation unit.
6 . The device of claim 1 , wherein:
the output motion information includes the current coding unit; and the motion compensation unit is configured to:
receive the current coding unit;
determine a motion vector based on the current coding unit;
determine a motion reference coding unit based on the motion vector, wherein the motion referenced coding unit includes a second boundary; and
in response to the second boundary being beyond the reference frame, pad an area between the second boundary and the reference frame.
7 . The device of claim 6 , wherein:
the motion compensation unit is configured to receive a set of reference pixels associated with the motion reference coding unit.
8 . The device of claim 7 , wherein:
the motion compensation unit configures a video direct memory access engine for access to the set of reference pixels associated with the motion reference coding unit.
9 . The device of claim 1 , wherein:
the current coding unit is a center of the search area around the current coding unit.
10 . The device of claim 1 , wherein:
the search area includes a top horizontal edge, a bottom horizontal edge, a right vertical edge, and a left vertical edge.
11 . A method comprising:
receiving, by a motion estimation unit, a current coding unit; defining, by the motion estimation unit, a search area around the current coding unit; receiving, by the motion estimation unit, a reference frame; defining, by the motion estimation unit, a boundary beyond an edge of the reference frame; padding, by the motion estimation unit, a portion of the search area between the boundary and the edge; outputting, by the motion estimation unit, motion information; receiving, by a motion compensation unit, the output motion information; and generating, by the motion compensation unit, a predicted coding unit based on the output motion information.
12 . The method of claim 11 , wherein:
the reference frame is stored in an external memory.
13 . The method of claim 11 , wherein:
the reference frame includes a set of reference pixels associated with the current coding unit.
14 . The method of claim 13 , wherein:
the portion of the search area padded by the motion estimation unit includes a set of duplicate pixels of the set of reference pixels.
15 . The method of claim 11 , further comprising:
receiving, by the motion compensation unit, the current coding unit from the motion estimation unit.
16 . The method of claim 11 , further comprising:
receiving, by the motion compensation unit, the current coding unit, wherein the output motion information includes the current coding unit; determining, by the motion compensation unit, a motion vector based on the current coding unit; determining, by the motion compensation unit, a motion reference coding unit based on the motion vector, wherein the motion referenced coding unit includes a second boundary; and in response to the second boundary being beyond the reference frame, padding, by the motion compensation unit, an area between the second boundary and the reference frame.
17 . The method of claim 16 , further comprising:
receiving, by the motion compensation unit, a set of reference pixels associated with the motion reference coding unit.
18 . The method of claim 17 , further comprising:
configuring, by the motion compensation unit, a video direct memory access engine for access to the set of reference pixels associated with the motion reference coding unit.
19 . The method of claim 11 , wherein:
the current coding unit is a center of the search area around the current coding unit.
20 . The method of claim 11 , wherein:
the search area includes a top horizontal edge, a bottom horizontal edge, a right vertical edge, and a left vertical edge.Cited by (0)
No later patents cite this yet.
References (0)
No backward citations on record.