Abstract:
A method for controlling sample adaptive offset (SAO) filtering includes: generating a first SAO decision for pixels in a first partial region of a first frame based at least partly on a cost function that uses a first weighting parameter; and generating a second SAO decision for pixels in a second partial region of the first frame based at least partly on the cost function that uses a second weighting parameter. The second partial region is different from the first partial region, and the second weighting parameter is different from the first weighting parameter.
Abstract:
An image compression method includes at least the following steps: receiving a plurality of pixels of a frame, wherein pixel data of each pixel has a plurality of color channel data corresponding to a plurality of different color channels, respectively; encoding the pixel data of each pixel and generating bit-streams corresponding to the plurality of color channel data of the pixel, wherein the bit-streams corresponding to the plurality of color channel data of the pixel are separated; packing bit-streams of a same color channel data of different pixels into color channel bit-stream segments, wherein each of the bit-stream segments has a same predetermined size; and concatenating color channel bit-stream segments of the different color channels into a final bit-stream. Alternatively, color channel bit-stream segments of the same pixel are concatenated into a concatenated bit-stream portion, and concatenated bit-stream portions of different pixels are concatenated into a final bit-stream.
Abstract:
A compression method with block prediction includes at least following steps: utilizing a vector buffer to store a final vector information set of at least one pixel group at a same time, wherein each pixel line of an image is composed of a plurality of pixel groups, and a maximum number of the at least one pixel group having the final vector information set simultaneously stored in the vector buffer is smaller than a number of the pixel groups of each pixel line; and when encoding a first pixel group in a first pixel line, obtaining a final vector information of the first pixel group from the vector buffer, and encoding the first pixel group with the obtained final vector information set of the first pixel group, wherein the final vector information set of the first pixel group stored in the vector buffer is derived from performing block prediction search upon a second pixel line.
Abstract:
An intra prediction method includes at least the following steps: performing a distortion estimation to evaluate a distortion value of a specific block under an intra prediction mode and a transform unit size; using the evaluated distortion value to set a distortion value of the specific block under a first block configuration, the intra prediction mode and the transform unit size; and using the evaluated distortion value to set a distortion value of the specific block under a second block configuration, the intra prediction mode, and the transform unit size. The first block configuration represents a first block size, and the second block configuration represents a second block size different from the first block size.
Abstract:
One exemplary video encoding method has the following steps: determining a size of a parallel motion estimation region according to encoding related information; and encoding a plurality of pixels by at least performing motion estimation based on the size of the parallel motion estimation region. One exemplary video decoding method has the following steps: decoding a video parameter stream to obtain a decoded size of a parallel motion estimation region; checking validity of the decoded size of the parallel motion estimation region, and accordingly generating a checking result; when the checking result indicates that the decoded size of the parallel motion estimation region is invalid, entering an error handling process to decide a size of the parallel motion estimation; and decoding a plurality of pixels by at least performing motion estimation based on the decided size of the parallel motion estimation region.
Abstract:
An image encoding method includes at least following steps: receiving a plurality of target pixels within a frame, wherein pixel data of each target pixel has at least one color channel data corresponding to at least one color channel; determining a bit budget of the target pixels; and performing bit-plane scanning coding upon selected pixels according to the bit budget and a scanning order, and accordingly generating encoded pixel data of the selected pixels as encoded data of the target pixels, wherein the selected pixels are derived from the target pixels, and the bit-plane scanning coding extracts partial bits of pixel data of each selected pixel as encoded pixel data of the selected pixel. In addition, a corresponding image decoding method is provided.
Abstract:
One video encoding method includes: performing a first part of a video encoding operation by a software engine with instructions, wherein the first part of the video encoding operation comprises at least a motion estimation function; delivering a motion estimation result generated by the motion estimation function to a hardware engine; and performing a second part of the video encoding operation by the hardware engine. Another video encoding method includes: performing a first part of a video encoding operation by a software engine with instructions and a cache buffer; performing a second part of the video encoding operation by a hardware engine; performing data transfer between the software engine and the hardware engine through the cache buffer; and performing address synchronization to ensure that a same entry of the cache buffer is correctly addressed and accessed by both of the software engine and the hardware engine.
Abstract:
An image compression method includes at least the following steps: receiving a plurality of pixels of a frame, wherein pixel data of each pixel has a plurality of color channel data corresponding to a plurality of different color channels, respectively; encoding the pixel data of each pixel and generating bit-streams corresponding to the plurality of color channel data of the pixel, wherein the bit-streams corresponding to the plurality of color channel data of the pixel are separated; packing bit-streams of a same color channel data of different pixels into color channel bit-stream segments, wherein each of the bit-stream segments has a same predetermined size; and concatenating color channel bit-stream segments of the different color channels into a final bit-stream. Alternatively, color channel bit-stream segments of the same pixel are concatenated into a concatenated bit-stream portion, and concatenated bit-stream portions of different pixels are concatenated into a final bit-stream.
Abstract:
A video decoding apparatus includes a bitstream parser, a calculator and a memory. The bitstream parser is provided to receive a video bitstream and extracting a set of constraints associated with the video bitstream, wherein the set of constraints has information associated with a direct_8×8_inference flag for a macroblock of a picture, wherein the macroblock has N sub-macroblock partitions. The calculator is provided to calculate first motion vector information associated with the macroblock and obtain second motion vector information associated with K of the N sub-macroblock partitions from the first motion vector information according to the information associated with the direct_8×8_inference flag, wherein K is less than N. The memory is provided to store the second motion vector information.