Abstract:
A video encoding device comprises a memory configured and at least one processor configured to: determine whether a metric meets a condition based on statistics, wherein the statistics are associated with a first video encoding mode checking order and a second video encoding mode checking order, responsive to determining that the metric meets the condition, select a first encoding mode checking order to encode the first block of video data responsive to determining that the condition is not met, select a second encoding mode checking order different from the first encoding mode checking order to encode the first block of video data, update the statistics based on the selected first or second encoding mode checking order, and encode a second block of video data, based on the updated statistics, and using the first or second mode checking order.
Abstract:
A video encoder generates a sequence of sample adaptive offset (SAO) syntax elements for a coding tree block. The SAO syntax elements include regular context-adaptive binary arithmetic coding (CABAC) coded bins for a color component and bypass-coded bins for the color component. None of the bypass-coded bins is between two of the regular CABAC-coded bins in the sequence. The video encoder uses regular CABAC to encode the regular CABAC-coded bins and uses bypass coding to encode the bypass-coded bins. The video encoder outputs the SAO syntax elements in a bitstream. A video decoder receives the bitstream, uses regular CABAC to decode the regular CABAC-coded bins, uses bypass coding to decode the bypass-coded bins, and modifies a reconstructed picture based on the SAO syntax elements.
Abstract:
A filter unit of a video encoder or video decoder can determine a first metric for a group of pixels within a block of pixels, determine a second metric for the group of pixels, determine a filter based on the first metric and the second metric, and generate a filtered image by applying the filter to the group of pixels. The first metric and second metric can be an activity metric and a direction metric, respectively, or can be other metrics such as an edge metric, horizontal activity metric, vertical activity metric, or diagonal activity metric.
Abstract:
Techniques for performing sample adaptive offset (SAO) and adaptive loop filter (ALF) processes in a video coding process are described. The SAO and ALF processes may be combined. In one example, the determination of offset values for a SAO filter process may be based on classifications used in an ALF process. In one example, an ALF classification that indicates a particular directional characteristic of a video block may be used to determine how and whether an SAO filter process is applied to each sample within the video block.
Abstract:
Provided are techniques for low complexity video coding. For example, a video coder may be configured to calculate a first sum of absolute difference (SAD) value between a coding unit (CU) block and a first corresponding block in a reference frame, and define branching conditions for branching of CU sizes based on the first SAD value, the branching conditions including a background condition and/or a homogeneous condition. The video coder may be configured to detect the background condition if the first SAD value of the CU block is less than a first threshold background value, and detect the homogeneous condition if a second SAD value of a sub-block of the CU block is between upper and lower homogeneous threshold values based on the first SAD value. The branching of the CU sizes may be based on detecting the background or homogeneous conditions.
Abstract:
This disclosure describes techniques for performing sample adaptive offset signaling and coding in a video coding process. Techniques of the disclosure include both a merge-based and prediction-based signaling process for sample adaptive offset information (i.e., offset values and offset type). The techniques includes determining offset information for a current partition, comparing the offset information of the current partition with offset information of one or more neighbor partitions, coding a merge instruction in the case that the offset information of one of the one or more neighbor partitions is the same as the offset information of the current partition, and coding one of a plurality of prediction instructions in the case that the offset information of the one or more neighbor partitions is not the same as the offset information of the current partition.
Abstract:
Systems, methods, and devices are disclosed that encode video, decode video, or both. These systems, methods, and devices generate and/or receive an enable syntax element in an encoded bitstream, wherein the enable syntax element indicates whether a loop filter is turned on or turned off for a group of video blocks. They also generate or receive one or more additional syntax elements identifying parameters for the loop filter for the group of video blocks in response to the enable syntax element indicating the loop filter is turned on for the group of video blocks. These systems, methods, and devices also perform the loop filter for the group of video blocks based on the received enable syntax element.
Abstract:
This disclosure relates to techniques for performing sample adaptive offset (SAO) processes in a video coding process. A video coder may store sets of SAO information. The SAO information may include data indicative of offset values. The video coder may also store mapping information that maps at least some of the sets of SAO information for one or more sequence partitions of a frame of video data. Additionally, the video coder may perform the SAO processes for one of the partitions of the frame based on the stored SAO information and the stored mapping information.
Abstract:
Techniques for performing sample adaptive offset (SAO) and adaptive loop filter (ALF) processes in a video coding process are described. The SAO and ALF processes may be combined. In one example, the determination of offset values for a SAO filter process may be based on classifications used in an ALF process. In one example, an ALF classification that indicates a particular directional characteristic of a video block may be used to determine how and whether an SAO filter process is applied to each sample within the video block.