IP Library Granted Patent US 12671830
Granted Patent B2
US 12671830 · App. 18/885,607 · Granted Jun 30, 2026

Inter prediction in video coding

Inventors: Yi-Wen Chen (San Diego, CA); Ning Yan (San Diego, CA); Xiaoyu Xiu (San Diego, CA); Che-Wei Kuo (San Diego, CA); Hong-Jheng Jhu (San Diego, CA); Wei Chen (San Diego, CA); Xianglin Wang (San Diego, CA); Bing Yu (Beijing, CN)
Assignee: BEIJING DAJIA INTERNET INFORMATION TECHNOLOGY CO., LTD.
H04N19/44H04N19/105H04N19/172H04N19/176
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12671830
App. No.
18/885,607
Granted
Jun 30, 2026
Kind
B2
Abstract

Methods for video decoding and encoding, apparatuses and non-transitory storage media are provided. In one decoding method, the decoder determines that an advanced motion vector prediction (AMVP)-Merge (AM) mode is enabled for a current picture or a slice of the current picture. Furthermore, the decoder obtains an AMVP motion vector (MV) of a current block in the current picture, for a first list of reference pictures LX where X is 0 or 1, as an LX MV. Moreover, the decoder obtains a list of valid merge MV candidates for a second list of reference pictures L(1−X), where the list of valid merge MV candidates comprises merge candidates that have L(1−X) MV. Further, the decoder selects an L(1−X) MV of the AM mode among the list of valid merge MV candidates.

Claims (43)

1 . A method for video decoding, comprising:

determining, by a decoder, that an advanced motion vector prediction (AMVP)-Merge (AM) mode is enabled for a current picture or a slice of the current picture;

obtaining, by the decoder, an AMVP motion vector (MV) of a current block in the current picture, for a first list of reference pictures LX wherein X is 0 or 1, as an LX MV;

obtaining, by the decoder, a list of valid merge MV candidates for a second list of reference pictures L(1−X), wherein the list of valid merge MV candidates comprises merge candidates that have L(1−X) MV;

selecting, by the decoder, an L(1−X) MV of the AM mode among the list of valid merge MV candidates; and

determining the merge candidates that have L(1−X) MV to be valid in response to a reference picture of L(1−X) MV of a merge candidate being not in an opposite direction from a reference picture of the LX MV.

2 . The method of claim 1 , further comprising:

determining the merge candidates that have L(1−X) MV to be valid in response to the reference picture of L(1−X) MV of the merge candidate being in an opposite direction from the reference picture of the LX MV.

3 . The method of claim 1 , wherein the L(1−X) MV of the AM mode is implicitly selected as one having a minimum matching cost between an LX AMVP prediction block and an L(1−X) merge prediction block associated with each candidate among all valid merge MV candidates.

4 . The method of claim 1 , wherein upon determining that only one reference picture is available for the LX MV, a reference picture index is not received from a bitstream; or upon determining that more than one reference pictures are available for the LX MV, the reference picture index is signalled in the bitstream.

5 . The method of claim 1 , wherein upon determining that template matching functionality is enabled, template matching MV refinement is conditionally applied for the L(1−X) MV of the AM mode or the LX MV which has a higher template matching cost.

6 . The method of claim 5 , wherein the template matching MV refinement is applied for the L(1−X) MV of the AM mode or the LX MV which has a higher template matching cost under condition that all reference pictures have a display order before the current picture, or that at least some reference pictures have a display order after the current picture.

7 . The method of claim 1 , wherein no template matching MV refinement is applied for the L(1−X) MV of the AM mode or the LX MV irrespective of whether template matching functionality is enabled or not.

8 . The method of claim 1 , wherein the L(1−X) MV of the AM mode is implicitly selected as one having a minimum difference between the LX MV and the L(1−X) MV.

9 . The method of claim 1 , further comprising:

upon determining that a reference picture of the LX MV and a reference picture of the L(1−X) MV of the AM mode are different, obtaining a scaled MV for the L(1−X) MV.

10 . The method of claim 9 , further comprising:

obtaining the scaled MV based on a scaling ratio that is calculated based on temporal distances between the current picture and the reference pictures of the LX MV and the L(1−X) MV of the AM mode.

11 . The method of claim 1 , wherein the L(1−X) MV is explicitly received from a bitstream to indicate which merge candidate is selected for the AM mode.

12 . The method of claim 1 , wherein upon determining that at least some reference pictures have a display order after the current picture, a merge candidate that has L(1−X) MV is regarded as invalid wherein a reference picture of the L(1−X) MV of the merge candidate is in a same direction of a reference picture of the LX MV.

13 . The method of claim 1 , wherein upon determining that all reference pictures have a display order before the current picture, only one L(1−X) MV of the AM mode is selected as one having a minimum matching cost between an LX AMVP prediction block and an L(1−X) merge prediction block associated with each candidate among all valid merge MV candidates, and no merge MV index is received from a bitstream; and

wherein upon determining that at least some reference pictures have a display order after the current picture, a merge MV index is received from the bitstream to indicate the L(1−X) MV of the AM mode.

14 . The method of claim 1 , wherein upon determining that “ph_mvd_l1_zero_flag” is enabled and the AM mode is enabled for the current picture or the slice of the current picture, syntax elements indicating a regular bi-directional prediction mode are not signaled in a bitstream.

15 . An apparatus for video decoding, comprising:

one or more processors; and

a memory coupled to the one or more processors and configured to store a bitstream to be decoded and instructions executable by the one or more processors,

wherein the one or more processors, upon execution of the instructions, are configured to perform a method for video decoding with the bitstream, and the method comprises:

determining that an advanced motion vector prediction (AMVP)-Merge (AM) mode is enabled for a current picture or a slice of the current picture;

obtaining an AMVP motion vector (MV) of a current block in the current picture, for a first list of reference pictures LX wherein X is 0 or 1, as an LX MV;

obtaining a list of valid merge MV candidates for a second list of reference pictures L(1−X), wherein the list of valid merge MV candidates comprises merge candidates that have L(1−X) MV;

selecting an L(1−X) MV of the AM mode among the list of valid merge MV candidates; and

determining the merge candidates that have L(1−X) MV to be valid in response to a reference picture of L(1−X) MV of a merge candidate being not in an opposite direction from a reference picture of the LX MV.

16 . The apparatus of claim 15 , wherein the method further comprises:

determining the merge candidates that have L(1−X) MV to be valid in response to the reference picture of L(1−X) MV of the merge candidate being in an opposite direction from the reference picture of the LX MV.

17 . The apparatus of claim 15 , wherein the L(1−X) MV of the AM mode is implicitly selected as one having a minimum matching cost between an LX AMVP prediction block and an L(1−X) merge prediction block associated with each candidate among all valid merge MV candidates.

18 . The apparatus of claim 15 , wherein upon determining that only one reference picture is available for the LX MV, a reference picture index is not received from a bitstream; or upon determining that more than one reference pictures are available for the LX MV, the reference picture index is signalled in the bitstream.

19 . The apparatus of claim 15 , wherein upon determining that template matching functionality is enabled, template matching MV refinement is conditionally applied for the L(1−X) MV of the AM mode or the LX MV which has a higher template matching cost.

20 . A non-transitory computer-readable storage medium storing a bitstream and computer-executable instructions that, when executed by one or more computer processors, cause the one or more processors to perform video decoding comprising following acts:

determining that an advanced motion vector prediction (AMVP)-Merge (AM) mode is enabled for a current picture or a slice of the current picture;

obtaining an AMVP motion vector (MV) of a current block in the current picture, for a first list of reference pictures LX wherein X is 0 or 1, as an LX MV;

obtaining a list of valid merge MV candidates for a second list of reference pictures L(1−X), wherein the list of valid merge MV candidates comprises merge candidates that have L(1−X) MV;

selecting an L(1−X) MV of the AM mode among the list of valid merge MV candidates; and

determining the merge candidates that have L(1−X) MV to be valid in response to a reference picture of L(1−X) MV of a merge candidate being not in an opposite direction from a reference picture of the LX MV.