IP Library › Granted Patent US 11,303,935
Granted Patent B2
US 11,303,935 · App. 16/924,941 · Granted Apr 12, 2022

Deriving coding system operational configuration

Inventors: Dmytro Rusanovskyy (San Diego, CA); Adarsh Krishnan Ramasubramonian (Irvine, CA)
Assignee: Qualcomm Incorporated
H04N19/70H04N19/44
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,303,935
App. No.
16/924,941
Granted
Apr 12, 2022
Kind
B2
Abstract

A device for coding video data, the device comprising a memory configured to store video data; and one or more processors implemented in circuitry and configured to: code a value for a profile indicator syntax element in a bitstream including video data, the value for the profile indicator representing a class of a profile to which the bitstream conforms; code one or more values representing one or more coding-tool-specific constraints, separate from the profile indicator syntax element, each of the coding-tool-specific constraints indicating whether coding tools corresponding to the coding-tool-specific constraints can be enabled for at least a subset of the bitstream; and code the video data according to the coding-tool-specific constraints and the class of the profile.

Claims (54)

1. A method of coding video data, the method comprising:

coding a value for a profile indicator syntax element in a bitstream including video data, the value for the profile indicator representing a class of a profile to which the bitstream conforms;

coding a single value representing a plurality of coding-tool-specific constraints, separate from the profile indicator syntax element, the single value being represented by a plurality of bits, each of the bits corresponding to one of the coding-tool-specific constraints, each of the coding-tool-specific constraints indicating whether coding tools corresponding to the coding-tool-specific constraints can be enabled for at least a subset of the bitstream according to a value of the one of the bits for the corresponding one of the coding-tool-specific constraints; and

coding the video data according to the coding-tool-specific constraints and the class of the profile.

2. The method of claim 1 , further comprising coding a value for a syntax element representing that coding-tool-specific enabling/disabling indications are signaled in the bitstream.

3. The method of claim 2 , wherein the syntax element representing that the coding-tool-specific enabling/disabling indications are signaled comprises a constrained_tool_indication_flag.

4. The method of claim 2 , wherein the value for the syntax element representing that the coding-tool-specific enabling/disabling indications are signaled has a predefined value according to the value for the profile indicator syntax element.

5. The method of claim 2 , wherein the value for the syntax element representing whether the coding-tool-specific enabling/disabling indications are signaled indicates that all of the tools corresponding to the coding-tool-specific constraints are disabled when the value for the profile indicator syntax element indicates that the bitstream conforms to a baseline profile.

6. The method of claim 2 , further comprising, for each of the coding tools that can be enabled as indicated by the coding-tool-specific constraints, coding values for syntax elements representing the coding-tool-specific enabling/disabling indications, without coding values for syntax elements representing the coding-tool-specific enabling/disabling indications for coding tools that cannot be enabled as indicated by the coding-tool-specific constraints.

7. The method of claim 6 , wherein the syntax elements representing the coding-tool-specific enabling/disabling indications comprise respective constrained_tool_val syntax elements.

8. The method of claim 1 , further comprising deriving a value for a coding tool variable representing whether one of the coding tools is enabled or disabled using at least one of the value for the profile indicator syntax element or the single value representing the one or more plurality of coding-tool-specific constraints.

9. The method of claim 1 , wherein coding the single value representing the plurality of coding-tool-specific constraints comprises coding a single value for a toolset indicator representing a set of constraints to which the bitstream conforms.

10. The method of claim 1 , wherein coding the video data comprises decoding the video data.

11. The method of claim 1 , wherein coding the video data comprises encoding the video data.

12. A device for coding video data, the device comprising:

a memory configured to store video data; and

one or more processors implemented in circuitry and configured to:

code a value for a profile indicator syntax element in a bitstream including video data, the value for the profile indicator representing a class of a profile to which the bitstream conforms;

code a single value representing a plurality of coding-tool-specific constraints, separate from the profile indicator syntax element, the single value being represented by a plurality of bits, each of the bits corresponding to one of the coding-tool-specific constraints, each of the coding-tool-specific constraints indicating whether coding tools corresponding to the coding-tool-specific constraints can be enabled for at least a subset of the bitstream according to a value of the one of the bits for the corresponding one of the coding-tool-specific constraints; and

code the video data according to the coding-tool-specific constraints and the class of the profile.

13. The device of claim 12 , wherein the one or more processors are further configured to code a value for a syntax element representing that coding-tool-specific enabling/disabling indications are signaled in the bitstream.

14. The device of claim 13 , wherein the syntax element representing that the coding-tool-specific enabling/disabling indications are signaled comprises a constrained_tool_indication_flag.

15. The device of claim 13 , wherein the value for the syntax element representing that the coding-tool-specific enabling/disabling indications are signaled has a predefined value according to the value for the profile indicator syntax element.

16. The device of claim 13 , wherein the value for the syntax element representing whether the coding-tool-specific enabling/disabling indications are signaled indicates that all of the tools corresponding to the coding-tool-specific constraints are disabled when the value for the profile indicator syntax element indicates that the bitstream conforms to a baseline profile.

17. The device of claim 13 , wherein the one or more processors are configured to, for each of the coding tools that can be enabled as indicated by the coding-tool-specific constraints, code values for syntax elements representing the coding-tool-specific enabling/disabling indications, without coding values for syntax elements representing the coding-tool-specific enabling/disabling indications for coding tools that cannot be enabled as indicated by the coding-tool-specific constraints.

18. The device of claim 17 , wherein the syntax elements representing the coding-tool-specific enabling/disabling indications comprise respective constrained_tool_val syntax elements.

19. The device of claim 12 , wherein the one or more processors are further configured to derive a value for a coding tool variable representing whether one of the coding tools is enabled or disabled using at least one of the value for the profile indicator syntax element or the single value representing the plurality of coding-tool-specific constraints.

20. The device of claim 12 , wherein to code the single value representing the plurality of coding-tool-specific constraints, the one or more processors are configured to code a single value for a toolset indicator representing a set of constraints to which the bitstream conforms.

21. The device of claim 12 , wherein the device comprises a video decoder, and wherein the one or more processors are configured to decode the video data.

22. The device of claim 12 , wherein the device comprises a video encoder, and wherein the one or more processors are configured to encode the video data.

23. The device of claim 12 , further comprising a display configured to display the video data.

24. The device of claim 12 , wherein the device comprises one or more of a camera, a computer, a mobile device, a broadcast receiver device, or a set-top box.

25. The device of claim 12 , wherein the device comprises at least one of:

an integrated circuit;

a microprocessor; or

a wireless communication device.

26. A non-transitory computer-readable storage medium having stored thereon instructions that, when executed, cause a processor to:

code a value for a profile indicator syntax element in a bitstream including video data, the value for the profile indicator representing a class of a profile to which the bitstream conforms;

code a single value representing a plurality of coding-tool-specific constraints, separate from the profile indicator syntax element, the single value being represented by a plurality of bits, each of the bits corresponding to one of the coding-tool-specific constraints, each of the coding-tool-specific constraints indicating whether coding tools corresponding to the coding-tool-specific constraints can be enabled for at least a subset of the bitstream according to a value of the one of the bits for the corresponding one of the coding-tool-specific constraints; and

code the video data according to the coding-tool-specific constraints and the class of the profile.

27. The non-transitory computer-readable storage medium of claim 26 , further comprising instructions that cause the processor to code a value for a syntax element representing that coding-tool-specific enabling/disabling indications are signaled in the bitstream.

28. The non-transitory computer-readable storage medium of claim 27 , wherein the syntax element representing that the coding-tool-specific enabling/disabling indications are signaled comprises a constrained_tool_indication_flag.

29. The non-transitory computer-readable storage medium of claim 27 , wherein the value for the syntax element representing that the coding-tool-specific enabling/disabling indications are signaled has a predefined value according to the value for the profile indicator syntax element.

30. The non-transitory computer-readable storage medium of claim 27 , wherein the value for the syntax element representing whether the coding-tool-specific enabling/disabling indications are signaled indicates that all of the tools corresponding to the coding-tool-specific constraints are disabled when the value for the profile indicator syntax element indicates that the bitstream conforms to a baseline profile.

31. The non-transitory computer-readable storage medium of claim 27 , further comprising instructions that cause the processor to, for each of the coding tools that can be enabled as indicated by the coding-tool-specific constraints, code values for syntax elements representing the coding-tool-specific enabling/disabling indications, without coding values for syntax elements representing the coding-tool-specific enabling/disabling indications for coding tools that cannot be enabled as indicated by the coding-tool-specific constraints.

32. The non-transitory computer-readable storage medium of claim 31 , wherein the syntax elements representing the coding-tool-specific enabling/disabling indications comprise respective constrained_tool_val syntax elements.

33. The non-transitory computer-readable storage medium of claim 26 , further comprising instructions that cause the processor to derive a value for a coding tool variable representing whether one of the coding tools is enabled or disabled using at least one of the value for the profile indicator syntax element or the single value representing the plurality of coding-tool-specific constraints.

34. The non-transitory computer-readable storage medium of claim 26 , wherein the instructions that cause the processor to code the single value representing the plurality of coding-tool-specific constraints comprise instructions that cause the processor to code a single value for a toolset indicator representing a set of constraints to which the bitstream conforms.

35. The non-transitory computer-readable storage medium of claim 26 , wherein the instructions that cause the processor to code the video data comprise instructions that cause the processor to decode the video data.

36. The non-transitory computer-readable storage medium of claim 26 , wherein the instructions that cause the processor to code the video data comprise instructions that cause the processor to encode the video data.

37. A device for decoding video data, the device comprising:

means for coding a value for a profile indicator syntax element in a bitstream including video data, the value for the profile indicator representing a class of a profile to which the bitstream conforms;

means for coding a single value representing a plurality of coding-tool-specific constraints, separate from the profile indicator syntax element, the single value being represented by a plurality of bits, each of the bits corresponding to one of the coding-tool-specific constraints, each of the coding-tool-specific constraints indicating whether coding tools corresponding to the coding-tool-specific constraints can be enabled for at least a subset of the bitstream according to a value of the one of the bits for the corresponding one of the coding-tool-specific constraints; and

means for coding the video data according to the coding-tool-specific constraints and the class of the profile.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 19, 2021
From: RUSANOVSKYY, DMYTRO; RAMASUBRAMONIAN, ADARSH KRISHNAN
To: QUALCOMM INCORPORATED
Reel/Frame 055336/0228 →
Continuity (4)
Provisional Application 62926145 · Oct 25, 2019
Provisional Application 62912526 · Oct 8, 2019
Provisional Application 62872637 · Jul 10, 2019
Related Publication 20210014535A1 · Jan 14, 2021