Interaction between MV precisions and MV difference coding
AssigneesBeijing Bytedance Network Technology Co., Ltd., Bytedance Inc.
InventorsHongbin Liu, Li Zhang, Kai Zhang, Jizheng Xu, Yue Wang
Life of this patent
Estimating the term…
Abstract
Interaction between MV precisions and MV difference coding is described. In an exemplary aspect, a method for video processing includes determining, for a conversion between a first block of video and a bitstream representation of the first block, whether a symmetric motion vector difference (SMVD) mode for the first block is enabled or disabled and/or how to apply the SMVD mode for the first block, based on at least one of motion information, a motion vector difference (MVD) precision and a motion vector (MV) precision of the first block; and performing the conversion based on the determination.
Claims18
A method of processing video data, comprising:
- determining, for a conversion between a first block of a video and a bitstream of the first block, whether a symmetric motion vector difference (SMVD) mode for the first block is enabled or disabled, based on a motion vector difference (MVD) precision or a motion vector (MV) precision of the first block;
- and
- performing the conversion based on the determining,
- wherein the first block is coded with affine mode, the SMVD mode is an affine SMVD mode, the MVD precision is an affine MVD precision, and the MV precision is an affine MV precision,
- wherein signaling of a MVD depends on a determination whether the SMVD mode for the first block is enabled or disabled,
- wherein:
- when the SMVD mode is enabled for the first block and a horizontal component of the MVD is equal to 0, a vertical component of the MVD is not equal to 0, or
- the vertical component of the MVD is conditionally signaled, wherein the signaling of the vertical component of the MVD depends on the determination whether the SMVD mode for the first block is enabled or disabled, and/or the signaling of an indication of whether the vertical component of the MVD is non-zero depends on one of the following conditions:
- an SMVD flag is true and a value of the horizontal component of the MVD is not equal to 0, or the SMVD flag is false, and
- wherein the signaling of the indication of whether the vertical component of the MVD is non-zero is skipped when the conditions are false, and wherein the vertical component of the MVD is implicitly derived to be non-zero.
An apparatus for processing video data comprising a processor and a non-transitory memory with instructions thereon, wherein the instructions upon execution by the processor cause the processor to:
- determine, for a conversion between a first block of a video and a bitstream of the first block, whether a symmetric motion vector difference (SMVD) mode for the first block is enabled or disabled, based on a motion vector difference (MVD) precision or a motion vector (MV) precision of the first block;
- and
- perform the conversion based on the determination,
- wherein the first block is coded with affine mode, the SMVD mode is an affine SMVD mode, the MVD precision is an affine MVD precision, and the MV precision is an affine MV precision,
- wherein signaling of a MVD depends on a determination whether the SMVD mode for the first block is enabled or disabled,
- wherein:
- when the SMVD mode is enabled for the first block and a horizontal component of the MVD is equal to 0, a vertical component of the MVD is not equal to 0, or
- the vertical component of the MVD is conditionally signaled, wherein the signaling of the vertical component of the MVD depends on the determination whether the SMVD mode for the first block is enabled or disabled, and/or the signaling of an indication of whether the vertical component of the MVD is non-zero depends on one of the following conditions:
- an SMVD flag is true and a value of the horizontal component of the MVD is not equal to 0, or the SMVD flag is false, and
- wherein the signaling of the indication of whether the vertical component of the MVD is non-zero is skipped when the conditions are false, and wherein the vertical component of the MVD is implicitly derived to be non-zero.
A method for storing a bitstream of a video, comprising:
- determining, for a first block of the video, whether a symmetric motion vector difference (SMVD) mode for the first block is enabled or disabled, based on a motion vector difference (MVD) precision or a motion vector (MV) precision of the first block;
- generating the bitstream based on the determining, and
- storing the bitstream in a non-transitory computer-readable recording medium,
- wherein the first block is coded with affine mode, the SMVD mode is an affine SMVD mode, the MVD precision is an affine MVD precision, and the MV precision is an affine MV precision,
- wherein signaling of a MVD depends on a determination whether the SMVD mode for the first block is enabled or disabled,
- wherein:
- when the SMVD mode is enabled for the first block and a horizontal component of the MVD is equal to 0, a vertical component of the MVD is not equal to 0, or
- the vertical component of the MVD is conditionally signaled, wherein the signaling of the vertical component of the MVD depends on the determination whether the SMVD mode for the first block is enabled or disabled, and/or the signaling of an indication of whether the vertical component of the MVD is non-zero depends on one of the following conditions:
- an SMVD flag is true and a value of the horizontal component of the MVD is not equal to 0, or the SMVD flag is false,
- wherein the signaling of the indication of whether the vertical component of the MVD is non-zero is skipped when the conditions are false, and wherein the vertical component of the MVD is implicitly derived to be non-zero.
Dependencies are inferred from the claim text.