Using constraints on media file formats to improve performance
First Claim
Patent Images
1. A computer-implemented process comprising:
- receiving into memory a bitstream of encoded data, the encoded data being compliant with a defined standard and including packets of data and comprising sample data and auxiliary information corresponding to the sample data;
analyzing the bitstream, using a processor connected to the memory, for compliance with additional constraints, including at least resolving conflicts between implied values derived for an optional data field in the encoded bitstream using two or more rules from a specification and applied to another data field in the encoded bitstream, by;
identifying a first structure in a packet, the first structure having an omitted optional data field with respect to the specification;
identifying a second structure in the packet, the second structure having a data field;
wherein the first and second structure are contained in a third structure in the bitstream;
wherein the third structure comprises a plurality of such second structures;
applying an order of preference to select one of the plurality of second structures; and
applying one of the two or more rules to the data field of the selected second structure to provide a value for the omitted optional data field of the first structure; and
continuing processing the bitstream with the processor only after the bitstream complies with the additional constraints.
0 Assignments
0 Petitions
Accused Products
Abstract
A processor that processes encoded media is configured so as to apply constraints to the encoded bitstream. Such constraints are not those required by a specification of a standard with which the encoded media is compliant; instead such constraints reflect portions of the standard that are insufficiently constrained and are applied by the processor to ensure that the processor does not experience performance degradation or errors. The constraints can be applied, for example, as a preprocessing step before reading, writing or decoding the bitstream, or while the bitstream is being decoded, or while the bitstream is being received from a transmission.
-
Citations
20 Claims
-
1. A computer-implemented process comprising:
-
receiving into memory a bitstream of encoded data, the encoded data being compliant with a defined standard and including packets of data and comprising sample data and auxiliary information corresponding to the sample data; analyzing the bitstream, using a processor connected to the memory, for compliance with additional constraints, including at least resolving conflicts between implied values derived for an optional data field in the encoded bitstream using two or more rules from a specification and applied to another data field in the encoded bitstream, by; identifying a first structure in a packet, the first structure having an omitted optional data field with respect to the specification; identifying a second structure in the packet, the second structure having a data field; wherein the first and second structure are contained in a third structure in the bitstream; wherein the third structure comprises a plurality of such second structures; applying an order of preference to select one of the plurality of second structures; and applying one of the two or more rules to the data field of the selected second structure to provide a value for the omitted optional data field of the first structure; and continuing processing the bitstream with the processor only after the bitstream complies with the additional constraints. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. An article of manufacture comprising:
-
a computer storage medium comprising at least one of a memory or persistent storage; computer program instructions stored on the computer storage medium which, when processed by a processing device, instruct the processing device to perform a process comprising; receiving into memory a bitstream of encoded data, the encoded data being compliant with a defined standard and including packets of data and comprising sample data and auxiliary information corresponding to the sample data; analyzing the bitstream, using a processor connected to the memory, for compliance with additional constraints, including at least resolving conflicts between implied values derived for an optional data field in the encoded bitstream using two or more rules from a specification and applied to another data field in the encoded bitstream, by; identifying a first structure in a packet, the first structure having an omitted optional data field with respect to the specification; identifying a second structure in the packet, the second structure having a data field; wherein the first and second structure are contained in a third structure in the bitstream; wherein the third structure comprises a plurality of such second structures; applying an order of preference to select one of the plurality of second structures; and applying one of the two or more rules to the data field of the selected second structure to provide a value for the omitted optional data field of the first structure; and continuing processing the bitstream with the processor only after the bitstream complies with the additional constraints. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A computer comprising:
-
a media processor executing on hardware with an operating system, the media processor being configured to; access memory that stores a bitstream of encoded data, the encoded data being compliant with a defined standard and including packets of data and comprising sample data and auxiliary information corresponding to the sample data; analyze the bitstream for compliance with additional constraints, including at least resolving conflicts between implied values derived for an optional data field in the encoded bitstream using two or more rules from a specification and applied to another data field in the encoded bitstream, by; identifying a first structure in a packet, the first structure having an omitted optional data field with respect to the specification; identifying a second structure in the packet, the second structure having a data field; wherein the first and second structure are contained in a third structure in the bitstream; wherein the third structure comprises a plurality of such second structures; applying an order of preference to select one of the plurality of second structures; and applying one of the two or more rules to the data field of the selected second structure to provide a value for the omitted optional data field of the first structure; and continue processing the bitstream with the processor only if after the bitstream complies with the additional constraints. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification