Embedding data within transformed coefficients using bit partitioning operations
AssigneeV-Nova International Limited
InventorsLorenzo Ciccarelli, Simone Ferrara, Guido Meardi
Life of this patent
Estimating the term…
Abstract
Examples described herein relate to decoding and encoding signals. Certain examples described herein encapsulate custom data that is not signal data within a stream of encoded signal data. The custom data may comprise a wide variety of metadata that annotates the signal data, or provides additional information relating to the signal data. Certain examples described herein encapsulate custom data within a set of transformed coefficient values that represent data derived from a transform operation that forms part of the signal encoding. The encapsulation may be performed by applying a bit shift operation to coefficient bits representing the set of transformed coefficient values.
Claims17
A method of encoding signal data, comprising:
- obtaining coefficient bits representing values for a set of transformed coefficients, the values being generated by applying at least a transform operation to blocks of signal data derived from an input signal being encoded;
- obtaining userdata bits representing custom data to add to an encoded signal bitstream;
- applying a bit shift operation to the coefficient bits, the bit shift operation shifting the coefficient bits by a predefined number of bits;
- setting values of a set of additional bits added to the coefficient bits based on the userdata bits to generate a modified set of coefficient bits;
- instructing generation of an encoded bitstream using the modified set of coefficient bits, wherein:
- the encoded bitstream carries both the custom data and an encoding of the signal data,
- the blocks of signal data comprise residual data generated by comparing data derived from the input signal being encoded and data derived from a reconstruction of the input signal, the reconstruction of the input signal being generated from a representation of the input signal at a lower level of quality, and
- the encoded bitstream is an encoded enhancement bitstream for a first enhancement sub-layer at a first level of quality;
- obtaining further coefficient bits representing values for a set of transformed coefficients at a second level of quality, the second level of quality being higher than the first level of quality, the values being generated by applying at least a transform operation to blocks of signal data at the second level of quality;
- instructing generation of an encoded enhancement bitstream for a second enhancement sub-layer at the second level of quality using the further coefficient bits without applying a bit shift operation;
- obtaining a parameter indicating a bit length for user data values, the bit length indicating the predefined number of bits for the bit shift operation;
- and
- pre-processing the custom data to generate a bitstream of custom data values, each value being represented in the bitstream by a group of bits of the bit length.
A method of decoding signal data, the method comprising:
- obtaining an encoded bitstream;
- decoding the encoded bitstream to obtain an initial set of coefficient bits representing values for a set of transformed coefficients, the values being generated during encoding by applying at least a transform operation to blocks of signal data derived from an input signal;
- extracting userdata from a set of end bits of the initial set of coefficient bits, wherein extracting the userdata comprises:
- obtaining a parameter indicating a number of bits used for user data values;
- obtaining bit values for a set of bits that are located at one end of the initial set of coefficient bits, the set of bits being added during a bit shift operation applied during encoding;
- and
- post-processing the bit values to reconstruct a set of user data values, wherein the size of the bit shift operation is set by the number of bits used for the user data values;
- applying the bit shift operation to the initial set of coefficient bits, the bit shift operation being in a direction that is opposite to a direction of a bit shift operation applied during encoding, the bit shift operation generating a reconstructed set of coefficient bits;
- instructing further decoding of the reconstructed set of coefficient bits, the further decoding comprising applying at least an inverse transform operation to values represented by the reconstructed set of coefficient bits, wherein the further decoding is used to generate a reconstruction of the input signal, wherein the reconstructed set of coefficient bits comprise transformed residual data;
- instructing a combination of residual data obtained from the further decoding of the reconstructed set of coefficient bits with a reconstruction of the input signal generated from a representation of the input signal at a lower level of quality to generate a reconstruction of the input signal at a first level of quality, wherein the encoded bitstream is an encoded enhancement bitstream for a first enhancement sub-layer at the first level of quality;
- and
- obtaining an encoded enhancement bitstream for a second enhancement sub-layer at a second level of quality;
- decoding, without applying a bit shift operation and extracting user data, the encoded enhancement bitstream for the second enhancement sub-layer to obtain a second set of residual data for the second level of quality;
- instructing a combination of the second set of residual data with a reconstruction at the second level of quality derived from the reconstruction of the input signal at the first level of quality to generate a reconstruction of the input signal at the second level of quality.
Dependencies are inferred from the claim text.