IP Library Granted Patent US 12,695,895
Granted Patent B2
US 12,695,895 · App. 18/783,241 · Granted Jul 28, 2026

Rules for intra-picture prediction modes when wavefront parallel processing is enabled

Inventors: Bin Li (Beijing, CN); Jizheng Xu (Beijing, CN)
Assignee: Microsoft Technology Licensing, LLC
H04N19/436H04N19/11H04N19/129H04N19/174H04N19/176H04N19/186H04N19/463H04N19/55H04N19/593H04N19/70H04N19/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,695,895
App. No.
18/783,241
Granted
Jul 28, 2026
Kind
B2
Abstract

Various innovations facilitate the use of intra-picture prediction modes such as palette prediction mode, intra block copy mode, intra line copy mode and intra string copy mode by an encoder or decoder when wavefront parallel processing (“WPP”) is enabled. For example, for a palette coding/decoding mode, an encoder or decoder predicts a palette for an initial unit in a current WPP row of a picture using previous palette data from a previous unit in a previous WPP row of the picture. Or, as another example, for an intra copy mode (e.g., intra block copy mode, intra string copy mode, intra line copy mode), an encoder enforces one or more constraints attributable to the WPP, or a decoder receives and decodes encoded data that satisfies one or more constraints attributable to WPP.

Claims (32)

1 . In a computing system, a method comprising:

receiving, as part of data in a bitstream, a flag that indicates whether or not wavefront parallel processing (“WPP”) is enabled, the flag being part of a picture parameter set syntax structure or sequence parameter set syntax structure in the bitstream;

determining, based on the flag, that WPP is enabled; and

reconstructing a picture, including, for a palette decoding mode, predicting a palette for an initial unit in a current WPP row of the picture using previous palette data from a previous unit in a previous WPP row of the picture, wherein the previous WPP row is immediately above the current WPP row, the previous unit in the previous WPP row being above the initial unit in the current WPP row, wherein the previous palette data from the previous unit in the previous WPP row includes, for each of C colors, one or more color component values, and wherein C is limited by a threshold count for the previous palette data from the previous unit in the previous WPP row.

2 . The method of claim 1 , wherein the palette for the initial unit in the current WPP row represents at least some colors used in the initial unit in the current WPP row.

3 . The method of claim 1 , wherein the previous palette data from the previous unit in the previous WPP row (a) represents at least some colors used in a palette for the previous unit in the previous WPP row or (b) was inherited by the previous unit in the previous WPP row.

4 . The method of claim 1 , wherein the reconstructing the picture further includes predicting a palette for a subsequent unit in the current WPP row of the picture using palette data from the palette for the initial unit in the current WPP row of the picture.

5 . The method of claim 1 , wherein the current WPP row and the previous WPP row are rows of coding tree units, and wherein the initial unit in the current WPP row and the previous unit in the previous WPP row are coding units.

6 . The method of claim 1 , wherein the predicting includes one or more of:

determining whether to reuse the previous palette data from the previous unit in the previous WPP row as the palette for the initial unit in the current WPP row; and

selecting one or more colors from the previous palette data from the previous unit in the previous WPP row to include in the palette for the initial unit in the current WPP row.

7 . The method of claim 1 , wherein the predicting the palette for the initial unit in the current WPP row does not use previous palette data from a last unit in the previous WPP row.

8 . The method of claim 1 , wherein the previous unit in the previous WPP row is immediately above the initial unit in the current WPP row or immediately above and to the right of the initial unit in the current WPP row.

9 . A computer system comprising a processor and memory, the computer system implementing a video encoder configured to perform operations comprising:

determining that wavefront parallel processing (“WPP”) is enabled;

outputting, as part of data in a bitstream, a flag that indicates whether or not WPP is enabled, the flag being part of a picture parameter set syntax structure or sequence parameter set syntax structure in the bitstream; and

encoding a picture, including, for a palette coding mode, predicting a palette for an initial unit in a current WPP row of the picture using previous palette data from a previous unit in a previous WPP row of the picture, wherein the previous WPP row is immediately above the current WPP row, the previous unit in the previous WPP row being above the initial unit in the current WPP row, wherein the previous palette data from the previous unit in the previous WPP row includes, for each of C colors, one or more color component values, and wherein C is limited by a threshold count for the previous palette data from the previous unit in the previous WPP row.

10 . The computer system of claim 9 , wherein the palette for the initial unit in the current WPP row represents at least some colors used in the initial unit in the current WPP row.

11 . The computer system of claim 9 , wherein the previous palette data from the previous unit in the previous WPP row (a) represents at least some colors used in a palette for the previous unit in the previous WPP row or (b) was inherited by the previous unit in the previous WPP row.

12 . The computer system of claim 9 , wherein the encoding the picture further includes predicting a palette for a subsequent unit in the current WPP row of the picture using palette data from the palette for the initial unit in the current WPP row of the picture.

13 . The computer system of claim 9 , wherein the current WPP row and the previous WPP row are rows of coding tree units, and wherein the initial unit in the current WPP row and the previous unit in the previous WPP row are coding units.

14 . The computer system of claim 9 , wherein the predicting includes one or more of:

determining whether to reuse the previous palette data from the previous unit in the previous WPP row as the palette for the initial unit in the current WPP row; and

selecting one or more colors from the previous palette data from the previous unit in the previous WPP row to include in the palette for the initial unit in the current WPP row.

15 . The computer system of claim 9 , wherein the predicting the palette for the initial unit in the current WPP row does not depend on previous palette data from a last unit in the previous WPP row.

16 . The computer system of claim 9 , wherein the previous unit in the previous WPP row is immediately above the initial unit in the current WPP row or immediately above and to the right of the initial unit in the current WPP row.

17 . One or more non-transitory computer-readable media having stored thereon data as part of a bitstream, wherein the data includes a flag that indicates whether or not wavefront parallel processing (“WPP”) is enabled, the flag being part of a picture parameter set syntax structure or sequence parameter set syntax structure, wherein the data further includes encoded data for one or more slices of a picture, and wherein the data is usable to cause a video decoder, when processing the data in a computer system having one or more processing units and memory, to perform operations comprising:

determining, based on the flag, that WPP is enabled; and

reconstructing the picture based at least in part on the encoded data for the one or more slices of the picture, including, for a palette decoding mode, predicting a palette for an initial unit in a current WPP row of the picture using previous palette data from a previous unit in a previous WPP row of the picture, wherein the previous WPP row is immediately above the current WPP row, the previous unit in the previous WPP row being above the initial unit in the current WPP row, wherein the previous palette data from the previous unit in the previous WPP row includes, for each of C colors, one or more color component values, and wherein C is limited by a threshold count for the previous palette data from the previous unit in the previous WPP row.

18 . The one or more computer-readable media of claim 17 , wherein the current WPP row and the previous WPP row are rows of coding tree units, and wherein the initial unit in the current WPP row and the previous unit in the previous WPP row are coding units.

19 . The one or more computer-readable media of claim 17 , wherein the previous palette data from the previous unit in the previous WPP row (a) represents at least some colors used in a palette for the previous unit in the previous WPP row or (b) was inherited by the previous unit in the previous WPP row.

20 . The one or more computer-readable media of claim 17 , wherein the previous unit in the previous WPP row is immediately above the initial unit in the current WPP row or immediately above and to the right of the initial unit in the current WPP row.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 20, 2024
From: LI, BIN; XU, JIZHENG
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 068346/0391 →
Continuity (5)
Continuation 18218796 · Jul 6, 2023
Continuation 17739299 · May 9, 2022
Continuation 17009495 · Sep 1, 2020
Continuation 15515559 · Sep 30, 2014
Related Publication 20240380908A1 · Nov 14, 2024
References Cited (127)
US 6249549B1 · Kim · 2001 [cited by applicant]
US 7027654B1 · Ameres et al. · 2006 [cited by applicant]
US 9591325B2 · Li et al. · 2017 [cited by applicant]
US 9699468B2 · Guo et al. · 2017 [cited by applicant]
US 9883203B2 · Chien et al. · 2018 [cited by applicant]
US 10368091B2 · Li et al. · 2019 [cited by applicant]
US 10390034B2 · Zhu et al. · 2019 [cited by applicant]
US 10469863B2 · Zhu et al. · 2019 [cited by applicant]
US 10506254B2 · Li et al. · 2019 [cited by applicant]
US 10542274B2 · Li et al. · 2020 [cited by applicant]
US 10582213B2 · Li et al. · 2020 [cited by applicant]
US 10652576B2 · Li et al. · 2020 [cited by applicant]
US 10659783B2 · Li et al. · 2020 [cited by applicant]
US 10785486B2 · Li et al. · 2020 [cited by applicant]
US 10812817B2 · Li et al. · 2020 [cited by applicant]
US 11109036B2 · Li et al. · 2021 [cited by applicant]
US 11172207B2 · Li et al. · 2021 [cited by applicant]
US 11252437B2 · Li et al. · 2022 [cited by applicant]
US 11284103B2 · Zhu et al. · 2022 [cited by applicant]
US 11317113B2 · Li et al. · 2022 [cited by applicant]
US 11363283B2 · Li · 2022 [cited by examiner]
US 11388433B2 · Zhu et al. · 2022 [cited by applicant]
US 11539956B2 · Li et al. · 2022 [cited by applicant]
US 11595679B1 · Zhu et al. · 2023 [cited by applicant]
US 11632558B2 · Li et al. · 2023 [cited by applicant]
US 11758162B2 · Li · 2023 [cited by examiner]
US 11910005B2 · Zhu et al. · 2024 [cited by applicant]
US 11985332B2 · Li et al. · 2024 [cited by applicant]
US 12081779B2 · Li · 2024 [cited by examiner]
US 12096024B2 · Li et al. · 2024 [cited by applicant]
US 12244823B2 · Li et al. · 2025 [cited by applicant]
US 20050185937A1 · Comer et al. · 2005 [cited by applicant]
US 20070206867A1 · Tamura et al. · 2007 [cited by applicant]
US 20090262835A1 · Srinivasan et al. · 2009 [cited by applicant]
US 20110194619A1 · Yu et al. · 2011 [cited by applicant]
US 20130322531A1 · Chen et al. · 2013 [cited by applicant]
US 20140003531A1 · Coban · 2014 [cited by examiner]
US 20140085418A1 · Takahashi et al. · 2014 [cited by applicant]
US 20140376634A1 · Guo et al. · 2014 [cited by applicant]
US 20150195559A1 · Chen et al. · 2015 [cited by applicant]
US 20150271487A1 · Li et al. · 2015 [cited by applicant]
US 20150271515A1 · Pang et al. · 2015 [cited by applicant]
US 20160100163A1 · Rapaka et al. · 2016 [cited by applicant]
US 20160323591A1 · Chuang · 2016 [cited by examiner]
US 20170026641A1 · Lai · 2017 [cited by examiner]
US 20170127058A1 · Misra · 2017 [cited by examiner]
US 20170302966A1 · Xu et al. · 2017 [cited by applicant]
US 20180184093A1 · Xu et al. · 2018 [cited by applicant]
US 20200351521A1 · Xu et al. · 2020 [cited by applicant]
US 20210360262A1 · Li et al. · 2021 [cited by applicant]
US 20220201326A1 · Li et al. · 2022 [cited by applicant]
US 20230091602A1 · Li et al. · 2023 [cited by applicant]
US 20240146955A1 · Zhu et al. · 2024 [cited by applicant]
US 20240244252A1 · Zhu et al. · 2024 [cited by applicant]
US 20240275987A1 · Li et al. · 2024 [cited by applicant]
EP 3090553 · 2016 [cited by applicant]
Communication pursuant to Article 94(3) EPC dated Aug. 27, 2024, from European Patent Application No. 22182574.8, 7 pp. [cited by applicant]
Communication under Rule 71(3) EPC dated Sep. 4, 2018, from European Patent Application No. 13895617.2, 7 pp. [cited by applicant]
Decision to Grant dated Mar. 19, 2020, from European Patent Application No. 15894584.0, 2 pp. [cited by applicant]
Decision to Grant dated May 8, 2020, from European Patent Application No. 13895646.1, 2 pp. [cited by applicant]
Decision to Grant dated Jun. 24, 2021, from European Patent Application No. 14903497.7, 2 pp. [cited by applicant]
Decision to Grant dated Feb. 1, 2024, from European Patent Application No. 15704401.7, 3 pp. [cited by applicant]
Examiner's Report dated May 16, 2024, from Canadian Patent Application No. 3,171,803, 4 pp. [cited by applicant]
Final Office Action dated Jul. 30, 2024, from U.S. Appl. No. 17/390,570, 9 pp. [cited by applicant]
Intimation of Grant dated May 13, 2022, from Indian Patent Application No. 201647021659, 1 p. [cited by applicant]
Intimation of Grant dated May 17, 2023, from Indian Patent Application No. 201647010364, 1 p. [cited by applicant]
Intimation of Grant dated Aug. 2, 2023, from Indian Patent Application No. 201647009425, 1 p. [cited by applicant]
Intimation of Grant dated Aug. 24, 2023, from Indian Patent Application No. 201717043138, 1 p. [cited by applicant]
Intimation of Grant dated Nov. 13, 2023, from Indian Patent Application No. 201647024024, 1 p. [cited by applicant]
Intimation of Grant dated Dec. 31, 2023, from Indian Patent Application No. 201647042695, 1 p. [cited by applicant]
Intimation of Grant dated Jan. 30, 2024, from Indian Patent Application No. 201647022794, 1 p. [cited by applicant]
Intimation of Grant dated Feb. 22, 2024, from Indian Patent Application No. 201647028726, 1 p. [cited by applicant]
Notice of Acceptance dated Jun. 5, 2018, from Australian Patent Application No. 2013403225, 3 pp. [cited by applicant]
Notice of Allowance dated Jul. 16, 2018, from Mexican Patent Application No. MX/a/2016/009128, 2 pp. [cited by applicant]
Notice of Allowance dated Mar. 13, 2019, from U.S. Appl. No. 15/029,469, 5 pp. [cited by applicant]
Notice of Allowance dated Mar. 20, 2019, from U.S. Appl. No. 14/222,580, 8 pp. [cited by applicant]
Notice of Allowance dated May 26, 2020, from U.S. Appl. No. 15/515,559, 8 pp. [cited by applicant]
Notice of Allowance dated Jul. 31, 2019, from U.S. Appl. No. 15/025,134, 14 pp. [cited by applicant]
Notice of Allowance dated Jan. 28, 2020, from Mexican Patent Application No. MX/a/2016/004705, 3 pp. [cited by applicant]
Notice of Allowance dated Nov. 3, 2020, from Mexican Patent Application No. MX/a/2017/004211, 5 pp. [cited by applicant]
Notice on Grant of Patent dated Oct. 10, 2019, from Chinese Patent Application No. 201480071878.2, 4 pp. [cited by applicant]
Office Action dated Sep. 10, 2024, from U.S. Appl. No. 18/632,052, 8 pp. [cited by applicant]
U.S. Appl. No. 18/792,374, filed Aug. 1, 2024. [cited by applicant]
Bahari et al., “Low-Power H.264 Video Compression Architectures for Mobile Communication,” IEEE Trans. On Circuits and Systems for Video Technology, vol. 19, No. 9, pp. 1251-1261 (Sep. 2009). [cited by applicant]
Budagavi et al., “HEVC ALF Decode Complexity Analysis and Reduction,” IEEE Int'l Conf on Image Processing, pp. 733-736 (2011). [cited by applicant]
Communication pursuant to Article 94(3) EPC dated Aug. 11, 2025, from European Patent Application No. 21186125.7, 4 pp. [cited by applicant]
Communication pursuant to Rules 70(2) and 70a(2) dated Aug. 1, 2017, from European Patent Application No. 13895569.5, 2 pp. [cited by applicant]
Communication pursuant to Rules 70(2) and 70a(2) dated Dec. 12, 2017, from European patent application No. 17175228.0, 2 pp. [cited by applicant]
Communication under Rule 71(3) EPC dated Mar. 10, 2026, from European Patent Application No. 24159778.0, 7 pp. [cited by applicant]
Decision of Reexamination dated Apr. 4, 2020, from Chinese Patent Application No. 201480029735.5, 18 pp. [cited by applicant]
Examiner's Report dated Apr. 17, 2025, from Canadian Patent Application No. 3,171,803, 3 pp. [cited by applicant]
Google Search Log cited by U.S. Patent Office in Notice of Allowance for U.S. Appl. No. 19/007,296, 3 pp. (2026). [cited by applicant]
Hearing Notice Received dated Oct. 25, 2023, from Indian Application No. 201647042695, 3 pp. [cited by applicant]
Intimation of grant dated Oct. 11, 2023, from Indian Patent Application No. 201747008352, 1 p. [cited by applicant]
Invitation pursuant to Rule 137(4) EPC and Article 94(3) EPC dated Dec. 2, 2025, form European Patent Application No. 20177289.4, 2 pp. [cited by applicant]
Norkin et al., “HEVC Deblocking Filtering and Decisions,” SPIE Optical Engineering + Applications, 8 pp. (2012). [cited by applicant]
Notice of Allowance dated Oct. 1, 2024, from U.S. Appl. No. 17/390,570, 14 pp. [cited by applicant]
Notice of Allowance dated Oct. 21, 2024, from U.S. Appl. No. 17/691,802, 14 pp. [cited by applicant]
Notice of Allowance dated Dec. 3, 2024, from Korean Patent Application No. 10-2023-7030245, 8 pp. [cited by applicant]
Notice of Allowance dated Jan. 29, 2025, from U.S. Appl. No. 18/632,052, 5 pp. [cited by applicant]
Notice of Allowance dated Mar. 26, 2025, from U.S. Appl. No. 18/620,604, 9 pp. [cited by applicant]
Notice of Allowance dated May 13, 2025, from U.S. Appl. No. 18/404,749, 14 pp. [cited by applicant]
Notice of Allowance dated Nov. 24, 2025, from U.S. Appl. No. 18/792,374, 7 pp. [cited by applicant]
Notice of Allowance dated Jan. 27, 2026, from U.S. Appl. No. 17/994,804, 12 pp. [cited by applicant]
Notice of Allowance dated Apr. 13, 2026, from U.S. Appl. No. 19/007,296, 9 pp. [cited by applicant]
Office Action dated Dec. 3, 2024, from U.S. Appl. No. 18/404,749, 26 pp. [cited by applicant]
Office Action dated Dec. 3, 2024, from U.S. Appl. No. 18/620,604, 8 pp. [cited by applicant]
Office Action dated Jul. 22, 2025, from U.S. Appl. No. 18/792,374, 10 pp. [cited by applicant]
Office Action dated Mar. 16, 2026, from U.S. Appl. No. 19/028,032, 8 pp. [cited by applicant]
Office Action dated Mar. 24, 2026, from U.S. Appl. No. 19/090,156, 10 pp. [cited by applicant]
Office Action dated Mar. 24, 2026, from U.S. Appl. No. 19/090,180, 10 pp. [cited by applicant]
Office Action dated Mar. 26, 2026, from U.S. Appl. No. 19/093,437, 10 pp. [cited by applicant]
Office Action dated Mar. 30, 2026, from U.S. Appl. No. 19/092,898, 9 pp. [cited by applicant]
Office Action dated Mar. 30, 2026, from U.S. Appl. No. 19/090,225, 10 pp. [cited by applicant]
Office Action dated Apr. 8, 2026, from U.S. Appl. No. 19/092,858, 13 pp. [cited by applicant]
Office Action dated Apr. 8, 2026, from U.S. Appl. No. 19/092,954, 13 pp. [cited by applicant]
Xu et al., “On Unification of Intra Block and Inter-picture Motion Compensation,” JCTVC-Q0132, v5, 14 pp. (Jan. 2014). [cited by applicant]
Communication pursuant to Article 94(3) EPC dated Apr. 8, 2026, from European Patent Application No. 22182574.8, 8 pp. [cited by applicant]
Notice of Allowance dated Apr. 15, 2026, from U.S. Appl. No. 19/090,204, 11 pp. [cited by applicant]
Notice of Allowance dated May 11, 2026, from U.S. Appl. No. 19/093,437, 6 pp. [cited by applicant]
Notice of Allowance dated May 13, 2026, from U.S. Appl. No. 19/093,411, 11 pp. [cited by applicant]
Office Action dated Apr. 20, 2026, from U.S. Appl. No. 19/092,988, 7 pp. [cited by applicant]
Office Action dated Apr. 29, 2026, from U.S. Appl. No. 19/089,845, 11 p. [cited by applicant]
Office Action dated Apr. 29, 2026, from U.S. Appl. No. 19/089,900, 11 pp. [cited by applicant]
Office Action dated Apr. 29, 2026, from U.S. Appl. No. 19/090,011, 9 pp. [cited by applicant]
Office Action dated Apr. 30, 2026, from U.S. Appl. No. 19/089,953, 11 pp. [cited by applicant]
Office Action dated Apr. 30, 2026, from U.S. Appl. No. 19/090,056, 11 pp. [cited by applicant]