Abstract:
A data arrangement method includes following steps: obtaining pixel data of a plurality of first N-bit pixels of a picture; and storing the obtained pixel data of the first N-bit pixels in a plurality of M-bit storage units of a first buffer according to a block-based scan order of the picture. The picture includes a plurality of data blocks, and the block-based scan order includes a raster-scan order for the data blocks. At least one of the M-bit storage units is filled with part of the obtained pixel data of the first N-bit pixels, M and N are positive integers, M is not divisible by N, and the first N-bit pixels include at least one pixel divided into a first part stored in one of the M-bit storage units in the first buffer and a second part stored in another of the M-bit storage units in the first buffer.
Abstract:
A video processing apparatus includes a control unit, a storage device, a video decoder and a video processor. The control unit is arranged for generating a color depth control signal. The video decoder is coupled to the storage device, and arranged for decoding an encoded video bitstream and accordingly generating decoded video pictures (sequence) to the storage device. The video processor is coupled to the control unit and the storage device, and arranged for referring to the color depth control signal to enable a target video processing mode selected from a plurality of supported video processing modes respectively corresponding to different output color depths, and processing picture data derived from the data buffered in the storage device under the target video processing mode to generate output video pictures (sequence) to a display apparatus.
Abstract:
A method and apparatus for SAO (sample adaptive offset) processing in a video decoder are disclosed. Embodiments according to the present invention reduce the required line buffer associated with the SAO processing. According to one embodiment, tri-level comparison results for one deblocked pixel row or column of the image unit are determined according to SAO type of the deblocked pixel row or column. The tri-level comparison results are stored in a buffer and the tri-level comparison results are read back from the buffer for SAO processing of the subsequent row or column from a subsequent image unit. The comparison results correspond to “larger”, “equal” and “smaller” states. The comparison results can be stored more efficiently.
Abstract:
A method for read pointer maintenance of a buffering apparatus, which is arranged to buffer data of a multi-tile encoded picture having a plurality of tiles included therein, includes the following steps: judging if decoding of a first tile of the multi-tile encoded picture encounters a tile boundary of the first tile; and when it is judged that the tile boundary of the first tile is encountered, storing a currently used read pointer into a pointer buffer, and loading a selected read pointer from the pointer buffer to act as the currently used read pointer.
Abstract:
An image processing method includes: performing content analysis upon an input frame to generate at least one content analysis result of the input frame; determining, by a processing circuit, an anti-blue light strength level for the input frame according to content analysis result(s) of the input frame; and in response to the anti-blue light strength level determined for the input frame, performing color correction upon the input frame to generate an output frame.
Abstract:
An image processing method includes: performing content analysis upon an input frame to generate at least one content analysis result of the input frame; determining, by a processing circuit, an anti-blue light strength level for the input frame according to content analysis result(s) of the input frame; and in response to the anti-blue light strength level determined for the input frame, performing color correction upon the input frame to generate an output frame.
Abstract:
A motion vector (MV) projection method includes generating motion field motion vectors (MFMVs) for a first portion of a current frame by applying MV projection to MVs of a portion of each of reference frames and storing the MFMVs of the first portion of the current frame into an MFMV buffer, and generating MFMVs for a second portion of the current frame by applying MV projection to MVs of a portion of each of the reference frames and storing the MFMVs of the second portion of the current frame into the MFMV buffer. The second portion does not overlap the first portion. Before generating the MFMVs for the second portion of the current frame is done, at least one of the MFMVs of the first portion is read from the MFMV buffer and involved in motion vector determination of at least one coding block included in the first portion.
Abstract:
A video processing system includes a storage device, a receiving circuit, an audio/video demultiplexing circuit, a video decoder, and a display engine. The storage device includes a data buffer, a bitstream buffer, and a display buffer. An output of the receiving circuit is written into the data buffer. An input of the audio/video demultiplexing circuit is read from the data buffer, and an output of the audio/video demultiplexing circuit is written into the bitstream buffer. An input of the video decoder is read from the bitstream buffer, and an output of the video decoder is written into the display buffer. An input of the display engine is read from the display buffer. Each of the data buffer, the bitstream buffer, and the display buffer is a ring buffer.
Abstract:
An entropy decoding apparatus includes an entropy decoding circuit, a pre-fetch circuit, and a context pre-load buffer. The pre-fetch circuit pre-fetches at least one candidate context for entropy decoding of a part of an encoded bitstream of a frame before the entropy decoding circuit starts entropy decoding of the part of the encoded bitstream of the frame. The context pre-load buffer buffers the at least one candidate context. When a target context actually needed by entropy decoding of the part of the encoded bitstream of the frame is not available in the context pre-load buffer, the context pre-load buffer instructs the pre-fetch circuit to re-fetch the target context, and the entropy decoding circuit stalls entropy decoding of the part of the encoded bitstream of the frame.
Abstract:
A video decoder has a first processing circuit and a second processing circuit. A shared storage device is accessible to the first processing circuit and the second processing circuit. The first processing circuit performs a first decoding operation according to data access of the shared storage device. The second processing circuit performs a second decoding operation according to data access of the shared storage device. The first decoding operation is at least a portion of a first decoding function complying with a first video coding standard, and the second decoding operation is at least a portion of a second decoding function complying with a second video coding standard different from the first video coding standard.