Abstract:
A system, apparatus, method, and article to process a flexible macroblock ordering and arbitrary slice ordering are described. The apparatus may include a video decoder. The video decoder includes a processor to store coding parameters of one or more neighboring macroblocks in a data buffer. The neighboring macroblocks are previously decoded macroblocks and are adjacent to a current macroblock. The processor is to store control parameters for each of the one or more neighboring macroblocks in the data buffer. The processor is to reconstruct coding parameters for the current macroblock using availability information associated with the neighboring macroblocks.
Abstract:
Systems, apparatus and methods are described including determining a prediction residual for a channel of video data; and determining, using the first channel's prediction residual, a prediction residual for a second channel of the video data. Further, a prediction residual for a third channel of the video data may be determined using the second channel's prediction residual.
Abstract:
Methods and systems to manipulate color processing parameters to allow the detection of an arbitrary color of interest. Such reconfigurations may enable general point-of-interest color processing. Color mapping curves may also be configured, to accomplish the tasks of color correction, enhancement, de-saturation, and color compression.
Abstract:
Systems, methods, and computer program products that can be used to determine a search range (SR) when performing motion estimation at, for example, a video encoder or decoder. Determining a motion vector for a current block during motion estimation may involve searching within a search window that may reside in a reference frame, or in a previously decoded block that spatially or temporally neighbors the current block. Such a search seeks a motion vector that minimizes a metric, such as a sum of absolute differences between corresponding blocks of reference frames. A motion vector that minimizes such a metric may be a good candidate for use in motion estimation. The search may become more efficient if a search range is determined such that the extent of the search is bounded. A search range may be determined at the block level or at the picture level.
Abstract:
Adaptive filtering may be used to increase the quality of tone mapped, baseline layer encoded information. As a result, scalable video codecs may be implemented with improved picture quality in some embodiments.
Abstract:
A system, apparatus, method, and article to process a chroma motion vector are described. The apparatus may include a video decoder. The video decoder includes a processor to receive a compressed video bitstream. The compressed video bitstream includes a stream of pictures. The stream of pictures includes a current slice and a current block within the slice. The processor pre-computes a chroma motion vector adjustment parameter for the current slice and determines a motion vector component for the current block within the current slice using the pre-computed chroma motion vector adjustment parameter.
Abstract:
Adaptive control can use hierarchical motion estimation (HME) and/or multiple reference motion estimation (MRME) for the motion estimation of current encoding blocks. Both HME and MRME are allowed in the motion estimation to achieve a high coding gain. Control consists of slice level control and macro-block (MB) level control. A slice is one or more contiguous macroblocks. In slice level control, it is decided to use only one reference frame or use multiple reference frames to coding current slice based on the motion vectors obtained in coarse level motion estimation. In MB level control, it is decided to perform MRME or perform HME for the MB and its subblocks based on the coarse level motion vectors of the MB.
Abstract:
A system and method for performing candidate-based decoder-side motion vector determination (DMVD). Candidate motion vectors (MVs) may be rounded to the nearest whole or integer pixel. The rounded candidate MV having the best sum of absolute differences (SAD) may be identified. This may be used as the final MV. Alternatively, the un-rounded MV corresponding to this rounded candidate MV may be used as the final MV. Alternatively, a small range integer search may be performed around the chosen rounded candidate MV, and the best integer pixel in the search area may be identified and used to define the final MV. Alternatively, an intermediate MV may be chosen, where this MV is intermediate between the chosen rounded candidate MV and the MV corresponding to the best integer pixel in the search area.
Abstract:
In one embodiment, an apparatus and method for an angular-directed spatial deinterlacer are disclosed. In one embodiment, the method comprises calculating a cost measure for each of multiple angle candidates for a target pixel block to be deinterlaced in a spatial-only domain, determining a horizontal angle measure for the target pixel block, establishing a global minimum angle from the multiple angle candidates by determining the lowest cost measure from the multiple angle candidates, establishing a local minimum angle from the multiple angle candidates by sifting through the angle candidates in a hierarchical manner, and filtering the global minimum angle and the local minimum angle to create a value for interpolating the target pixel block for deinterlacing. Other embodiments are also described.
Abstract:
A video encoder may use an adaptive Wiener filter inside the core video encoding loop to improve coding efficiency. In one embodiment, the Wiener filter may be on the input to a motion estimation unit and, in another embodiment, it may be on the output of a motion compensation unit. The taps for the Wiener filter may be determined based on characteristics of at least a region of pixel intensities within a picture. Thus, the filtering may be adaptive in that it varies based on the type of video being processed.