| CPC H04N 19/184 (2014.11) [H04N 19/1887 (2014.11); H04N 19/91 (2014.11)] | 12 Claims |

|
1. A method of data encoding, comprising:
obtaining a number (M) of integer values representing a frame of data;
performing a zero-detection operation that scans the M integer values over M iterations, respectively, and indicates, during each of the M iterations, whether the scanned integer value is equal to zero;
incrementing a count value (N) responsive to the zero-detection operation indicating that the scanned integer value is equal to zero;
determining whether the count value N is greater than zero responsive to the zero-detection operation indicating that the scanned integer value is not equal to zero;
outputting a first pattern of bits, including an exponential Golomb-Rice (EGR) codeword, based on whether the count value N is determined to be greater than zero, the outputting of the first pattern of bits including:
determining a zero-run prefix based at least in part on the least significant bit (LSB) of the first pattern of bits so that the zero-run prefix has a different binary value than the LSB of the patter bits, the zero-run prefix indicating whether the EGR codeword represents a number of consecutive zeroes;
encoding the scanned integer value as the EGR codeword and refraining from including the zero-run prefix in the first pattern of bits responsive to determining that the count value N is not greater than zero; and
encoding N−1 as the EGR codeword and including the zero-run prefix in the first pattern of bits responsive to determining that the count value N is greater than zero; and
outputting one or more consecutive bits representing a stop code responsive to completing the Mth iteration of the zero-detection operation, each of the one or more consecutive bits each having a different binary value than the LSB of the first pattern of bits.
|