IP Library › Granted Patent US 12,200,240
Granted Patent B2
US 12,200,240 · App. 18/753,216 · Granted Jan 14, 2025

Signaling general constraints information for video coding

Inventors: Jonathan Gan (Palo Alto, CA); Yue Yu (Palo Alto, CA); Haoping Yu (Palo Alto, CA)
Assignee: GUANGDONG OPPO MOBILE TELECOMMUNICATIONS CORP., LTD.
H04N19/46H04N19/124H04N19/184
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,200,240
App. No.
18/753,216
Granted
Jan 14, 2025
Kind
B2
Abstract

A method for decoding a video includes that: a decoder decodes a video from a bitstream of the video; the decoder accesses a bitstream of the video and extracts a GCI flag from the bitstream; the decoder determines that one or more general constraints are imposed for the video based on the GCI flag value and extracts, from the bitstream of the video, a value indicating a quantity of additional bits included in the bitstream of the video, the additional bits include flag bits indicating respective additional coding tools to be constrained for the video; if the value is greater than five, the decoder extracts six flags from the bitstream of the video that indicate respective constraints for six additional coding tools; and the decoder decodes the bitstream of the video into images based on the constraints for the six additional coding tools indicated by the six flags.

Claims (112)

1. A method for decoding a video, performed by a video decoder, the method comprising:

extracting a general constraints information (GCI) flag from a bitstream of the video;

determining that one or more general constraints are imposed for the video based on a value of the GCI flag;

in response to determining that one or more general constraints are imposed for the video, extracting, from the bitstream of the video, a value indicating a quantity of additional bits included in the bitstream of the video, the additional bits comprising flag bits indicating respective additional coding tools to be constrained for the video;

determining that the value is greater than five;

in response to determining that the value is greater than five,

extracting, from the bitstream, six flag bits representing six respective flags indicating respective constraints for six additional coding tools; and

decoding a remaining portion of the bitstream of the video into images based, at least in part, upon the constraints for the six additional coding tools indicated by the six flags.

2. The method of claim 1 , wherein the six flags comprise:

a first flag indicating a restriction on pictures of the video to be either Intra random access point (IRAP) pictures or gradual decoder refresh (GDR) pictures;

a second flag indicating whether an extended transform precision is constrained;

a third flag indicating whether an explicit Rice parameter signaling is constrained;

a fourth flag indicating an alternative Rice parameter derivation for binarization of quantization residuals of the video;

a fifth flag indicating whether to initialize Rice parameter derivation for binarization based on previous transform units; and

a sixth flag indicating whether to impose a constraint on pictures in an in-scope output layer set OlsInScope when decoding a position of a last non-zero level in a transform unit.

3. The method of claim 2 , further comprising one or more of:

determining that the first flag is not present in the bitstream and inferring a value of the first flag to be 0 indicating no constraint is imposed for a corresponding coding tool;

determining that the second flag is not present in the bitstream and inferring a value of the second flag to be 0 indicating no constraint is imposed for a corresponding coding tool;

determining that the third flag is not present in the bitstream and inferring a value of the third flag to be 0 indicating no constraint is imposed for a corresponding coding tool;

determining that the fourth flag is not present in the bitstream and inferring a value of the fourth flag to be 0 indicating no constraint is imposed for a corresponding coding tool;

determining that the fifth flag is not present in the bitstream and inferring a value of the fifth flag to be 0 indicating no constraint is imposed for a corresponding coding tool; or

determining that the sixth flag is not present in the bitstream and inferring a value of the sixth flag to be 0 indicating no constraint is imposed for a corresponding coding tool.

4. The method of claim 2 , wherein decoding the remaining portion of the bitstream of the video into images based, at least in part, upon the constraints for the six additional coding tools indicated by the six flags comprises one or more of:

determining all pictures in one or more output layer sets are GDR pictures with ph_recovery_poc_cnt equal to 0 or IRAP pictures based on the first flag being one, and decoding the GDR pictures or IRAP pictures in the one or more output layer sets;

determining that an extended transform precision is constrained based on the second flag being one and decoding the remaining portion of the bitstream of the video by setting sps_extended_precision_flag for pictures in an in-scope output layer set OlsInScope be equal to 0 so that extended dynamic range is not used;

determining that an explicit Rice parameter signaling is constrained based on the third flag being one, and decoding the remaining portion of the bitstream of the video by disabling alternative Rice parameter signaling for pictures in the in-scope output layer set OlsInScope;

determining that an alternative Rice parameter derivation for binarization of quantization residuals of the video is constrained based on the fourth flag being one, and decoding the remaining portion of the bitstream of the video by disabling alternative Rice parameter signaling for pictures in the in-scope output layer set OlsInScope;

determining that an initialization of Rice parameter derivation for binarization based on previous transform unit state is constrained based on determining the fifth flag being one, and decoding the remaining portion of the bitstream of the video without initializing Rice parameter based on previous transform unit state for pictures in the in-scope output layer set OlsInScope; or

determining that coordinates of a last significant coefficient are coded relative to a top-left corner for each transform block of a slice based on the sixth flag being one and decoding the remaining portion of the bitstream of the video by interpreting decoded coordinates of the last significant coefficient as being relative to the top-left corner for each transform block of the slice.

5. The method of claim 1 , wherein the GCI flag is extracted from a network packet of the video, a video parameter set of the video, or a sequence parameter set of the video.

6. The method of claim 1 , further comprising:

in response to determining that the value is greater than five, setting a value numAdditionalBitsUsed indicating extracted additional bits to be 6;

extracting a set of bits from the bitstream, wherein a number of bits in the set of bits equals to gci_num_additional_bits—numAdditionalBitsUsed, gci_num_additional_bits representing the value; and

decoding the remaining portion of the bitstream of the video into images independent of the set of bits.

7. The method of claim 1 , further comprising:

in response to determining that the value is not greater than five, setting a value numAdditionalBitsUsed indicating extracted additional bits to be 0;

extracting a set of bits from the bitstream, wherein a number of bits in the set of bits equals to gci_num_additional_bits-numAdditionalBitsUsed, gci_num_additional_bits representing the value; and

decoding the remaining portion of the bitstream of the video into images independent of the extracted set of bits.

8. A non-transitory computer-readable medium having program code that is stored thereon, the program code executable by one or more processing devices for performing operations comprising:

extracting a general constraints information (GCI) flag from a bitstream of a video;

determining that one or more general constraints are imposed for the video based on a value of the GCI flag;

in response to determining that one or more general constraints are imposed for the video, extracting, from the bitstream of the video, a value indicating a quantity of additional bits included in the bitstream of the video, the additional bits comprising flag bits indicating respective additional coding tools to be constrained for the video;

determining that the value is greater than five;

in response to determining that the value is greater than five,

extracting, from the bitstream, six flag bits representing six respective flags indicating respective constraints for six additional coding tools; and

decoding a remaining portion of the bitstream of the video into images based, at least in part, upon the constraints for the six additional coding tools indicated by the six flags.

9. The non-transitory computer-readable medium of claim 8 , wherein the six flags comprise:

a first flag indicating a restriction on pictures of the video to be either Intra random access point (IRAP) pictures or gradual decoder refresh (GDR) pictures;

a second flag indicating whether an extended transform precision is constrained;

a third flag indicating whether an explicit Rice parameter signaling is constrained;

a fourth flag indicating an alternative Rice parameter derivation for binarization of quantization residuals of the video;

a fifth flag indicating whether to initialize Rice parameter derivation for binarization based on previous transform units; and

a sixth flag indicating whether to impose a constraint on pictures in an in-scope output layer set OlsInScope when decoding a position of a last non-zero level in a transform unit.

10. The non-transitory computer-readable medium of claim 9 , wherein the operations further comprise one or more of:

determining that the first flag is not present in the bitstream and inferring a value of the first flag to be 0 indicating no constraint is imposed for a corresponding coding tool;

determining that the second flag is not present in the bitstream and inferring a value of the second flag to be 0 indicating no constraint is imposed for a corresponding coding tool;

determining that the third flag is not present in the bitstream and inferring a value of the third flag to be 0 indicating no constraint is imposed for a corresponding coding tool;

determining that the fourth flag is not present in the bitstream and inferring a value of the fourth flag to be 0 indicating no constraint is imposed for a corresponding coding tool;

determining that the fifth flag is not present in the bitstream and inferring a value of the fifth flag to be 0 indicating no constraint is imposed for a corresponding coding tool; and

determining that the sixth flag is not present in the bitstream and inferring a value of the sixth flag to be 0 indicating no constraint is imposed for a corresponding coding tool.

11. The non-transitory computer-readable medium of claim 9 , wherein decoding the remaining portion of the bitstream of the video into images based, at least in part, upon the constraints for the six additional coding tools indicated by the six flags comprises one or more of:

determining all pictures in one or more output layer sets are GDR pictures with ph_recovery_poc_cnt equal to 0 or IRAP pictures based on the first flag being one, and decoding the GDR pictures or IRAP pictures in the one or more output layer sets;

determining that an extended transform precision is constrained based on the second flag being one and decoding the remaining portion of the bitstream of the video by setting sps_extended_precision_flag for pictures in an in-scope output layer set OlsInScope be equal to 0 so that extended dynamic range is not used;

determining that an explicit Rice parameter signaling is constrained based on the third flag being one, and decoding the remaining portion of the bitstream of the video by disabling alternative Rice parameter signaling for pictures in the in-scope output layer set OlsInScope;

determining that an alternative Rice parameter derivation for binarization of quantization residuals of the video is constrained based on the fourth flag being one, and decoding the remaining portion of the bitstream of the video by disabling alternative Rice parameter signaling for pictures in the in-scope output layer set OlsInScope;

determining that an initialization of Rice parameter derivation for binarization based on previous transform unit state is constrained based on determining the fifth flag being one, and decoding the remaining portion of the bitstream of the video without initializing Rice parameter based on previous transform unit state for pictures in the in-scope output layer set OlsInScope; or

determining that coordinates of a last significant coefficient are coded relative to a top-left corner for each transform block of a slice based on the sixth flag being one and decoding the remaining portion of the bitstream of the video by interpreting decoded coordinates of the last significant coefficient as being relative to the top-left corner for each transform block of the slice.

12. The non-transitory computer-readable medium of claim 8 , wherein the GCI flag is extracted from a network packet of the video, a video parameter set of the video, or a sequence parameter set of the video.

13. The non-transitory computer-readable medium of claim 8 , wherein the operations further comprise:

in response to determining that the value is greater than five, setting a value numAdditionalBitsUsed indicating extracted additional bits to be 6;

extracting a set of bits from the bitstream, wherein a number of bits in the set of bits equals to gci_num_additional_bits—numAdditionalBitsUsed, gci_num_additional_bits representing the value; and

decoding the remaining portion of the bitstream of the video into images independent of the set of bits.

14. The non-transitory computer-readable medium of claim 8 , wherein the operations further comprise:

in response to determining that the value is not greater than five, setting a value numAdditionalBitsUsed indicating extracted additional bits to be 0;

extracting a set of bits from the bitstream, wherein a number of bits in the set of bits equals to gci_num_additional_bits-numAdditionalBitsUsed, gci_num_additional_bits representing the value; and

decoding the remaining portion of the bitstream of the video into images independent of the extracted set of bits.

15. A system comprising:

a processing device; and

a non-transitory computer-readable medium communicatively coupled to the processing device, wherein the processing device is configured to execute program code stored in the non-transitory computer-readable medium and thereby perform operations comprising:

extracting a general constraints information (GCI) flag from a bitstream of a video;

determining that one or more general constraints are imposed for the video based on a value of the GCI flag;

in response to determining that one or more general constraints are imposed for the video, extracting, from the bitstream of the video, a value indicating a quantity of additional bits included in the bitstream of the video, the additional bits comprising flag bits indicating respective additional coding tools to be constrained for the video;

determining that the value is greater than five;

in response to determining that the value is greater than five,

extracting, from the bitstream, six flag bits representing six respective flags indicating respective constraints for six additional coding tools; and

decoding a remaining portion of the bitstream of the video into images based, at least in part, upon the constraints for the six additional coding tools indicated by the six flags.

16. The system of claim 15 , wherein the six flags comprise:

a first flag indicating a restriction on pictures of the video to be either Intra random access point (IRAP) pictures or gradual decoder refresh (GDR) pictures;

a second flag indicating whether an extended transform precision is constrained;

a third flag indicating whether an explicit Rice parameter signaling is constrained;

a fourth flag indicating an alternative Rice parameter derivation for binarization of quantization residuals of the video;

a fifth flag indicating whether to initialize Rice parameter derivation for binarization based on previous transform units; and

a sixth flag indicating whether to impose a constraint on pictures in an in-scope output layer set OlsInScope when decoding a position of a last non-zero level in a transform unit.

17. The system of claim 16 , wherein the operations further comprise one or more of:

determining that the first flag is not present in the bitstream and inferring a value of the first flag to be 0 indicating no constraint is imposed for a corresponding coding tool;

determining that the second flag is not present in the bitstream and inferring a value of the second flag to be 0 indicating no constraint is imposed for a corresponding coding tool;

determining that the third flag is not present in the bitstream and inferring a value of the third flag to be 0 indicating no constraint is imposed for a corresponding coding tool;

determining that the fourth flag is not present in the bitstream and inferring a value of the fourth flag to be 0 indicating no constraint is imposed for a corresponding coding tool;

determining that the fifth flag is not present in the bitstream and inferring a value of the fifth flag to be 0 indicating no constraint is imposed for a corresponding coding tool; or

determining that the sixth flag is not present in the bitstream and inferring a value of the sixth flag to be 0 indicating no constraint is imposed for a corresponding coding tool.

18. The system of claim 16 , wherein decoding the remaining portion of the bitstream of the video into images based, at least in part, upon the constraints for the six additional coding tools indicated by the six flags comprises one or more of:

determining all pictures in one or more output layer sets are GDR pictures with ph_recovery_poc_cnt equal to 0 or IRAP pictures based on the first flag being one, and decoding the GDR pictures or IRAP pictures in the one or more output layer sets;

determining that an extended transform precision is constrained based on the second flag being one and decoding the remaining portion of the bitstream of the video by setting sps_extended_precision_flag for pictures in an in-scope output layer set OlsInScope be equal to 0 so that extended dynamic range is not used;

determining that an explicit Rice parameter signaling is constrained based on the third flag being one, and decoding the remaining portion of the bitstream of the video by disabling alternative Rice parameter signaling for pictures in the in-scope output layer set OlsInScope;

determining that an alternative Rice parameter derivation for binarization of quantization residuals of the video is constrained based on the fourth flag being one, and decoding the remaining portion of the bitstream of the video by disabling alternative Rice parameter signaling for pictures in the in-scope output layer set OlsInScope;

determining that an initialization of Rice parameter derivation for binarization based on previous transform unit state is constrained based on determining the fifth flag being one, and decoding the remaining portion of the bitstream of the video without initializing Rice parameter based on previous transform unit state for pictures in the in-scope output layer set OlsInScope; or

determining that coordinates of a last significant coefficient are coded relative to a top-left corner for each transform block of a slice based on the sixth flag being one and decoding the remaining portion of the bitstream of the video by interpreting decoded coordinates of the last significant coefficient as being relative to the top-left corner for each transform block of the slice.

19. The system of claim 15 , wherein the GCI flag is extracted from a network packet of the video, a video parameter set of the video, or a sequence parameter set of the video.

20. The system of claim 15 , wherein the operations further comprise:

in response to determining that the value is greater than five, setting a value numAdditionalBitsUsed indicating extracted additional bits to be 6;

extracting a set of bits from the bitstream, wherein a number of bits in the set of bits equals to gci_num_additional_bits—numAdditionalBitsUsed, gci_num_additional_bits representing the value; and

decoding the remaining portion of the bitstream of the video into images independent of the set of bits.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 25, 2024
From: GAN, JONATHAN; YU, YUE; YU, HAOPING
To: GUANGDONG OPPO MOBILE TELECOMMUNICATIONS CORP., LTD.
Reel/Frame 067829/0200 →
Continuity (5)
Continuation PCTUS2022079494 · Nov 8, 2022
Provisional Application 63266765 · Jan 13, 2022
Provisional Application 63266616 · Jan 10, 2022
Provisional Application 63266615 · Jan 10, 2022
Related Publication 20240364910A1 · Oct 31, 2024
References Cited (33)
US 11838554B2 · Deng · 2023 [cited by applicant]
US 11889119B2 · Deng · 2024 [cited by applicant]
US 11924474B2 · Zhang · 2024 [cited by applicant]
US 11924475B2 · Deng · 2024 [cited by applicant]
US 11956474B2 · Deng · 2024 [cited by applicant]
US 11997317B2 · Choi · 2024 [cited by applicant]
US 20130315563A1 · Kikuchi · 2013 [cited by applicant]
US 20170347128A1 · Panusopone · 2017 [cited by applicant]
US 20210136369A1 · Lim · 2021 [cited by applicant]
US 20210314587A1 · Choi · 2021 [cited by applicant]
US 20210314623A1 · Chang · 2021 [cited by applicant]
US 20230101542A1 · Choi · 2023 [cited by examiner]
US 20230122189A1 · Wang · 2023 [cited by examiner]
US 20240283979A1 · Wang · 2024 [cited by examiner]
WO 2021127723A1 · 2021 [cited by applicant]
WO 2021160165A1 · 2021 [cited by applicant]
WO 2021202178A1 · 2021 [cited by applicant]
WO 2021216736A1 · 2021 [cited by applicant]
WO 2021252396A1 · 2021 [cited by applicant]
WO 2022214877A1 · 2022 [cited by applicant]
Bossen et al. VVC operation range extensions (Draft 5) Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1 /SC 29 24th Meeting, by teleconference, Oct. 6-15, 2021. [cited by examiner]
Wenger, “H.264/AVC Over IP”; Published in: IEEE Transactions on Circuits and Systems for Video Technology (vol. 13, Issue: 7, Jul. 2003); Date of Publication: Jul. 2003; entire document. 12 pages. [cited by applicant]
International Search Report in the international application No. PCT/US2022/079494, mailed on Feb. 2, 2023. 2 pages. [cited by applicant]
Written Opinion of the International Search Authority in the international application No. PCT/US2022/079494, mailed on Feb. 2, 2023. 7 pages. [cited by applicant]
International Search Report in the international application No. PCT/US2022/079490, mailed on Feb. 2, 2023. 2 pages. [cited by applicant]
Written Opinion of the International Search Authority in the international application No. PCT/US2022/079490, mailed on Feb. 2, 2023. 8 pages. [cited by applicant]
International Search Report in the international application No. PCT/US2022/079487, mailed on Feb. 7, 2023. 2 pages. [cited by applicant]
Written Opinion of the International Search Authority in the international application No. PCT/US2022/079487, mailed on Feb. 7, 2023. 3 pages. [cited by applicant]
Benjamin Bross et al, “Versatile Video Coding Editorial Refinements on Draft 10”, Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and Iso/iec jtc 1/SC 29 JVET-T2001-v2, 20th Meeting, by teleconference, Oct. 7-16, 20… [cited by applicant]
Frank Bossen et al, “VVC operation range extensions (Draft 5)”, Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29 JVET-X2005-v1, 24th Meeting, by teleconference, Oct. 6-15, 2021, entire documen… [cited by applicant]
Gary Sullivan, “Meeting Report of the 18th Meeting of the Joint Video Experts Team (JVET), by teleconference, Apr. 15-24, 2020”, Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11, JVET-R2… [cited by applicant]
Yao-Jen Chang, “AhG9: On general constraint information syntax”, Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11, JVET-R0286, 18th Meeting: by teleconference, Apr. 15-24, 2020, pp. 1-5. [cited by applicant]
Non Final Office Action of the U.S. Appl. No. 18/764,570, issued on Aug. 27, 2024. 16 pages. [cited by applicant]