IP Library Granted Patent US 11,758,162
Granted Patent B2
US 11,758,162 · App. 17/739,299 · Granted Sep 12, 2023

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 11,758,162
App. No.
17/739,299
Granted
Sep 12, 2023
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 (36)

1. One or more computer-readable media having stored thereon computer-executable instructions for causing one or more processing units, when programmed thereby, to perform operations, the one or more computer-readable media being selected from the group consisting of volatile memory, non-volatile memory, and storage, the operations comprising:

receiving encoded data as part of a bitstream; and

decoding the encoded data with wavefront parallel processing (“WPP”) enabled, wherein the decoding reconstructs 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 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 one or more computer-readable media 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;

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; and

the previous unit in the previous WPP row is above the initial unit in the current WPP row or above and to the right of the initial unit in the current WPP row.

3. The one or more computer-readable media of claim 1 , wherein the operations further comprise:

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.

4. The one or more computer-readable media 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.

5. The one or more computer-readable media of claim 1 , wherein the predicting the palette for the initial unit in the current WPP row 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.

6. The one or more computer-readable media of claim 1 , wherein the previous unit in the previous WPP row is an initial unit in the previous WPP row.

7. The one or more computer-readable media 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 one or more computer-readable media of claim 1 , wherein the encoded data includes 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.

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

10. In a computer system that implements a video encoder, a method comprising:

encoding a picture with wavefront parallel processing (“WPP”) enabled, wherein the encoding produces encoded data, 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 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; and

outputting the encoded data as part of a bitstream.

11. The method of claim 10 , 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;

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; and

the previous unit in the previous WPP row is above the initial unit in the current WPP row or above and to the right of the initial unit in the current WPP row.

12. The method of claim 10 , further comprising:

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 method of claim 10 , 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 method of claim 10 , wherein the predicting the palette for the initial unit in the current WPP row 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 method of claim 10 , wherein the previous unit in the previous WPP row is an initial unit in the previous WPP row.

16. The method of claim 10 , 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.

17. The method of claim 10 , wherein the encoded data includes 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.

18. The method of claim 10 , wherein the previous WPP row is immediately above the current WPP row, and the previous unit in the previous WPP row is immediately above the initial unit in the current WPP row.

19. One or more computer-readable media having stored thereon encoded data as part of a bitstream, the one or more computer-readable media being selected from the group consisting of volatile memory, non-volatile memory, and storage, wherein the encoded 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, and wherein the encoded data results from encoding a picture with WPP enabled by operations comprising, 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 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.

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

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 17, 2022
From: LI, BIN; XU, JIZHENG
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 060235/0243 →
Continuity (3)
Continuation 17009495 · Sep 1, 2020
Continuation 15515559
Related Publication 20220264131A1 · Aug 18, 2022
Cited By (9)
US 12,244,823 US 12,262,045 US 12,316,860 US 12,375,711 US 12,413,771 US 12,556,742 US 12,634,458 US 12,695,895 US 12,701,249