IP Library › Granted Patent US 11,758,167
Granted Patent B2
US 11,758,167 · App. 17/500,570 · Granted Sep 12, 2023

Method and apparatus for video coding

Inventors: Guichun Li (Milpitas, CA); Xiang Li (Saratoga, CA); Xiaozhong Xu (State College, PA); Shan Liu (San Jose, CA)
Assignee: Tencent America LLC
H04N19/44H04N19/105H04N19/132H04N19/176H04N19/186H04N19/46H04N19/513
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 11,758,167
App. No.
17/500,570
Granted
Sep 12, 2023
Kind
B2
Abstract

Aspects of the disclosure provide a method and an apparatus for video coding. The apparatus includes processing circuitry. The processing circuitry can determine a subblock-based merge mode used to code a current block in a current picture. The processing circuitry can partition the current block into a plurality of subblocks based on the subblock-based merge mode. The processing circuitry can determine that decoder-side motion vector refinement (DMVR) is to be applied to one of the plurality of subblocks in the current block based on a mode type of the subblock-based merge mode. The processing circuitry can encode information indicating the subblock-based merge mode in a bitstream.

Claims (46)

1. A method for video encoding in an encoder, comprising:

determining a subblock-based merge mode used to code a current block in a current picture;

partitioning the current block into a plurality of subblocks based on the subblock-based merge mode;

determining whether decoder-side motion vector refinement (DMVR) is allowed for a plurality of blocks that includes the current block;

in response to a determination that the DMVR is allowed for the plurality of blocks that includes the current block, determining that the DMVR is to be applied to a subblock of the plurality of subblocks in the current block based at least on the subblock-based merge mode being subblock-based temporal motion vector prediction (SbTMVP); and

encoding (i) a high level flag indicating whether the DMVR is allowed for the plurality of blocks and (ii) information indicating the SbTMVP in a bitstream.

2. The method of claim 1 , wherein the determining that the DMVR is to be applied comprises:

determining that the DMVR is to be applied to the subblock of the plurality of subblocks based on the subblock-based merge mode being the SbTMVP and a subblock size of each of the plurality of subblocks being 16×16 luma samples.

3. The method of claim 1 , wherein the determining that the DMVR is to be applied further comprises:

determining whether one or more reference picture lists for the current block satisfy a plurality of conditions, the plurality of conditions including that (a) the one or more reference picture lists for the current block include a first reference picture list and a second reference picture list, (b) the current picture is between a first reference picture in the first reference picture list and a second reference picture in the second reference picture list in a video sequence, and (c) a first temporal distance between the first reference picture and the current picture is equal to a second temporal distance between the second reference picture and the current picture; and

determining that the DMVR is to be applied to the subblock of the plurality of subblocks further based on the one or more reference picture lists for the current block satisfying the plurality of conditions.

4. The method of claim 3 , wherein

the one or more reference picture lists for the current block satisfy the plurality of conditions; and

a subblock size of each of the plurality of subblocks is 16×16 luma samples.

5. The method of claim 3 , wherein

the one or more reference picture lists for the current block satisfy the plurality of conditions;

the method further includes determining whether a subblock size of each of the plurality of subblocks is 16×16 luma samples;

the determining that the DMVR is to be applied includes determining that the DMVR is to be applied to the subblock of the plurality of subblocks further in response to the subblock size being 16×16 luma samples; and

encoding a flag that indicates whether the subblock size of each of the plurality of subblocks is 16×16 luma samples.

6. The method of claim 3 , wherein a subblock merge candidate list includes a SbTMVP candidate with the DMVR enabled.

7. The method of claim 1 , wherein the determining that the DMVR is to be applied comprises:

determining that the DMVR is to be applied to the subblock of the plurality of subblocks further based on a subblock size of each of the plurality of subblocks being 8×8 luma samples.

8. An apparatus for video encoding, comprising:

processing circuitry configured to:

determine a subblock-based merge mode used to code a current block in a current picture;

partition the current block into a plurality of subblocks based on the subblock-based merge mode;

determining whether decoder-side motion vector refinement (DMVR) is allowed for a plurality of blocks that includes the current block;

in response to a determination that the DMVR is allowed for the plurality of blocks that includes the current block, determine that the DMVR is to be applied to a subblock of the plurality of subblocks in the current block based on the subblock-based merge mode being subblock-based temporal motion vector prediction (SbTMVP); and

encode (i) a high level flag indicating whether the DMVR is allowed for the plurality of blocks and (ii) information indicating the SbTMVP in a bitstream.

9. The apparatus of claim 8 , wherein the processing circuitry is configured to:

determine that the DMVR is to be applied to the subblock of the plurality of subblocks based on the subblock-based merge mode being the SbTMVP and a subblock size of each of the plurality of subblocks being 16×16 luma samples.

10. The apparatus of claim 8 , wherein the processing circuitry is configured to:

determine whether one or more reference picture lists for the current block satisfy a plurality of conditions, the plurality of conditions including that (a) the one or more reference picture lists for the current block include a first reference picture list and a second reference picture list, (b) the current picture is between a first reference picture in the first reference picture list and a second reference picture in the second reference picture list in a video sequence, and (c) a first temporal distance between the first reference picture and the current picture is equal to a second temporal distance between the second reference picture and the current picture; and

determine that the DMVR is to be applied to the subblock of the plurality of subblocks further based on the one or more reference picture lists for the current block satisfying the plurality of conditions.

11. The apparatus of claim 10 , wherein

the one or more reference picture lists for the current block satisfy the plurality of conditions; and

a subblock size of each of the plurality of subblocks is 16×16 luma samples.

12. The apparatus of claim 10 , wherein a subblock merge candidate list includes a SbTMVP candidate with the DMVR enabled.

13. The apparatus of claim 8 , wherein the processing circuitry is configured to:

determine that the DMVR is to be applied to the subblock of the plurality of subblocks further based on a subblock size of each of the plurality of subblocks being 8×8 luma samples.

14. A non-transitory computer-readable storage medium storing a program executable by at least one processor to perform:

determining a subblock-based merge mode used to code a current block in a current picture;

partitioning the current block into a plurality of subblocks based on the subblock-based merge mode;

determining whether decoder-side motion vector refinement (DMVR) is allowed for a plurality of blocks that includes the current block;

in response to a determination that the DMVR is allowed for the plurality of blocks that includes the current block, determining that the DMVR is to be applied to a subblock of the plurality of subblocks in the current block based at least on the subblock-based merge mode being subblock-based temporal motion vector prediction (SbTMVP); and

encoding (i) a high level flag indicating whether the DMVR is allowed for the plurality of blocks and (ii) information indicating the SbTMVP in a bitstream.

Continuity (3)
Continuation 16992868 · Aug 13, 2020
Provisional Application 62888784 · Aug 19, 2019
Related Publication 20220038728A1 · Feb 3, 2022