LIMITATION OF THE MVP DERIVATION BASED ON DECODER-SIDE MOTION VECTOR DERIVATION
First Claim
1. A method of decoding video data, the method comprising:
- determining a first block of video data is coded in an inter prediction mode;
determining a first motion vector for the first block of video data;
performing motion vector refinement on the first motion vector for the first block to determine a refined motion vector for the first block of video data;
locating a first reference block in a first reference picture using the refined motion vector;
generating a first predictive block for the first block of video data based on the first reference block;
determining that a second block of video data is coded in a mode that utilizes a motion vector associated with the first block as a motion vector predictor;
in response to determining that the second block of video data is coded in the mode that utilizes the motion vector associated with the first block as a motion vector predictor and in response to performing the motion vector refinement on the first motion vector for the first block, using a different motion vector than the first refined motion vector as the motion vector predictor associated with the first block;
based on the different motion vector, determining a second motion vector for the second block;
locating a second reference block in a second reference picture using the second motion vector; and
decoding a picture of video data based on the first reference block and the second reference block.
1 Assignment
0 Petitions
Accused Products
Abstract
A video decoder is configured to determine a first motion vector for a first block of video data; perform motion vector refinement on the first motion vector for the first block to determine a refined motion vector for the first block of video data; determine that a second block of video data is coded in a mode that utilizes a motion vector associated with the first block as a motion vector predictor; in response to determining that the second block of video data is coded in the mode that utilizes the motion vector associated with the first block as a motion vector predictor and in response to performing the motion vector refinement on the first motion vector for the first block, use a different motion vector than the first refined motion vector as the motion vector predictor associated with the first block.
25 Citations
39 Claims
-
1. A method of decoding video data, the method comprising:
-
determining a first block of video data is coded in an inter prediction mode; determining a first motion vector for the first block of video data; performing motion vector refinement on the first motion vector for the first block to determine a refined motion vector for the first block of video data; locating a first reference block in a first reference picture using the refined motion vector; generating a first predictive block for the first block of video data based on the first reference block; determining that a second block of video data is coded in a mode that utilizes a motion vector associated with the first block as a motion vector predictor; in response to determining that the second block of video data is coded in the mode that utilizes the motion vector associated with the first block as a motion vector predictor and in response to performing the motion vector refinement on the first motion vector for the first block, using a different motion vector than the first refined motion vector as the motion vector predictor associated with the first block; based on the different motion vector, determining a second motion vector for the second block; locating a second reference block in a second reference picture using the second motion vector; and decoding a picture of video data based on the first reference block and the second reference block. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A device for decoding video data, the device comprising:
-
a memory configured to store video data; one or more processors configured to; determine a first block of the video data is coded in an inter prediction mode; determine a first motion vector for the first block of the video data; perform motion vector refinement on the first motion vector for the first block to determine a refined motion vector for the first block of the video data; locate a first reference block in a first reference picture using the refined motion vector; generate a first predictive block for the first block of the video data based on the first reference block; determine that a second block of the video data is coded in a mode that utilizes a motion vector associated with the first block as a motion vector predictor; in response to determining that the second block of the video data is coded in the mode that utilizes the motion vector associated with the first block as a motion vector predictor and in response to performing the motion vector refinement on the first motion vector for the first block, use a different motion vector than the first refined motion vector as the motion vector predictor associated with the first block; based on the different motion vector, determine a second motion vector for the second block; and locate a second reference block in a second reference picture using the second motion vector; and decode a picture of the video data based on the first reference block and the second reference block. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24)
-
-
25. A computer-readable storage medium storing instructions that when executed by one or more processors causes the one or more processors to:
-
determine a first block of video data is coded in an inter prediction mode; determine a first motion vector for the first block of video data; perform motion vector refinement on the first motion vector for the first block to determine a refined motion vector for the first block of video data; locate a first reference block in a first reference picture using the refined motion vector; generate a first predictive block for the first block of video data based on the first reference block; determine that a second block of video data is coded in a mode that utilizes a motion vector associated with the first block as a motion vector predictor; in response to determining that the second block of video data is coded in the mode that utilizes the motion vector associated with the first block as a motion vector predictor and in response to performing the motion vector refinement on the first motion vector for the first block, use a different motion vector than the first refined motion vector as the motion vector predictor associated with the first block; based on the different motion vector, determine a second motion vector for the second block; locate a second reference block in a second reference picture using the second motion vector; and decode a picture of video data based on the first reference block and the second reference block. - View Dependent Claims (26, 27, 28, 29, 30, 31, 32, 33, 34)
-
-
35. An apparatus for decoding video data, the apparatus comprising:
-
means for determining a first block of video data is coded in an inter prediction mode; means for determining a first motion vector for the first block of video data; means for performing motion vector refinement on the first motion vector for the first block to determine a refined motion vector for the first block of video data; means for locating a first reference block in a first reference picture using the refined motion vector; means for generating a first predictive block for the first block of video data based on the first reference block; means for determining that a second block of video data is coded in a mode that utilizes a motion vector associated with the first block as a motion vector predictor; means for using a different motion vector than the first refined motion vector as the motion vector predictor associated with the first block in response to determining that the second block of video data is coded in the mode that utilizes the motion vector associated with the first block as a motion vector predictor and in response to performing the motion vector refinement on the first motion vector for the first block; means for determining a second motion vector for the second block based on the different motion vector; means for locating a second reference block in a second reference picture using the second motion vector; and means for decoding a picture of video data based on the first reference block and the second reference block. - View Dependent Claims (36, 37, 38, 39)
-
Specification