IP Library › Granted Patent US 12,284,379
Granted Patent B2
US 12,284,379 · App. 17/707,881 · Granted Apr 22, 2025

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/513H04N19/176H04N19/96
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 12,284,379
App. No.
17/707,881
Granted
Apr 22, 2025
Kind
B2
Abstract

Aspects of the disclosure provide methods and apparatuses for video coding. In some examples, an apparatus includes processing circuitry configured to encode a first block in a picture according to one of bi-directional prediction and uni-directional prediction. The processing circuitry is configured to add motion information and a bi-prediction weight index of a History-based Motion Vector Prediction (HMVP) candidate to an HMVP list based on whether the first block is encoded according to the bi-directional prediction or the uni-directional prediction, the bi-prediction weight index indicating bi-prediction weights of the bi-directional prediction for the first block when the first block is encoded according to the bi-directional prediction, and the bi-prediction weight index indicating a default value when the first block is encoded according to the uni-directional prediction. The processing circuitry is configured to encode a second block in the picture based on a plurality of candidates that includes the HMVP candidate.

Claims (78)

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

encoding a first block in a picture;

when the first block is encoded according to bi-directional prediction,

adding motion information of the first block and a first bi-prediction weight index of the first block as a History-based Motion Vector Prediction (HMVP) candidate to an HMVP list, the first bi-prediction weight index indicating bi-prediction weights used for performing the bi-directional prediction for the first block;

when the first block is encoded according to uni-directional prediction,

the first bi-prediction weight index indicates equal bi-prediction weights;

encoding a second block in the picture based on a plurality of candidates that includes the HMVP candidate; and

when the second block is encoded according to the bi-directional prediction,

storing the motion information of the HMVP candidate as a merge candidate, and

setting a second bi-prediction weight index to the first bi-prediction weight index.

2. The method of claim 1 , wherein the setting the second bi-prediction weight index further comprises:

when the second block in the picture is encoded based on another motion information of a candidate of the plurality of candidates that is neither a regular spatial merge candidate nor from the HMVP list, and the second block is encoded according to the bi-directional prediction,

setting the second bi-prediction weight index for the second block to the first bi-prediction weight index.

3. The method of claim 1 , wherein the setting the second bi-prediction weight index further comprises:

when the first block is in a Coding Tree Unit (CTU) row different from that of a current CTU in which the second block is included, the second block in the picture being encoded based on another motion information stored in a regular merge candidate or an affine merge candidate, and the second block is encoded according to the bi-directional prediction,

setting the second bi-prediction weight index for the second block to the first bi-prediction weight index.

4. The method of claim 1 , wherein the setting the second bi-prediction weight index further comprises:

when the first block is outside a current CTU in which the second block is included, the second block in the picture is encoded based on another motion information stored in a translational merge candidate or an inherited affine merge candidate, and the second block being encoded according to the bi-directional prediction,

setting the second bi-prediction weight index for the second block to the first bi-prediction weight index.

5. The method of claim 1 , wherein

the first block is encoded according to one of the bi-directional prediction and the uni-directional prediction with the picture as a reference picture.

6. The method of claim 1 , wherein the first block is encoded according to the bi-directional prediction, and both of a first weight applicable to a first reference picture in a first list and a second weight applicable to a second reference picture in a second list are positive when the first and second reference pictures correspond to different reference pictures.

7. The method of claim 1 , wherein

the first block is encoded according to the bi-directional prediction, and

one of a first weight applicable to a first reference picture in a first list and a second weight applicable to a second reference picture in a second list is negative when the first and second reference pictures correspond to a same reference picture.

8. The method of claim 1 , wherein

the bi-prediction weights are used for performing the bi-directional prediction for the first block and are determined according to a weight parameter indicated by the bi-prediction weight index of the HMVP candidate and a precision factor F, and the precision factor F is 8.

9. A method for video decoding in a decoder, the method comprising:

receiving prediction information of a first block in a picture from a coded video bitstream;

generating reconstructed samples of the first block for output according to the prediction information and one of bi-directional prediction and uni-directional prediction;

when the first block is coded according to the bi-directional prediction,

adding motion information of the first block and a first bi-prediction weight index of the first block as a History-based Motion Vector Prediction (HMVP) candidate to an HMVP list, the first bi-prediction weight index indicating bi-prediction weights used for performing the bi-directional prediction for the first block;

when the first block is coded according to the uni-directional prediction, the first bi-prediction weight index indicates equal bi-prediction weights;

decoding a second block in the picture based on a plurality of candidates that includes the HMVP candidate; and

when the second block is coded according to the bi-directional prediction,

storing the motion information of the HMVP candidate as a merge candidate, and

setting a second bi-prediction weight index to the first bi-prediction weight index.

10. The method of claim 9 , wherein

the second bi-prediction weight index is set to the first bi-prediction weight index when the first block is in a Coding Tree Unit (CTU) row different from that of a current CTU in which the second block is included, the second block in the picture is determined to be coded based on another motion information stored in a regular merge candidate or an affine merge candidate, and the second block is coded according to the bi-directional prediction.

11. The method of claim 9 , wherein

the second bi-prediction weight index is set to the first bi-prediction weight index when the first block is outside a current CTU in which the second block is included, the second block in the picture is determined to be coded based on another motion information stored in a translational merge candidate or an inherited affine merge candidate, and the second block is coded according to the bi-directional prediction.

12. The method of claim 9 , wherein

the first block is coded according to the one of the bi-directional prediction and the uni-directional prediction with the picture as a reference picture.

13. The method of claim 9 , wherein

the first block is coded according to the bi-directional prediction, and

both of a first weight applicable to a first reference picture in a first list and a second weight applicable to a second reference picture in a second list are positive when the first and second reference pictures correspond to different reference pictures.

14. The method of claim 9 , wherein

the bi-prediction weights are used for performing the bi-directional prediction for the first block and are determined according to a weight parameter indicated by the bi-prediction weight index of the HMVP candidate and a precision factor F, and the precision factor F is 8.

15. The method of claim 9 , wherein

the first block is coded according to the bi-directional prediction, and

one of a first weight applicable to a first reference picture in a first list and a second weight applicable to a second reference picture in a second list is negative when the first and second reference pictures correspond to a same reference picture.

16. The method of claim 9 , wherein

when the first block is coded according to the bi-directional prediction,

a first weight w 1 applicable to a first reference picture in a first list is determined according to

w

1

=

w

F

,

and

a second weight w 0 applicable to a second reference picture in a second list is determined according to

w 0 =1− w 1 ,

where w and F are integers, w represents a weight parameter indicated by the first bi-prediction weight index, and F represents a precision factor.

17. A method of processing visual media data, the method comprising:

processing a bitstream that includes the visual media data according to a format rule, wherein

the bitstream includes prediction information of a first block in a picture,

the format rule specifies that:

reconstructed samples of the first block are generated for output according to the prediction information and one of bi-directional prediction and uni-directional prediction;

when the first block is coded according to the bi-directional prediction,

motion information of the first block and a first bi-prediction weight index of the first block are added as a History-based Motion Vector Prediction (HMVP) candidate to an HMVP list, the first bi-prediction weight index indicating bi-prediction weights used for performing the bi-directional prediction for the first block;

when the first block is coded according to the uni-directional prediction, the first bi-prediction weight index indicates equal bi-prediction weights;

a second block in the picture is decoded based on a plurality of candidates that includes the HMVP candidate; and

when the second block is coded according to the bi-directional prediction,

the motion information of the HMVP candidate is stored as a merge candidate, and

a second bi-prediction weight index is set to the first bi-prediction weight index.

18. The method of claim 9 , wherein

the second bi-prediction weight index is set to the first bi-prediction weight index when the second block in the picture is determined to be coded based on another motion information stored in a candidate that is neither a regular spatial merge candidate nor from the HMVP list, and the second block is coded according to the bi-directional prediction.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 9, 2025
From: LI, GUICHUN; LI, XIANG; XU, XIAOZHONG; LIU, SHAN
To: TENCENT AMERICA LLC
Reel/Frame 069805/0516 →
Continuity (3)
Continuation 16441879 · Jun 14, 2019
Provisional Application 62777593 · Dec 10, 2018
Related Publication 20220232243A1 · Jul 21, 2022
References Cited (51)
US 6594400B1 · Kim · 2003 [cited by examiner]
US RE41406E · Kim · 2010 [cited by applicant]
US 9161057B2 · Karczewicz · 2015 [cited by examiner]
US 20100086027A1 · Panchal et al. · 2010 [cited by applicant]
US 20110007803A1 · Karczewicz · 2011 [cited by examiner]
US 20130077677A1 · Wang · 2013 [cited by examiner]
US 20130128974A1 · Chien · 2013 [cited by examiner]
US 20140044170A1 · Sato · 2014 [cited by examiner]
US 20140105299A1 · Chen · 2014 [cited by examiner]
US 20150208075A1 · Eckart et al. · 2015 [cited by applicant]
US 20170094305A1 · Li et al. · 2017 [cited by applicant]
US 20170374383A1 · Demos · 2017 [cited by examiner]
US 20180295385A1 · Alshin · 2018 [cited by examiner]
US 20190230350A1 · Chen · 2019 [cited by examiner]
US 20200112741A1 · Han · 2020 [cited by examiner]
US 20200382795A1 · Zhang · 2020 [cited by examiner]
US 20210037256A1 · Zhang · 2021 [cited by examiner]
US 20210337215A1 · Zhang · 2021 [cited by examiner]
US 20220038720A1 · Hashimoto · 2022 [cited by examiner]
JP 2006513592A · 2006 [cited by applicant]
JP 2012533212A · 2012 [cited by applicant]
KR 20050019809A · 2005 [cited by applicant]
KR 20120031515A · 2012 [cited by applicant]
WO 2017188779A · 2017 [cited by applicant]
WO WO2017197146A1 · 2017 [cited by examiner]
WO PCTCN2018107178 · 2018 [cited by applicant]
WO WO2020059877A1 · 2020 [cited by examiner]
WO WO2020085954A1 · 2020 [cited by examiner]
WO WO2020094051A1 · 2020 [cited by examiner]
Japanese Office Action issued Jul. 26, 2022 in Application No. 2021-524280 with English Translation, pp. 1-28. [cited by applicant]
Chun-Chi Chen, et.al., Generalized bi-prediction for inter coding, Joint Video Exploration Team (JVET) of ITU-T SG 16 WP 3 and ISO /IEC JTC 1/ SC 29/WG 11 3rd Meeting: Geneva, CH, May 26-Jun. 1, 2016,May 28, 2016, pp. 1… [cited by applicant]
Timofey Solovyev, et.al., Non-CE4: Line buffer size reduction method for generalized bi prediction, Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO / IEC JTC 1 / SC 29/WG 11 13th Meeting: Marrakech, MA, Jan.… [cited by applicant]
International Search Report and Written Opinion issued Feb. 20, 2020 in PCT/US19/64392. [cited by applicant]
High Efficiency Video Coding, Rec. ITU-T H., International Telecommunication Union, 265v4, Dec. 2016. [cited by applicant]
B. Bross, J. Chen, S. Liu, “Versatile Video Coding (Draft 3)”, ISO/IEC JTC1/SC29/WG11 JVET-L1001, Oct. 2018. [cited by applicant]
L. Zhang, K. Zhang, H. Liu, Y. Wang, P. Zhao, D. Hong, “CE4: History-based Motion Vector Prediction (Test 4.4.7)”, ISO/IEC JTC1/SC29/WG11 JVET-L0266, Oct. 2018. [cited by applicant]
Y.-C. Su, C.-Y. Chen, Y.-W. Huang, S.-M. Lei, Y. He, J. Luo, X. Xiu, Y. Ye, “CE4-related: Generalized bi-prediction improvements combined from JVET-L0197 and JVET-L0296”, ISO/IEC JTC1/SC29/WG11 JVET-L0100, Oct. 2018. [cited by applicant]
X. Xu, S. Liu, T. Chuang, Y. Huang, S. Lei, K. Rapaka, C. Pang, V. Seregin, Y. Wang, and M. Karczewicz, “Intra Block Copy in HEVC Screen Content Coding Extensions,” IEEE J. Emerg. Sel. Topics Circuits Syst., vol. 6, No.… [cited by applicant]
X. Xu, X. Li, G. Li and S. Liu, “CE8-2.2: Current picture referencing using reference index signaling”, JVET-K0076, 11th JVET meeting, Jul. 2018. [cited by applicant]
X. Xu, X. Li and S. Liu, “CE8: CPR mode with local search ranges (Test CE8.3.1 and CE8.3.2)”, JVET-L0293, 12th JVET meeting, Oct. 2018. [cited by applicant]
Bross, Benjamin et al. “Versatile Video Coding (Draft 3)” Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 12th Meeting: Macao, CN, Oct. 3-12, 2018; Document: JVET-L1001-v4. [cited by applicant]
Bross, Benjamin et al. “Versatile Video Coding (Draft 2)” Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 11th Meeting: Ljubljana, SI, Jul. 10-18, 2018; Document: JVET-K1001-v7. [cited by applicant]
Zhang, Li et al. “Suggested specification changes for JVET-L0266” Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 12th Meeting: Macao, CN, Oct. 3-12, 2018 Document: JVET-L0266-v1. [cited by applicant]
Chiang, Man-Shu et al. “CE10.1.1: Multi-hypothesis prediction for improving AMVP mode, skip or merge mode, and intra mode” Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 12th Meeting: … [cited by applicant]
Appendix of X. Xu, X. Li and S. Liu, “CE8: CPR mode with local search ranges (Test CE8.3.1 and CE8.3.2)”, JVET-L0293, 12th JVET meeting, Oct. 2018., Specification changes related to current CTU CPR mode and integer chro… [cited by applicant]
Supplementary European Search Report issued Feb. 7, 2022 in Application No. 19895107.1. [cited by applicant]
Li J et al. “Non-CE4: Harmonization between HMVP and GBi”, 125 MPEG Meeting; Jan. 14, 2019-Jan. 18, 2019; Marrakech; (Motion Picture Expert Group or ISO/IEC JTC1/SC29/WG11), No. M45530, Jan. 14, 2019. [cited by applicant]
Y-C Su et al., “CE4.4.1:Generalized bi-prediction for inter coding”, 11. JVET Meeting; ;Jul. 11, 2018-Jul. 18, 2018; Ljubljana; (The Joint Video Exploration Team of ISO/IEC JTC1/SC29/WG11 and ITU-T SG. 16) No. JVET-K024… [cited by applicant]
Korean Office Action issued Apr. 13, 2023 in Application No. 10-2021-7013065 with English Translation, pp. 1-13. [cited by applicant]
Chinese Office Action issued Sep. 27, 2023 in Application No. 201980063264.2 with English Translation, pp. 1-33. [cited by applicant]
Benjamin Bross, et al., Versatile Video Coding (Draft 4), Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 13th Meeting: Marrakech, MA, Jan. 9-18, 2019, Document: JVET-M1001-v7, pp. 1-30… [cited by applicant]
Cited By (1)
US 12,407,814