Video coding methods and apparatuses
AssigneeMicrosoft Corporation
InventorsAlexandros Tourapis, Feng Wu, Shipeng Li
Life of this patent
Estimating the term…
Abstract
Video coding methods and apparatuses are provided that make use of various models and/or modes to significantly improve coding efficiency especially for high/complex motion sequences. The methods and apparatuses take advantage of the temporal and/or spatial correlations that may exist within portions of the frames, e.g., at the Macroblock level, etc. The methods and apparatuses tend to significantly reduce the amount of data required for encoding motion information while retaining or even improving video image quality.
Claims91
A method for use in encoding video data within a sequence of video frames, the method comprising;
- encoding at least a portion of at least one reference frame to include motion information associated with said portion of said reference frame;
- defining at least a portion of at least one predictable frame that includes video data predictively correlated to said portion of said reference frame based on said motion information;
- and
- encoding at least said portion of said predictable frame without including corresponding motion information and including mode identifying data that identifies that said portion of said predictable frame can be directly derived using at least said motion information associated with said portion of said reference frame.
A computer-readable medium having computer-implementable instructions for performing acts comprising:
- encoding video data for a sequence of video frames into at least one predictable frame selected from a group of predictable frames comprising a P frame and a B frame, by:
- encoding at least a portion of at least one reference frame to include motion information associated with said portion of said reference frame;
- defining at least a portion of at least one predictable frame that includes video data predictively correlated to said portion of said reference frame based on said motion information;
- and
- encoding at least said portion of said predictable frame without including corresponding motion information and including mode identifying data that identifies that said portion of said predictable frame can be directly derived using at least said motion information associated with said portion of said reference frame.
An apparatus for use in encoding video data for a sequence of video frames into a plurality of video frames including at least one predictable frame selected from a group of predictable frames comprising a P frame and a B frame, said apparatus comprising:
- memory for storing motion information;
- and
- logic operatively coupled to said memory and configured to encode at least a portion of at least one reference frame to include motion information associated with said portion of said reference frame, determine at least a portion of at least one predictable frame that includes video data predictively correlated to said portion of said reference frame based on said motion information, and encode at least said portion of said predictable frame without including corresponding motion information and including mode identifying data that identifies that said portion of said predictable frame can be directly derived using at least said motion information associated with said portion of said reference frame.
A method for use in decoding encoded video data that includes a plurality of video frames comprising at least one predictable frame selected from a group of predictable frames comprising a P frame and a B frame, the method comprising;
- determining motion information associated with at least a portion of at least one reference frame;
- buffering said motion information;
- determining mode identifying data that identifies that at least a portion of a predictable frame can be directly derived using at least said buffered motion information;
- and
- generating said portion of said predictable frame using said buffered motion information.
A computer-readable medium having computer-implementable instructions for performing acts comprising:
- decoding encoded video data that includes a plurality of video frames comprising at least one predictable frame selected from a group of predictable frames comprising a P frame and a B frame, by:
- buffering motion information associated with at least a portion of at least one reference frame;
- determining mode identifying data that identifies that at least a portion of a predictable frame can be directly derived using at least said buffered motion information;
- and
- generating said portion of said predictable frame using said buffered motion information.
An apparatus for use in decoding video data for a sequence of video frames into a plurality of video frames including at least one predictable frame selected from a group of predictable frames comprising a P frame and a B frame, said apparatus comprising:
- memory for storing motion information;
- and
- logic operatively coupled to said memory and configured to buffer in said memory motion information associated with at least a portion of at least one reference frame, ascertain mode identifying data that identifies that at least a portion of a predictable frame can be directly derived using at least said buffered motion information, and generate said portion of said predictable frame using said buffered motion information.
Dependencies are inferred from the claim text.