IP Library Granted Patent US 12666008
Granted Patent B2
US 12666008 · App. 18/776,911 · Granted Jun 23, 2026

Further improved improved context design for prediction mode and CBF

Inventors: Xin Zhao (San Diego, CA); Xiang Li (Los Gatos, CA); Shan Liu (San Jose, CA)
Assignee: TENCENT AMERICA LLC
H04N19/105H04N19/13H04N19/159H04N19/176H04N19/46
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 12666008
App. No.
18/776,911
Granted
Jun 23, 2026
Kind
B2
Abstract

A method of controlling intra-inter prediction for decoding or encoding of a video sequence, is performed by at least one processor. The method includes determining whether one or more neighboring blocks in a video sequence is coded by an intra prediction mode, coding a prediction mode flag of a current block by a first context based on determining that at least one of the neighboring blocks is coded by the intra prediction mode, and coding the prediction mode flag of the current block by a second context based on determining that none of the neighboring blocks are coded by at least the intra prediction mode.

Claims (62)

1 . A method for video encoding, the method comprising:

determining whether at least one of a plurality of neighboring blocks in a video sequence is to be encoded by a mode depending on a pred_mode_flag variable and a top-left sample of the plurality of neighboring blocks of a current picture;

encoding a variable of a current block by a first context based on at least one of the plurality of neighboring blocks being coded by the mode and regardless of whether more than the at least one of the plurality of neighboring blocks being coded by the mode; and

encoding the variable of the current block by a second context based on none of the plurality of neighboring blocks being coded by at least the mode, and the mode is one of an intra prediction mode, an inter prediction mode, and an intra-inter prediction mode.

2 . The method according to claim 1 ,

wherein encoding the variable of the current block comprises encoding by only the first context and the second context.

3 . The method according to claim 1 , further comprising:

determining whether at least one of the plurality of neighboring blocks is coded by the intra-inter prediction mode;

encoding the variable of the current block by the first context based on at least one of the plurality of neighboring blocks being coded by the intra-inter prediction mode; and

encoding the variable of the current block by the second context based none of the plurality of neighboring blocks being coded by any of the intra prediction mode and the intra-inter prediction mode.

4 . The method according to claim 1 , further comprising:

encoding a skip variable of the current block by a first skip context based on at least one of the plurality of neighboring blocks being coded by the mode; and

encoding the skip variable of the current block by a second skip context based on none of the plurality of neighboring blocks being coded by at least the mode.

5 . The method according to claim 1 , further comprising:

encoding an affine variable of the current block by a first affine context based on at least one of the plurality of neighboring blocks being coded by the mode; and

encoding the affine variable of the current block by a second affine context based on none of the plurality of neighboring blocks being coded by at least the mode.

6 . The method according to claim 1 , further comprising:

encoding a sub-block merge variable of the current block by a first sub-block merge context based on at least one of the plurality of neighboring blocks being coded by the mode; and

encoding the sub-block merge variable of the current block by a second sub-block merge context based on none of the plurality of neighboring blocks being coded by at least the mode.

7 . The method according to claim 1 , further comprising:

encoding a coding unit (CU) split variable of the current block by a first CU split context based on at least one of the plurality of neighboring blocks being coded by the mode; and

encoding the CU split variable of the current block by a second CU split context based on none of the plurality of neighboring blocks being coded by at least the mode.

8 . The method according to claim 1 , further comprising:

encoding an adaptive motion vector resolution (AMVR) variable of the current block by a first AMVR context based on at least one of the plurality of neighboring blocks being coded by the mode; and

encoding the adaptive motion vector resolution (AMVR) variable of the current block by a second AMVR context based on none of the plurality of neighboring blocks being coded by at least the mode.

9 . The method according to claim 1 , further comprising:

encoding an intra-inter mode variable of the current block by a first intra-inter mode context based that at least one of the plurality of neighboring blocks being coded by the mode; and

encoding the intra-inter mode variable of the current block by a second intra-inter mode context based on none of the plurality of neighboring blocks being coded by at least the mode.

10 . The method according to claim 1 , further comprising:

encoding a triangle partitioning mode variable of current block by a first triangle partitioning mode context based on at least one of the plurality of neighboring blocks being coded by the mode; and

encoding the triangle partitioning mode variable of the current block by a second triangle partitioning mode context based on none of the plurality of neighboring blocks being coded by at least the mode.

11 . The method according to claim 1 , further comprising:

encoding a coding block flag (CBF) variable of the current block by a first CBF context based on at least one of the plurality of neighboring blocks being coded by the mode; and

encoding the CBF variable of the current block by a second CBF context based on none of the plurality of neighboring blocks being coded by at least the mode.

12 . A method of video decoding, the method comprising:

receiving a video data comprising a plurality of neighboring blocks in a video sequence is to be decoded in a mode depending on a pred_mode_flag syntax and a top-left sample of the plurality of neighboring blocks of a current picture; and

decoding the video data in the mode based on at least one of:

a variable of a current block indicating a first context based on at least one of the plurality of neighboring blocks being coded by the mode and regardless of whether more than the at least one of the plurality of neighboring blocks being coded by the mode, and

the variable of the current block indicating a second context based on none of the plurality of neighboring blocks being coded by at least the mode, and the mode is one of an intra prediction mode, an inter prediction mode, and an intra-inter prediction mode.

13 . The method according to claim 12 , wherein the variable of the current block is encoded by only the first context and the second context.

14 . The method according to claim 12 , wherein decoding the video data is further based on:

whether at least one of the plurality of neighboring blocks is coded by the intra-inter prediction mode.

15 . The method according to claim 12 , wherein decoding the video data is further based on any of:

a skip variable of the current block, and

a skip context based on none of the plurality of neighboring blocks being coded by at least the mode.

16 . The method according to claim 12 , decoding the video data is further based on any of:

an affine variable of the current block, and

an affine context based on none of the plurality of neighboring blocks being coded by at least the mode.

17 . The method according to claim 12 , decoding the video data is further based on any of:

a sub-block merge variable of the current block, and

a sub-block merge context based on none of the plurality of neighboring blocks being coded by at least the mode.

18 . The method according to claim 12 , decoding the video data is further based on any of:

a coding unit (CU) split variable of the current block indicating a first CU split context based on at least one of the plurality of neighboring blocks being coded by the mode; and

a CU split context based on none of the plurality of neighboring blocks being coded by at least the mode.

19 . The method according to claim 12 , decoding the video data is further based on any of:

an adaptive motion vector resolution (AMVR) variable of the current block, and

an AMVR context based on determining that none of the plurality of neighboring blocks being coded by at least the mode.

20 . A method of encoding visual media data, the method comprising:

generating a bitstream of the visual media data according to an encoding process comprising:

determining whether at least one of a plurality of neighboring blocks in a video sequence is to be encoded by a mode depending on a pred_mode_flag syntax and a top-left sample of the plurality of neighboring blocks of a current picture;

encoding a flag of a current block coded by a first context based on at least one of the plurality of neighboring blocks being coded by the mode and regardless of whether more than the at least one of the plurality of neighboring blocks being coded by the mode;

encoding the flag of the current block coded by a second context based on none of the plurality of neighboring blocks being coded by at least the mode, and the mode is one of an intra prediction mode, an inter prediction mode, and an intra-inter prediction mode.