# US 12,120,308 B2 · Methods and devices for restriction on motion vector difference

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 12,120,308 B2
- Document ID: US12120308B2
- Status: Granted
- Kind: B2
- Application number: 17/960,206
- Filed: 2022-10-05
- Published: 2023-04-20
- Granted: 2024-10-15
- Earliest claimed: 2021-10-20
- Assignees: Tencent America LLC
- Applicants: Tencent America LLC
- Inventors: Liang Zhao; Xin Zhao; Shan Liu
- Web page: https://patentgrep.com/patent/US12120308B2

## CPC

- H04N 19/137: Motion inside a coding unit, e.g. average field, frame or block difference
- H04N 19/70: characterised by syntax aspects related to video coding, e.g. related to compression standards
- H04N 19/105: Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
- H04N 19/176: the region being a block, e.g. a macroblock
- H04N 19/46: Embedding additional information in the video signal during the compression process (H04N19/517, H04N19/68, H04N19/70 take precedence)
- H04N 19/513: Processing of motion vectors
- H04N 19/52: by predictive encoding
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION

## Abstract

This disclosure relates generally to video coding and particularly to methods and systems for providing signaling schemes for restricting motion vector difference (MVD). An exemplary method includes receiving a coded video bitstream; obtaining, from the coded video bitstream, a motion vector difference (MVD) for a current video block; determining whether the MVD is signaled for only one prediction direction; in response to determining that the MVD is signaled for only one prediction direction, restricting the MVD to a pre-defined direction; and decoding, based on the MVD, the current video block.

## Claims

### Claim 1

A method for decoding a current video block of a video bitstream, comprising;
receiving, by a device comprising a memory storing instructions and a processor in communication with the memory, a coded video bitstream;
obtaining, by the device from the coded video bitstream, a motion vector difference (MVD) for a current video block, wherein the current video block is an inter coded block in a compound reference mode;
determining, by the device, whether the MVD is signaled for only one prediction direction;
in response to determining that the MVD is signaled for only one prediction direction, restricting, by the device, the MVD to a pre-defined direction; and
decoding, by the device based on the MVD, the current video block,
wherein:
the method further comprises determining, by the device based on a mode for the current video block, whether a horizontal direction and a vertical direction has non-zero MVD,
in response to the current video block being in a NEW_NEARMV mode, the MVD corresponds to the horizontal direction for a reference frame in a first reference frame list, and in response to the current video block being in a NEAR_NEWMV mode, the MVD corresponds to the vertical direction for a reference frame in a second reference frame list, or
in response to the current video block being in a NEW_NEARMV mode, the MVD corresponds to the vertical direction for a reference frame in a first reference frame list, and in response to the current video block being in a NEAR_NEWMV mode, the MVD corresponds to the horizontal direction for a reference frame in a second reference frame list.

### Claim 2 (depends on 1)

The method of claim 1, wherein:
the MVD is signaled in the coded video bitstream for only one reference frame in the compound reference mode; or
the MVD is jointly signaled for two reference frames in the compound reference mode.

### Claim 3 (depends on 1)

The method of claim 1, wherein:
the current video block is in the compound reference mode comprising at least one of a NEW_NEARMV mode or a NEAR_NEWMV mode.

### Claim 4 (depends on 1)

The method of claim 1, wherein:
in response to the current video block being in a NEW_NEARMV mode or a NEAR_NEWMV mode, the pre-defined direction comprises at least one of a horizontal direction or a vertical direction.

### Claim 5 (depends on 4)

The method of claim 4, further comprising:
obtaining, by the device from the coded video bitstream, a flag indicating whether the horizontal direction and the vertical direction has non-zero MVD.

### Claim 6 (depends on 5)

The method of claim 5, wherein:
a value of the flag comprises only one of the following:
a first flag value indicating that neither the horizontal direction nor the vertical direction has non-zero MVD;
a second flag value indicating that only one of the horizontal direction and the vertical direction has non-zero MVD; or
a third flag value indicating that only the other of the horizontal direction and the vertical direction has non-zero MVD.

### Claim 7 (depends on 6)

The method of claim 6, wherein:
in response to the current video block being in the NEW_NEARMV mode:
in response to the flag being equal to the second flag value the MVD, the MVD corresponds to the vertical direction for a reference frame in a first reference frame list, and
in response to the flag being equal to the third flag value the MVD, the MVD corresponds to the horizontal direction for the reference frame in the first reference frame list; and
in response to the current video block being in the NEAR_NEWMV mode:
in response to the flag being equal to the second flag value the MVD, the MVD corresponds to the horizontal direction for a reference frame in a second reference frame list, and
in response to the flag being equal to the third flag value the MVD, the MVD corresponds to the vertical direction for the reference frame in the second reference frame list.

### Claim 8 (depends on 5)

The method of claim 5, wherein:
a value of the flag comprises only one of the following:
a first flag value indicating that only one of the horizontal direction and the vertical direction has non-zero MVD; or
a second flag value indicating that only the other one of the horizontal direction and the vertical direction has non-zero MVD.

### Claim 9 (depends on 8)

The method of claim 8, wherein:
in response to the current video block being in the NEW_NEARMV mode:
in response to the flag being equal to the first flag value the MVD, the MVD corresponds to the vertical direction for a reference frame in a first reference frame list, and
in response to the flag being equal to the second flag value the MVD, the MVD corresponds to the horizontal direction for the reference frame in the first reference frame list; and
in response to the current video block being in the NEAR_NEWMV mode:
in response to the flag being equal to the first flag value the MVD, the MVD corresponds to the horizontal direction for a reference frame in a second reference frame list, and
in response to the flag being equal to the second flag value the MVD, the MVD corresponds to the vertical direction for the reference frame in the second reference frame list.

### Claim 10 (depends on 5)

The method of claim 5, wherein:
the flag is signaled in a high-level syntax comprising at least one of the following: a video parameter set (VPS), a picture parameter set (PPS), a sequence parameter set (SPS), an adaptation parameter set (APS), a picture header, a frame header, a slice header, a tile header, or a coding tree unit (CTU) header.

### Claim 11 (depends on 1)

The method of claim 1, wherein:
in response to the current video block being in a NEW_NEARMV mode or a NEAR_NEWMV mode, the pre-defined direction comprises only one direction.

### Claim 12

An apparatus for encoding a current video block of a video bitstream into a coded video bitstream, the apparatus comprising:
a memory storing instructions; and
a processor in communication with the memory, wherein, when the processor executes the instructions, the processor is configured to cause the apparatus to:
receive a video bitstream comprising a current video block,
determine, based on the video bitstream, a motion vector difference (MVD) for the current video block, wherein the current video block is an inter coded block in a compound reference mode,
determine whether the MVD is signaled for only one prediction direction,
in response to determining that the MVD is signaled for only one prediction direction, restrict the MVD to a pre-defined direction, and
encode, based on the MVD, the current video block into the bitstream,
wherein:
when the processor executes the instructions, the processor is configured to further cause the apparatus to determine, based on a mode for the current video block, whether a horizontal direction and a vertical direction has non-zero MVD,
in response to the current video block being in a NEW_NEARMV mode, the MVD corresponds to the horizontal direction for a reference frame in a first reference frame list, and in response to the current video block being in a NEAR_NEWMV mode, the MVD corresponds to the vertical direction for a reference frame in a second reference frame list, or
in response to the current video block being in a NEW_NEARMV mode, the MVD corresponds to the vertical direction for a reference frame in a first reference frame list, and in response to the current video block being in a NEAR_NEWMV mode, the MVD corresponds to the horizontal direction for a reference frame in a second reference frame list.

### Claim 13 (depends on 12)

The apparatus according to claim 12, wherein:
the MVD is signaled in the coded video bitstream for only one reference frame in the compound reference mode; or
the MVD is jointly signaled for two reference frames in the compound reference mode.

### Claim 14 (depends on 12)

The apparatus according to claim 12, wherein:
the current video block is in the compound reference mode comprising at least one of a NEW_NEARMV mode or a NEAR_NEWMV mode.

### Claim 15 (depends on 12)

The apparatus according to claim 12, wherein:
in response to the current video block being in a NEW_NEARMV mode or a NEAR_NEWMV mode, the pre-defined direction comprises at least one of a horizontal direction or a vertical direction.

### Claim 16 (depends on 12)

The apparatus according to claim 12, wherein:
in response to the current video block being in a NEW_NEARMV mode or a NEAR_NEWMV mode, the pre-defined direction comprises only one direction.

### Claim 17

A method of processing video data, the method comprising:
performing, by a device comprising a memory storing instructions and a processor in communication with the memory, a conversion between video data and a bitstream by:
receiving the video data comprising a current video block;
determining, based on the video data, a motion vector difference (MVD) for the current video block, wherein the current video block is an inter coded block in a compound reference mode;
determining whether the MVD is signaled for only one prediction direction;
in response to determining that the MVD is signaled for only one prediction direction, restrict the MVD to a pre-defined direction; and
encoding, based on the MVD, the current video block into the bitstream,
wherein:
the method further comprises determining, based on a mode for the current video block, whether a horizontal direction and a vertical direction has non-zero MVD,
in response to the current video block being in a NEW_NEARMV mode, the MVD corresponds to the horizontal direction for a reference frame in a first reference frame list, and in response to the current video block being in a NEAR_NEWMV mode, the MVD corresponds to the vertical direction for a reference frame in a second reference frame list, or
in response to the current video block being in a NEW_NEARMV mode, the MVD corresponds to the vertical direction for a reference frame in a first reference frame list, and in response to the current video block being in a NEAR_NEWMV mode, the MVD corresponds to the horizontal direction for a reference frame in a second reference frame list.
