Abstract:
A video compression system includes a video encoder and a bitstream processing circuit. The video encoder is hardware that performs hardware video encoding upon frames to generate a first bitstream. The first bitstream is output from an entropy encoding circuit of the video encoder. The bitstream processing circuit performs a bitstream post-processing operation upon the first bitstream to produce a second bitstream that is different from the first bitstream, and outputs the second bitstream as a compression output of the frames.
Abstract:
In order to overcome the issue caused by a decoded block vector (BV) pointing to a reference block overlapping with an unavailable area, various methods are disclosed. According to one method, if the reference block overlaps with an unavailable area, the reference pixels in the unavailable area are generated for IntraBC prediction of the current block by padding from neighboring available pixels. The padding can be done in the horizontal direction and then the vertical direction. The padding may also done in the vertical direction first and then horizontal direction. In another method, if the reference block overlaps with an unavailable area, the reference pixels in the unavailable area are generated for IntraBC prediction of the current block by using previous decoded pixels in the unavailable area. A pre-defined value may also be used for the unavailable area.
Abstract:
A video transmitting system includes a source buffer, a video encoder, a bitstream buffer, and a transmitting circuit. The source buffer receives pixel data of pixels of a video frame. The video encoder retrieve pixel data of a portion of the pixels of the video frame from the source buffer, and starts encoding the pixel data of the portion of the pixels before pixel data of a last pixel of the video frame is received by the source buffer. The bitstream buffer receives a network abstraction layer (NAL) stream from the video encoder, wherein the NAL stream is generated by encoding the pixel data of the portion of the pixels. The transmitting circuit retrieves the NAL stream from the bitstream buffer, and starts outputting the NAL stream before the pixel data of the last pixel of the video frame is encoded by the video encoder.
Abstract:
A method and apparatus of image coding including adaptive entropy coding are disclosed. According to this method, input pixels associated with a group of symbols generated from image or video data are received. Maximum bit-depth of the group of symbols is then determined. If the maximum bit-depth of the group of symbols is smaller than a first bit-depth threshold, the group of symbols is encoded or decoded using Golomb-Rice coding. If the maximum bit-depth of the group of symbols is greater than or equal to the first bit-depth threshold, the group of symbols is encoded or decoded using second entropy coding, where the second entropy coding is different from the Golomb-Rice coding. Outputs corresponding to encoded or decoded output associated with the group of symbols are provided. The maximum bit-depth of the group of symbols is signaled at the encoder or recovered at the decoder by parsing the bitstream.
Abstract:
An encoding method includes applying a search range constraint on a search range of a block in a current frame, and encoding the block in the current frame with pixel information in a reference frame according to inter prediction performed based on the search range of the block in the current frame, wherein a resolution of the current frame is different from a resolution of the reference frame.
Abstract:
An exemplary video encoding apparatus has a video encoder, a transmitter, and a control circuit. The video encoder encodes a video sequence into a compressed video bitstream. The transmitter transmits the compressed video bitstream via a communication link. The control circuit adaptively adjusts an encoding behavior of the video encoder according to at least a transmission status of the communication link.
Abstract:
A method or apparatus of configuring a multi-channel coding device for use as a single-channel coding device is provided. The multi-channel coding device reconfigured as a single-channel coding device performs encoding or decoding of the pixels for a first color channel while substituting the pixels of a second color channel with predetermined (e.g., fixed) values. The reconfigured coding device may output reconstructed pixels of the first color channel but not reconstructed pixels of the second color channel.
Abstract:
An image processing method includes at least following steps: partitioning a picture into a plurality of picture regions, wherein each picture region comprises at least one pixel group row, each pixel group row comprises at least one pixel group, and the picture regions comprise a first picture region and a second picture region horizontally adjacent to each other; and performing flatness check upon a specific pixel group in a pixel group row of the first picture region through using at least one pixel borrowed from the second picture region.
Abstract:
An inter prediction method includes performing reference frame acquisition for inter prediction of a first frame in a first frame group to obtain at least one reference frame, and performing the inter prediction of the first frame according to the at least one reference frame. The at least one reference frame used by the inter prediction of the first frame is intentionally constrained to include at least one first reference frame obtained from reconstructed data of at least one second frame in the first frame group. The first frame group has at least one first frame, including the first frame, and the at least one second frame. Frames in the first frame group have a same image content but different resolutions.
Abstract:
Method is disclosed for reducing frame buffer, stream buffer, reconstruction buffer, or latency associated with frame buffer compression in an encoder or decoder with multiple slices of an image frame. The image frame is divided into multiple slices vertically, horizontally or both. One core compressor or decompressor can be used to process two or more slices. The encoding and decoding of two or more slices may be performed in parallel. Instead of encoding an entire slice, the encoder compresses only partial data of one slice before encoding another slice. According to one embodiment, each slice is divided into two or more partitions. The encoder is switched to another slice after encoding one partition of one slice. In another embodiment, the encoder is switched to another slice based the information related to the coding status. The decoding order may be same as the encoding order.