摘要:
In one aspect, an encoder/decoder receives information for four field motion vectors for a macroblock in an interlaced frame-coded, forward-predicted picture and processes the macroblock using the four field motion vectors. In another aspect, an encoder/decoder determines a number of valid candidate motion vectors and calculates a field motion vector predictor. The encoder/decoder does not perform a median operation on the valid candidates if there are less than three of them. In another aspect, an encoder/decoder determines valid candidates, determines field polarities for the valid candidates, and calculates a motion vector predictor based on the field polarities. In another aspect, an encoder/decoder determines one or more valid candidates, determines a field polarity for each individual valid candidate, allocates each individual valid candidate to one of two sets (e.g., opposite polarity and same polarity sets) depending on its field polarity, and calculates a motion vector predictor based on the two sets.
摘要:
Quality settings established by an encoder are adjusted based on information associated with regions of interest (“ROIs”). For example, quantization step sizes can be reduced (to improve quality) or increased (to reduce bit rate). ROIs can be identified and quality settings can be adjusted based on input received from a user interface. An overlap setting can be determined for a portion of a picture that corresponds to an ROI overlap area. For example, an overlap setting is chosen from step sizes corresponding to a first overlapping ROI and a second overlapping ROI, or from relative reductions in step size corresponding to the first ROI and the second ROI. ROIs can be parameterized by information (e.g., using data structures) that indicates spatial dimensions of the ROIs and quality adjustment information (e.g., dead zone information, step size information, and quantization mode information).
摘要:
A video encoding system encodes video streams for multiple bit rate video streaming using an approach that permits the encoded bit rate to vary subject to a peak bit rate and average bit rate constraints for higher quality streams, while a bottom bit rate stream is encoded to achieve a constant chunk rate. The video encoding system also dynamically decides an encoding resolution for segments of the multiple bit rate video streams that varies with video complexity so as to achieve a better visual experience for multiple bit rate streaming.
摘要:
Multiple-pass video encoding systems and techniques are described which utilize statistics taken during a first-pass encoding to create complexity measurements for video data which is to be encoded. By analyzing these complexity measurements, preprocessing decisions, such as, for example, the determination of strength of denoise filters, can be made with greater accuracy. In one implementation, these complexity measurements take the form of calculation of temporal and spatial complexity parameters, which are then used to compute a unified complexity parameter for each group of pictures being encoded.
摘要:
Techniques and tools for selecting search ranges and/or motion vector ranges during motion estimation are described. For example, a video encoder performs motion estimation constrained by a first search range, which results in multiple motion vectors. The encoder computes motion vector distribution information for the motion vectors. To compute the distribution information, the encoder can track the motion vectors in a histogram and count how many of the motion vectors fall within each of multiple intervals for the distribution information. The encoder then selects a second search range and performs motion estimation constrained by the second search range. Selecting the second search range can include selecting a motion vector range, which in some cases in effect determines the second search range.
摘要:
A decoder receives an entry point header comprising plural control parameters for an entry point segment corresponding to the entry point header. The entry point header is in an entry point layer of a bitstream comprising plural layers. The decoder decodes the entry point header. The plural control parameters can include various combinations of control parameters such as a pan scan on/off parameter, a reference frame distance on/off parameter, a loop filtering on/off parameter, a fast chroma motion compensation on/off parameter, an extended range motion vector on/off parameter, a variable sized transform on/off parameter, an overlapped transform on/off parameter, a quantization decision parameter, and an extended differential motion vector coding on/off parameter, a broken link parameter, a closed entry parameter, one or more coded picture size parameters, one or more range mapping parameters, a hypothetical reference decoder buffer parameter, and/or other parameter(s).
摘要:
Techniques and tools are described for adaptive deadzone (“DZ”) resizing during quantization. For example, in some embodiments, for quantization of an AC frequency coefficient of a block, a video encoder adjusts DZ size of a selected quantizer depending on the texture of the block. In other embodiments, a video encoder adjusts DZ size depending on the frequency of a coefficient being quantized. In still other embodiments, for quantization of an AC frequency coefficient of a block, a video encoder adjusts DZ size depending on the texture of the block and the frequency of the coefficient being quantized.
摘要:
Quality settings established by an encoder are adjusted based on information associated with regions of interest (“ROIs”). For example, quantization step sizes can be reduced (to improve quality) or increased (to reduce bit rate). ROIs can be identified and quality settings can be adjusted based on input received from a user interface. An overlap setting can be determined for a portion of a picture that corresponds to an ROI overlap area. For example, an overlap setting is chosen from step sizes corresponding to a first overlapping ROI and a second overlapping ROI, or from relative reductions in step size corresponding to the first ROI and the second ROI. ROIs can be parameterized by information (e.g., using data structures) that indicates spatial dimensions of the ROIs and quality adjustment information (e.g., dead zone information, step size information, and quantization mode information).
摘要:
Techniques and tools for switching distortion metrics during motion estimation are described. For example, a video encoder determines a distortion metric selection criterion for motion estimation. The criterion can be based on initial results of the motion estimation. To evaluate the criterion, the encoder can compare the criterion to a threshold that depends on a current quantization parameter. The encoder selects between multiple available distortion metrics, which can include a sample-domain distortion metric (e.g., SAD) and a transform-domain distortion metric (e.g., SAHD). The encoder uses the selected distortion metric in the motion estimation. Selectively switching between SAD and SAHD provides rate-distortion performance superior to using only SAD or only SAHD. Moreover, due to the lower complexity of SAD, the computational complexity of motion estimation with SAD-SAHD switching is typically less than motion estimation that always uses SAHD.
摘要:
Quality settings established by an encoder are adjusted based on information associated with regions of interest (“ROIs”). For example, quantization step sizes can be reduced (to improve quality) or increased (to reduce bit rate). ROIs can be identified and quality settings can be adjusted based on input received from a user interface. An overlap setting can be determined for a portion of a picture that corresponds to an ROI overlap area. For example, an overlap setting is chosen from step sizes corresponding to a first overlapping ROI and a second overlapping ROI, or from relative reductions in step size corresponding to the first ROI and the second ROI. ROIs can be parameterized by information (e.g., using data structures) that indicates spatial dimensions of the ROIs and quality adjustment information (e.g., dead zone information, step size information, and quantization mode information).