Patent application number | Description | Published |
20100008430 | FILTERING VIDEO DATA USING A PLURALITY OF FILTERS - Systems and methods of filtering video data using a plurality of filters are disclosed. In an embodiment, a method includes receiving and decoding a plurality of filters embedded in a video data bitstream at a video decoder. The method includes selecting, based on information included in the video data bitstream, a particular filter of the plurality of filters. The method further includes applying the particular filter to at least a portion of decoded video data of the video data bitstream to produce filtered decoded video data. | 01-14-2010 |
20100158103 | COMBINED SCHEME FOR INTERPOLATION FILTERING, IN-LOOP FILTERING AND POST-LOOP FILTERING IN VIDEO CODING - In one example, this disclosure describes filtering techniques for filtering of video blocks of a video unit. The filtering techniques may select one or more different types of filtering for each video block of the video unit based on various factors such as whether the video block is inter-coded or intra-coded, and whether adaptive interpolations were preformed during a motion compensation process during the encoding of the video block. When adaptive interpolations were performed, the adaptive interpolations may provide a level of filtering that renders additional filtering unnecessary or undesirable in some cases. | 06-24-2010 |
20110002388 | TEMPLATE MATCHING FOR VIDEO CODING - In one aspect of this disclosure, template matching motion prediction is applied to B-frames. In another aspect of this disclosure, template matching motion prediction as applied to video block coding may include generating a template offset, generating a weighted sum of absolute differences, selecting a number of hypotheses used to encode video blocks based on the cost associated with the number of hypotheses and signaling, with a new syntax, to a decoder, the number of hypotheses used in encoding, rejecting hypotheses if the difference in value between a hypothesis and a reference hypothesis is greater than a threshold value, and/or generating the content of a sub-block that does not have reconstructed data available by combining motion-compensated prediction and luma residuals. | 01-06-2011 |
20110206125 | ADAPTIVE MOTION RESOLUTION FOR VIDEO CODING - A video encoder may encode video data by adaptively selecting between one-eighth-pixel and one-quarter-pixel precision motion vectors, and signal the selected precision. In one example, an apparatus includes a video encoder to encode a block of video data using a one-eighth-pixel precision motion vector when use of the one-eighth-pixel precision motion vector is determined to be preferable for the block over a one-quarter-pixel precision motion vector, and to generate a signal value indicative of the use of the one-eighth-pixel precision motion vector for the block, and an output interface to output the encoded block and the signal value. A video decoder may be configured to receive the signal value and the encoded block, analyze the signal value to determine whether the block was encoded using one-eighth-pixel precision or one-quarter-pixel precision, and decode the block based on the determination. | 08-25-2011 |
20110249721 | VARIABLE LENGTH CODING OF CODED BLOCK PATTERN (CBP) IN VIDEO COMPRESSION - This disclosure describes techniques for coding video data. As one example, this disclosure describes a coded block pattern (CBP) for a coding unit (CU) of video data that indicates whether or not each of a luminance component (Y), a first chrominance component (U), and a second chrominance component (V) include at least one non-zero coefficient. According to another example, this disclosure describes a CBP that indicates whether respective blocks of a CU include at least on non-zero coefficient. The CBP described herein may be mapped to a single variable length code (VLC) code word. The VLC code word may be used by a coder to code the CU of video data. | 10-13-2011 |
20110249737 | MIXED TAP FILTERS - During the prediction stage of a video encoding and/or decoding process, a video coder can use relatively longer filters for certain motion vectors pointing to certain sub-pixel positions and relatively shorter filters for motion vectors pointing to other sub-pixel positions, where a longer filter generally refers to an interpolation filter with a greater number of filter coefficients, also called taps, while a shorter filter generally refers to an interpolation filter with fewer taps. | 10-13-2011 |
20110249745 | BLOCK AND PARTITION SIGNALING TECHNIQUES FOR VIDEO CODING - A video block syntax element indicates whether all of the partitions of a video block are predicted based on a same reference list and no greater than quarter-pixel accuracy is used. If the video block syntax element is set, partition-level signaling of the reference lists is avoided. If the video block syntax element is not set, partition-level signaling of the reference lists occurs. If the video block syntax element is set, partition-level syntax elements may be used for each of the partitions of the video block, wherein the partition-level syntax elements each identify one of the reference lists and motion vector accuracy for a given one of the partitions. | 10-13-2011 |
20110249754 | VARIABLE LENGTH CODING OF CODED BLOCK PATTERN (CBP) IN VIDEO COMPRESSION - In one example, this disclosure describes method of coding video data. The method comprises coding a block of video data as one or more luminance blocks of transform coefficients and one or more chrominance blocks of transform coefficients, and coding a coded block pattern (CBP) for the block of video data. The CBP comprises syntax information that identifies whether non-zero data is included in each of the luminance blocks and each of the chrominance blocks. Coding the CBP includes selecting one or more variable length coding (VLC) tables based on a transform size used in performing one or more transforms on the one or more luminance blocks. | 10-13-2011 |
20110310976 | Joint Coding of Partition Information in Video Coding - In one example, a video decoder is configured to receive a value for a coding unit of video data, wherein the coding unit is partitioned into a plurality of sub-coding units, determine whether the sub-coding units are partitioned into further sub-coding units based on the value, and decode the sub-coding units and the further sub-coding units. In another example, a video encoder is configured to partition a coding unit of video data into a plurality of sub-coding units, determine whether to partition the sub-coding units into further sub-coding units, and encode the coding unit to include a value that indicates whether the sub-coding units are partitioned into the further sub-coding units. | 12-22-2011 |
20120014455 | Variable Localized Bit-Depth Increase for Fixed-Point Transforms in Video Coding - This disclosure describes techniques for mitigating rounding errors in a fixed-point transform associated with video coding by applying a variable localized bit-depth increase at the transform. More specifically, the techniques include selecting a constant value based on a size of a fixed-point transform in a video coding device and applying a variable localized bit-depth increase at the transform with a value equal to the constant value. Applying the variable localized bit-depth increase includes left-shifting a transform input signal by a number of bits equal to the constant value before the fixed-point transform, and right-shifting a transform output signal by a number of bits equal to the constant value after the fixed-point transform. The constant value is selected from a plurality of constant values stored on the video coding device. Each of the constant values is pre-calculated for one of a plurality of different transform sizes supported by the video coding. | 01-19-2012 |
20120027088 | CODING MOTION PREDICTION DIRECTION IN VIDEO CODING - This disclosure relates to techniques for reducing a cost of coding prediction information in video coding. Video blocks in a generalized P/B (GPB) frame are encoded using up to two motion vectors calculated from reference pictures in two separate reference picture lists that are identical. When one of the reference picture lists is preferred over the other reference picture list, the preferred reference picture list may be used for unidirectional prediction, by default. When a GPB frame is enabled such that the first and second reference picture lists are identical, either of the first and second reference picture lists may be used for unidirectional prediction. The techniques include coding one or more syntax elements indicating that a video block is coded using one of the unidirectional prediction mode with respect to a reference picture in a reference picture list and the bidirectional prediction mode using less than two bits. | 02-02-2012 |
20120027089 | CODING MOTION VECTORS IN VIDEO CODING - This disclosure relates to techniques for reducing a cost of coding prediction information in video coding. Video blocks in a generalized P/B (GPB) frame are encoded using up to two motion vectors calculated from reference pictures in two separate reference picture lists that are identical. Video blocks of a GPB frame may, therefore, be encoded using a bidirectional prediction mode with a first motion vector from a reference picture in a first reference picture list and a second motion vector from the same or substantially similar reference picture in a second reference picture list. The techniques include jointly coding the first and second motion vectors for a video block of a GPB frame. The techniques include coding the first motion vector relative to a first motion predictor generated from a motion vector of a neighboring block, and coding the second motion vector relative to the first motion vector. | 02-02-2012 |
20120044986 | LOW COMPLEXITY ADAPTIVE FILTER - For a first series of video blocks, an encoder determines two filters, a first decoding filter that is to be transmitted to a decoder and a first interim filter that is not to be transmitted to the decoder. The first interim filter is used to determine which coded units of a second series of video blocks are to be filtered. After a decision is made as to which coded units of the second series of video blocks are to be filtered, the encoder determines a second decoding filter for the second series of video blocks and transmits the second decoding filter to the decoder. In addition to determining the second decoding filter, the encoder also determines a second interim filter, which the encoder uses to determine which coded units of a third series of video blocks are to be filtered. This process may repeat for many series of video blocks. | 02-23-2012 |
20120044992 | LOW COMPLEXITY ADAPTIVE FILTER - An interim filter determined for a previous series of video blocks can be applied to a current series of video blocks to determine an interim filter map for the current series of video blocks. Based on the interim filter map, a decoding filter can be determined. By applying the decoding filter to the current series of video blocks, a decoding filtering map can be determined. Based on CUs identified as having filtering off by the decoding filtering map, an interim filter for the current series of video blocks can be determined. The decoding filter and decoding filtering map can be transmitted to a decoder, while the interim filter and interim filter map may not be transmitted to a decoder. The interim filter for the current series of video blocks can be used to generate an interim filter map for a next series of video blocks. | 02-23-2012 |
20120082210 | CODING PREDICTION MODES IN VIDEO CODING - A video encoder can maintain, by generating, storing, adjusting, altering, and/or updating, one or more variable length coding (VLC) tables that represent a mapping of prediction modes to codewords. One or more codewords representing a selected prediction mode can be communicated to the decoder for a CU of a frame. The decoder maintains one or more VLC tables that match the VLC tables maintained by the video encoder. Thus, based on the one or more codewords received from the video encoder, the video decoder can determine the prediction mode used to encode a CU. | 04-05-2012 |
20120082222 | VIDEO CODING USING INTRA-PREDICTION - In general, techniques of this disclosure are related to determining a prediction characteristic associated with a coding unit of video data, wherein determining the prediction characteristic includes determining a prediction type that defines a number of prediction units associated with the coding unit. Techniques of this disclosure may also be related to generating a set of available intra-prediction modes for the coding unit based on the prediction characteristic, selecting an intra-prediction mode from the available intra-prediction modes, and applying one of the available intra-prediction modes to code the coding unit. | 04-05-2012 |
20120082223 | INDICATING INTRA-PREDICTION MODE SELECTION FOR VIDEO CODING - For a block of video data, a video encoder can signal to a video decoder a selected intra-prediction mode using a codeword that is mapped to a modified intra-prediction mode index. The video decoder can receive the codeword, determine the modified intra-prediction mode index corresponding to the codeword, determine most probable modes based on a context, map the modified intra-prediction mode index to an intra-prediction mode index by comparing the modified intra-prediction mode index to the mode indexes of the most probable modes, and determine the selected intra-prediction mode used to encode the block of video data based on the intra-prediction mode index. | 04-05-2012 |
20120082230 | VARIABLE LENGTH CODING OF VIDEO BLOCK COEFFICIENTS - This disclosure describes techniques for coding transform coefficients for a block of video data. According to one aspect of this disclosure, a coder (e.g., an encoder or decoder) may map between a code number cn and a level_ID value and an run value based on a structured mapping. According to other aspects of this disclosure, the coder may map between a code number cn and a level_ID value and an run value for the current transform coefficient using a first technique or a second technique based on a coded block type of a block of video data being coded. For example, if the coded block type is a first coded block type, the coder may use a structured mapping. However, if the coded block type is a second coded block type different than the first coded block type, the coder may access one or more mapping tables stored in memory to perform the mapping. | 04-05-2012 |
20120093226 | ADAPTIVE MOTION VECTOR RESOLUTION SIGNALING FOR VIDEO CODING - A video encoder may be configured to adaptively select a sub-pixel precision for motion vectors used to encode video data. The video encoder may further entropy encode an indication of the sub-pixel precision using context adaptive binary arithmetic coding, where the context may correspond to the size of a block of video data for the motion vector. For example, the size may correspond to the depth of a coding unit, the size of a prediction unit of the coding unit, and/or a type for the prediction unit. The video encoder may also interpolate values for one-sixteenth pixel positions of chrominance data using bilinear interpolation. The video encoder may further encode a motion vector difference value for the motion vector using an encoding scheme corresponding to the sub-pixel precision of the motion vector. A video decoder may use similar, reciprocal techniques for decoding the video data. | 04-19-2012 |
20120106649 | JOINT CODING OF SYNTAX ELEMENTS FOR VIDEO CODING - In one example, a video decoder is configured to determine whether a component of a transform unit of a coding unit of video data includes at least one non-zero coefficient based on a codeword for the transform unit, determine whether the transform unit is split into sub-transform units based on the codeword, and decode the transform unit based on the determinations. In another example, a video encoder is configured to determine whether a component of a transform unit of a coding unit of video data includes at least one non-zero coefficient, determine whether the transform unit is split into sub-transform units, select a codeword from a variable length code table, wherein the variable length code table provides an indication that the codeword corresponds to the determinations, and provide the codeword for the transform unit. | 05-03-2012 |
20120121017 | REFERENCE PICTURE LIST CONSTRUCTION FOR GENERALIZED P/B FRAMES IN VIDEO CODING - This disclosure relates to techniques for indicating that a video frame is coded as a generalized P/B (GPB) frame in order to reduce a cost of coding and constructing a second reference picture list in video coding. For a GPB frame, which has identical reference picture lists, signaling and constructing both the first and second reference picture lists may be redundant. The techniques of this disclosure may include coding syntax elements indicating that the video frame is coded as the GPB frame, and coding syntax elements indicating a number of reference pictures and reference picture list construction commands for only a first reference picture list. The techniques also include constructing the first reference picture list based on the syntax elements, and then creating the second reference picture list as a duplicate of the first reference picture list. | 05-17-2012 |
20120147947 | CODEWORD ADAPTATION FOR VARIABLE LENGTH CODING - In one example, this disclosure describes a method of codeword adaptation for variable length coding. The method includes applying a first codeword adaptation scheme to groups of codewords in a variable length coding (VLC) table to change mappings of codewords within the groups to events in the VLC table; and applying a second codeword adaptation scheme to individual codewords within the groups of codewords in the VLC table to change mappings of the codewords to the events within the groups in the VLC table. | 06-14-2012 |
20120147970 | CODEWORD ADAPTATION FOR VARIABLE LENGTH CODING - In one example, this disclosure describes a method of codeword adaptation for variable length coding. The method comprises determining if a number codewords stored in a variable length coding (VLC) table satisfies a threshold; selecting a codeword adaptation scheme from a group of two or more codeword adaptation schemes based on whether the number of codewords satisfies the threshold; and applying the selected adaptation scheme to the codewords stored in the VLC table. | 06-14-2012 |
20120147971 | CODEWORD ADAPTATION FOR VARIABLE LENGTH CODING - In one example, this disclosure describes a method of codeword adaptation for variable length coding. The method comprises applying a first codeword adaptation scheme to a first group of codewords of a variable length coding (VLC) table to change a mapping of codewords to events in the VLC table; and applying a second codeword adaptation scheme to a second group of codewords of the VLC table to change the mapping of the codewords to the events in the VLC table. | 06-14-2012 |
20120163460 | SUB-PIXEL INTERPOLATION FOR VIDEO CODING - In one example, an apparatus includes a video coder configured to determine a first set of support pixels used to interpolate a value for a first sub-integer pixel position of a pixel of a reference block of video data; determine a second, different set of support pixels used to interpolate a value for a second sub-integer pixel position of the pixel; determine a third, different set of support pixels used to interpolate a value for a third sub-integer pixel position of the pixel; combine corresponding values from the first, second, and third sets of support pixels; apply an interpolation filter to the combined values to calculate a value for a fourth sub-integer-pixel comprising a one-eighth-integer position of the pixel and code a portion of a current block of the video data relative to the fourth one-eighth-integer pixel position of the reference block. | 06-28-2012 |
20120170645 | VIDEO FILTERING USING A COMBINATION OF ONE-DIMENSIONAL SWITCHED FILTER AND ONE-DIMENSIONAL ADAPTIVE FILTER - In one example, this disclosure describes a method of loop filtering of reconstructed video data during a video coding process. The method may comprising applying a one-dimensional (1D) switched filter to the video data in a first dimension that is either horizontal or vertical, and applying a 1D adaptive filter to the video data in a second dimension that is perpendicular to the first dimension. | 07-05-2012 |
20120170662 | VARIABLE LENGTH CODING OF VIDEO BLOCK COEFFICIENTS - This disclosure describes techniques for coding transform coefficients for a block of video data. According to some aspects of this disclosure, a coder (e.g., an encoder or decoder) may map between a code number cn and level_ID and run values associated with a first transform coefficient of the block of video data according to a first technique (e.g., a structured mapping), and map between a code number cn and level_ID and run values associated with a second coefficient of the block using a second technique. According to other aspects of this disclosure, the coder may map between a code number cn and level_ID and run syntax elements using different mathematical relationships, depending on a determined value of the code number cn or the level_ID syntax element. For example, the coder may access a mapping table of a plurality of mapping tables differently, dependent on the determined value. | 07-05-2012 |
20120177118 | INDICATING INTRA-PREDICTION MODE SELECTION FOR VIDEO CODING USING CABAC - For a block of video data, a video encoder can signal to a video decoder, using a context-based adaptive binary arithmetic coding (CABAC) process, a selected intra-prediction mode using a codeword that is mapped to a modified intra-prediction mode index. The video decoder can perform a context-based adaptive binary arithmetic coding (CABAC) process to determine the codeword signaled by the video encoder, determine the modified intra-prediction mode index corresponding to the codeword, determine most probable modes based on a context, map the modified intra-prediction mode index to an intra-prediction mode index by comparing the modified intra-prediction mode index to the mode indexes of the most probable modes, and determine the selected intra-prediction mode used to encode the block of video data based on the intra-prediction mode index. | 07-12-2012 |
20120189053 | COMBINED REFERENCE PICTURE LIST CONSTRUCTION FOR VIDEO CODING - This disclosure relates to techniques for constructing a combined reference picture list, List C, based on List | 07-26-2012 |
20120189055 | MOTION VECTOR PREDICTION - A method of coding video data includes determining a candidate motion vector for each of one or more candidate portions of a video frame and determining a current motion vector for a current portion of a current frame. The current motion vector identifies a portion of a reference frame that at least partially matches the current portion of the current frame. The method also includes calculating a motion vector difference between the current motion vector and each of the candidate motion vectors, selecting one of the candidate motion vectors based on the calculated motion vector differences, signaling an index identifying the candidate portion having the selected one of the candidate motion vectors, and signaling the corresponding motion vector difference calculated with respect to the selected one of the candidate motion vectors. | 07-26-2012 |
20120189058 | SINGLE REFERENCE PICTURE LIST CONSTRUCTION FOR VIDEO CODING - The example techniques described in this disclosure provide for an efficient manner to encode or decode a video block of a picture using a single reference picture list. The single reference picture list may include identifiers for reference picture or pictures used to encode or decode the video block. In some examples, a video encoder or decoder may encode or decode a video block that is predicted from two reference pictures using the single reference picture list, and encode or decode a video block that is predicted from one reference picture using the same, single reference picture list. | 07-26-2012 |
20120195368 | PERFORMING MOTION VECTOR PREDICTION FOR VIDEO CODING - In general, techniques are described for performing motion vector prediction for video coding. An apparatus comprising a motion compensation unit may implement the techniques. The motion compensation unit determines spatial candidate motion vectors (MVPs) associated with a current portion of a video frame and prunes the spatial candidate motion vectors to remove duplicates without removing a temporal candidate motion vector. The motion compensation unit selects one of the temporal candidate motion vector or one of the spatial candidate motion vectors remaining after pruning as a selected candidate motion vector based on a motion vector predictor (MVP) index signaled in a bitstream and performs motion compensation based on the selected candidate motion vector. | 08-02-2012 |
20120219064 | HIERARCHY OF MOTION PREDICTION VIDEO BLOCKS - A video decoder is configured to obtain an index value for a current video block. The video decoder obtains a partition type for a current video block. The video decoder selects one of a plurality of defined sets of ordered candidate predictive video blocks based on the partition type of the current video block. A video decoder selects a predictive video block from a selected one of the plurality of defined sets of ordered candidate predictive video blocks based on an index value. A video decoder generates a motion vector for a current video block based on motion information of the predictive video block. | 08-30-2012 |
20120230392 | MOTION VECTOR PREDICTORS (MVPs) FOR BI-PREDICTIVE INTER MODE IN VIDEO CODING - This disclosure describes video coding techniques applicable to a bi-predictive inter mode that uses adaptive motion vector prediction (AMVP). In particular, this disclosure describes techniques for encoding or decoding video data in which AMVP is used to code a first motion vector and a second motion vector associated with a current video block that is coded in the bi-predictive inter mode. More specifically, this disclosure describes techniques in which one motion vector of a bi-predictive video block can be used to define a candidate motion vector predictor (MVP) for predicting another motion vector of the bi-predictive video block. In many examples, a scaled version of the first motion vector of the bi-predictive video block is used as the MVP for the second motion vector of the bi-predictive video block. By defining an additional MVP candidate for the second motion vector of a bi-predictive video block, improved compression may be achieved. | 09-13-2012 |
20120243609 | BI-PREDICTIVE MERGE MODE BASED ON UNI-PREDICTIVE NEIGHBORS IN VIDEO CODING - This disclosure describes a bi-predictive merge mode in which a bi-predictive video block inherits motion information from two different neighboring blocks, wherein the two different neighboring blocks were each encoded in a uni-predictive mode. Bi-predictive coding may improve the ability to achieve compression in video coding. The described bi-predictive merge mode may increase the number of bi-predictive candidates that can be used in the context of merge mode coding by allowing two separate uni-predicted neighbors to be used to define bi-predictive motion information for a video block. | 09-27-2012 |
20120250773 | COMBINED REFERENCE PICTURE LIST CONSTRUCTION AND MAPPING - The example techniques of this disclosure are directed to default construction techniques for the construction of a combined reference picture list, and default mapping techniques for the combined reference picture list. In some examples, a video coder may construct first and second reference picture lists from frame number values, and construct the combined reference picture list from the frame number values of the first and second reference picture lists. In some examples, a video coder may construct first and second reference picture lists from picture order count (POC) values, and construct the combined reference picture list from the POC values of the first and second reference picture lists. In some examples, a video coder may construct a combined reference picture list from received information for the construction, and map the pictures of the combined reference picture list to one of a first or second reference picture list. | 10-04-2012 |
20120307894 | INTRA PREDICTION MODE CODING WITH DIRECTIONAL PARTITIONS - A video coder can determine a most probable mode for a block of video data using non-square partitions based on the direction of the non-square partitions. When the direction of the non-square partitions is vertical, an intra prediction mode of a left-neighboring block can be selected as the most probable intra prediction mode, and when the direction of the non-square partitions is horizontal, an intra prediction mode of an above-neighboring block can be selected as the most probable intra prediction mode. | 12-06-2012 |
20120314766 | ENHANCED INTRA-PREDICTION MODE SIGNALING FOR VIDEO CODING USING NEIGHBORING MODE - This disclosure describes techniques for intra-prediction mode signaling for video coding. In one example, a video coder is configured to determine, for a block of video data, a set of most probable intra-prediction modes such that the set of most probable intra-prediction modes has a size that is equal to a predetermined number that is greater than or equal to two. The video coder is also configured to code a value representative of an actual intra-prediction mode for the block based at least in part on the set of most probable intra-prediction modes and code the block using the actual intra-prediction mode. The video coder may further be configured to code the block using the actual intra-prediction mode, e.g., to encode or decode the block. Video encoders and video decoders may implement these techniques. | 12-13-2012 |
20120314767 | BORDER PIXEL PADDING FOR INTRA PREDICTION IN VIDEO CODING - A video coder performs a padding operation that processes a set of border pixels according to an order. The order starts at a bottom-left border pixel and proceeds through the border pixels sequentially to a top-right border pixel. When the padding operation processes an unavailable border pixel, the padding operation predicts a value of the unavailable border pixel based on a value of a border pixel previously processed by the padding operation. The video coder may generate an intra-predicted video block based on the border pixels. | 12-13-2012 |
20120328003 | MEMORY EFFICIENT CONTEXT MODELING - In an example, aspects of this disclosure relate to a method of coding video data that includes determining context information for a block of video data, where the block is included within a coded unit of video data, where the block is below a top row of blocks in the coded unit, and where the context information does not include information from an above-neighboring block in the coded unit. That method also includes entropy coding data of the block using the determined context information. | 12-27-2012 |
20130003835 | CODING OF LAST SIGNIFICANT TRANSFORM COEFFICIENT - A video encoder determines that the last significant coefficient (LSC) of a transform coefficient block occurs at a given ordinal position according to a coding scanning order. The video encoder generates a coordinate indicator that specifies the coordinates of a given transform coefficient in the transform coefficient block. The given transform coefficient occurs at the same ordinal position according to an assumed scanning order. A video decoder receives the coordinate indicator and converts the coordinate indicator into a scan-based LSC indicator. The scan-based LSC indicator indicates the ordinal position of the LSC. | 01-03-2013 |
20130003849 | VIDEO CODING USING ADAPTIVE MOTION VECTOR RESOLUTION - In one example, a device for coding video data includes a video coder configured to configured to code information representative of whether an absolute value of an x-component of a motion vector difference value for a current block of video data is greater than zero, code information representative of whether an absolute value of a y-component of the motion vector difference value is greater than zero, when the absolute value of the x-component is greater than zero, code information representative of the absolute value of the x-component, when the absolute value of the y-component is greater than zero, code information representative of the absolute value of the y-component, when the absolute value of the x-component is greater than zero, code a sign of the x-component, and when the absolute value of the y-component is greater than zero, code a sign of the y-component. | 01-03-2013 |
20130022119 | BUFFERING PREDICTION DATA IN VIDEO CODING - In an example, aspects of this disclosure relate to a method of coding video data that generally includes determining prediction information for a block of video data, where the block is included in a coded unit of video data and positioned below a top row of above-neighboring blocks in the coded unit, and where the prediction information for the block is based on prediction information from one or more other blocks in the coded unit but not based on prediction information from any of the top row of blocks in the coded unit. The method also generally includes coding the block based on the determined prediction information. | 01-24-2013 |
20130114669 | VLC COEFFICIENT CODING FOR LARGE CHROMA BLOCK - This disclosure describes techniques for coding transform coefficients for a block of video data. According to these techniques, a video coder (a video encoder or video decoder) determines whether a block of video data is a luma block or a chroma block. If the block of video data is a luma block, the video coder adaptively updates a VLC table index value based on a code number cn and value of a scaling factor. However, if the block of video data is a chroma block, the video coder adaptively updates the VLC table index value based on the code number cn and without using the scaling factor. The video coder uses the updated VLC table index value to select a VLC table of a plurality of VLC tables that are used to encode or decode the block of video data. | 05-09-2013 |
20130114671 | CONTEXT REDUCTION FOR CONTEXT ADAPTIVE BINARY ARITHMETIC CODING - A reduction in the number of binarizations and/or contexts used in context adaptive binary arithmetic coding (CABAC) for video coding is proposed. In particular, this disclosure proposes techniques that may lower the number contexts used in CABAC by up to 56. | 05-09-2013 |
20130114672 | CONTEXT REDUCTION FOR CONTEXT ADAPTIVE BINARY ARITHMETIC CODING - A reduction in the number of binarizations and/or contexts used in context adaptive binary arithmetic coding (CABAC) for video coding is proposed. In particular, this disclosure proposes techniques that may lower the number contexts used in CABAC by up to 56. | 05-09-2013 |
20130114673 | CONTEXT REDUCTION FOR CONTEXT ADAPTIVE BINARY ARITHMETIC CODING - A reduction in the number of binarizations and/or contexts used in context adaptive binary arithmetic coding (CABAC) for video coding is proposed. In particular, this disclosure proposes techniques that may lower the number contexts used in CABAC by up to 56. | 05-09-2013 |
20130114676 | CONTEXT OPTIMIZATION FOR LAST SIGNIFICANT COEFFICIENT POSITION CODING - A video encoder is configured to encode a binary sting indicating a position of a last significant coefficient within a video block. A video decoder is configured to decode the encoded binary string. The string may be coded using context adaptive binary arithmetic coding (CABAC). Binary indices of the binary string may be assigned a context. The context may be determined according to a mapping function. A context may be a assigned to one or more binary indices where each index is associated with a different block size. The last binary index of a 16×16 video block may share a context with the last binary index of a 32×32 video block. | 05-09-2013 |
20130114707 | INTRA-MODE VIDEO CODING - This disclosure relates to methods and apparatus for encoding and decoding video data. In an example an intra-mode for predicting a current block of video data and most probable intra-modes (MPMs) for predicting the current block of video data may be determined. MPMs for predicting the current block of video data may be determined. An index for each of the MPMs based on an order in which the intra-mode for predicting the current block is compared to the MPMs may be determined. When one of the MPMs for predicting the current block matches the intra-mode for predicting the current block, the index of the matching MPM. | 05-09-2013 |
20130114738 | PROGRESSIVE CODING OF POSITION OF LAST SIGNIFICANT COEFFICIENT - A video encoder is configured to determine a first and second binary string for a value indicating the position of the last significant coefficient, within a video block of size T. A video decoder is configured to determine a value indicating the position of a last significant coefficient within a video block of size T based on a first and second binary string. In one example, the first binary string is based on a truncated unary coding scheme defined by a maximum bit length defined by 2 log | 05-09-2013 |
20130128964 | REFERENCE MODE SELECTION IN INTRA MODE CODING - A video coder can determine a first most probable intra prediction mode and a second most probable intra prediction mode for a current video block, and based on the first and second most probable intra prediction modes, determine an estimate of an actual intra prediction mode used to code the current video block. The estimate of the actual intra prediction mode can be determined by selecting one of the first most probable mode and the second most probable mode as the estimate of the actual intra prediction in response to both the first most probable mode and the second most probable mode being different angular prediction modes. The estimate of the actual intra prediction mode plus difference information can be used to identify the actual intra prediction mode used to code the current video block. | 05-23-2013 |
20130128974 | ADAPTIVE OVERLAPPED BLOCK MOTION COMPENSATION - In general, techniques are described for performing adaptive overlapped block motion compensation when coding video data. A video coding device configured to code video data may implement the techniques. The video coding device may comprise one or more processors configured to determine an adaptation metric from a region of support for one of a first partition and a second partition of one or more blocks of the video data separated by a partition boundary. The region of support may not be the entire one or more blocks of video data. The one or more processors may further be configured to adapt, based on the adaptation metric, application of an overlapped block motion compensation process to determine predicted pixel values near the partition boundary for a first predicted block representative of the first partition of the video block. | 05-23-2013 |
20130163668 | PERFORMING MOTION VECTOR PREDICTION FOR VIDEO CODING - In general, techniques are described for performing motion vector prediction for video coding. A video coding device comprising a processor may perform the techniques. The processor may be configured to determine a plurality of candidate motion vectors for a current block of the video data so as to perform the motion vector prediction process and scale one or more of the plurality of candidate motion vectors determined for the current block of the video data to generate one or more scaled candidate motion vectors. The processor may then be configured to modify the scaled candidate motion vectors to be within a specified range. | 06-27-2013 |
20130177070 | SIGNIFICANCE MAP SUPPORT FOR PARALLEL TRANSFORM COEFFICIENT PROCESSING IN VIDEO CODING - In an example, aspects of this disclosure relate to a process for video coding that includes determining that a set of support for selecting a context model to code a current significant coefficient flag of a transform coefficient of a block of video data includes at least one significant coefficient flag that is not available. The process also includes, based on the determination, modifying the set of support, and calculating a context for the current significant coefficient flag using the modified set of support. The process also includes applying context-adaptive binary arithmetic coding (CABAC) to code the current significant coefficient flag based on the calculated context. | 07-11-2013 |
20130182757 | THROUGHPUT IMPROVEMENT FOR CABAC COEFFICIENT LEVEL CODING - This disclosure proposes various techniques for limiting the number of bins that are coded using an adaptive context model with context adaptive binary arithmetic coding (CABAC). In particular, this disclosure proposes to limit the number of bins that use CABAC for coding level information of transform coefficients in a video coding process. | 07-18-2013 |
20130188698 | COEFFICIENT LEVEL CODING - In one example, a device includes a video coder configured to code a first set of syntax elements for the coefficients of a residual block of video data, and code, using at least a portion of the first set of syntax elements as context data, a second set of syntax elements for the coefficients, wherein the first set of syntax elements each correspond to a first type of syntax element for the coefficients, and wherein the second set of syntax elements each correspond to a second, different type of syntax element for the coefficients. For example, the first set of syntax elements may comprise values indicating whether the coefficients are significant (that is, have non-zero level values), and the second set of syntax elements may comprise values indicating whether level values for the coefficients have absolute values greater than one. | 07-25-2013 |
20130188699 | CODING OF COEFFICIENTS IN VIDEO CODING - A video encoder performs multiple coding passes on coefficients in a coefficient block. During each coding pass, the video encoder encodes a different set of syntax elements for coefficients in the coefficient block. A video decoder uses the syntax elements for a coefficient to determine the value of the coefficient. When the video encoder performs a coding pass, the video encoder selects a coding context for a syntax element based at least in part on a syntax element generated in an earlier coding pass for a non-causal coefficient and based at least in part on a value of a syntax element generated during the current coding pass for a causal coefficient. The video encoder entropy encodes the syntax element based on the selected coding context. A video decoder performs a similar series of coding passes in which the video decoder selects coding contexts and entropy decodes the syntax elements. | 07-25-2013 |
20130188701 | SUB-BLOCK LEVEL PARALLEL VIDEO CODING - The techniques of this disclosure are generally related to parallel coding of video units that reside along rows or columns of blocks in largest coding units. For example, the techniques include removing intra-prediction dependencies between two video units in different rows or columns to allow for parallel coding of rows or columns of the video units. | 07-25-2013 |
20130230097 | SCAN-BASED SLIDING WINDOW IN CONTEXT DERIVATION FOR TRANSFORM COEFFICIENT CODING - A video coding process that includes defining a context derivation neighborhood for one of a plurality of transform coefficients based on a transform coefficient scan order. The process also includes determining a context for the one of the plurality of transform coefficients based on the context derivation neighborhood. The process also includes coding the one of the plurality of transform coefficients based on the determined context. | 09-05-2013 |
20130251041 | DERIVING CONTEXT FOR LAST POSITION CODING FOR VIDEO CODING - In one example, a device includes a video coder configured to determine a context for entropy coding a bin of a value indicative of a last significant coefficient of a block of video data using a function of an index of the bin, and code the bin using the determined context. The video coder may encode or decode the bin using context-adaptive binary arithmetic coding (CABAC). The function may also depend on a size of the block. In this manner, a table indicating context indexes for the contexts need not be stored by the device. | 09-26-2013 |
20130272380 | GROUPING BYPASS CODED SYNTAX ELEMENTS IN VIDEO CODING - A video encoding device is configured to generate a first group of syntax elements. Each syntax element in the first group indicates whether a prediction mode of a respective prediction unit (PU) is based on an index into a list of most probable modes. A second group of syntax elements is generated that correspond to respective syntax elements in the first group. The syntax elements in the second group identify either an index into the list of most probable modes or an intra-prediction mode. The first group of syntax elements are context adaptive binary arithmetic coding (CABAC) encoded, and the second group of syntax elements are bypass encoded. A video decoder is configured to receive the entropy encoded first and second groups of syntax elements. The video decoder CABAC decodes the first group of flags and bypass decodes the second group of flags. | 10-17-2013 |
20130272414 | GROUP FLAG IN TRANSFORM COEFFICIENT CODING FOR VIDEO CODING - A method of decoding data indicative of a subset of transform coefficients is described. The coefficients are indicative of a block of video data. The method may include determining that no transform coefficient in the subset of transform coefficients has an absolute value greater than one, and, based on the determining, skipping one or more decoding passes on the subset of transform coefficients, the decoding passes relating to decoding level information associated with the subset of transform coefficients. | 10-17-2013 |
20130272423 | TRANSFORM COEFFICIENT CODING - Techniques are described for determining a scan order for transform coefficients of a block. The techniques may determine context for encoding or decoding significance syntax elements for the transform coefficients based on the determined scan order. A video encoder may encode the significance syntax elements and a video decoder may decode the significance syntax elements based on the determined contexts. | 10-17-2013 |
20130272424 | SIGN HIDING TECHNIQUES FOR QUANTIZED TRANSFORM COEFFICIENTS IN VIDEO CODING - This disclosure proposes techniques for encoding and decoding transform coefficients in a video coding process. In particular, this disclosure proposes techniques determining whether or not to apply a sign data hiding process for a group of transform coefficients, and techniques for applying the sign data hiding process. In one example, this disclosure describes a method for decoding video data comprising determining a block of transform coefficients, determining whether to perform a sign data hiding process for at least one transform coefficient in the block of transform coefficients based on a single variable compared to a threshold, and decoding sign information for the block based on the determination of whether to perform the sign data hiding process. | 10-17-2013 |
20140003532 | WAVEFRONT PARALLEL PROCESSING FOR VIDEO CODING | 01-02-2014 |
20140219342 | MODE DECISION SIMPLIFICATION FOR INTRA PREDICTION - In general, techniques are described for reducing the complexity of mode selection when selecting from multiple, different prediction modes. A video coding device comprising a processor may perform the techniques. The processor may compute approximate costs for a pre-defined set of intra-prediction modes identified in a current set. The current set of intra-prediction modes may include fewer modes than a total number of intra-prediction modes. The processor may compare approximate costs computed for one or more most probable intra-prediction modes to a threshold and replace one or more of the intra-prediction modes of the current set with one or more most probable intra-prediction modes. The processor may perform rate distortion analysis with respect to each intra-prediction mode identified in the current set and perform intra-prediction coding with respect to the current block using a mode of the current set. | 08-07-2014 |
20140219349 | INTRA PREDICTION MODE DECISION WITH REDUCED STORAGE - In general, techniques are described for reducing the space required to store rate distortion values when selecting from multiple, different prediction modes. A video coding device comprising a processor may perform the techniques. The processor may determine first and second sets of intra-prediction modes for a current block of video data. The first and second sets of intra-prediction modes may include less intra-prediction modes, collectively, than a total number of intra-prediction modes. The processor may compute an approximate cost for each intra-prediction mode included in the first and second sets of intra-prediction modes. The processor may store the approximate cost for each intra-prediction mode identified in the first and second sets of intra-prediction modes to a memory. The processor may perform intra-prediction to encode the current block using a mode identified in at least one of the first or second set. | 08-07-2014 |
20140341297 | VIDEO CODING USING ADAPTIVE MOTION VECTOR RESOLUTION - In one example, a device for coding video data includes a video coder configured to configured to code information representative of whether an absolute value of an x-component of a motion vector difference value for a current block of video data is greater than zero, code information representative of whether an absolute value of a y-component of the motion vector difference value is greater than zero, when the absolute value of the x-component is greater than zero, code information representative of the absolute value of the x-component, when the absolute value of the y-component is greater than zero, code information representative of the absolute value of the y-component, when the absolute value of the x-component is greater than zero, code a sign of the x-component, and when the absolute value of the y-component is greater than zero, code a sign of the y-component. | 11-20-2014 |
20140355669 | CONTEXT REDUCTION FOR CONTEXT ADAPTIVE BINARY ARITHMETIC CODING - A reduction in the number of binarizations and/or contexts used in context adaptive binary arithmetic coding (CABAC) for video coding is proposed. In particular, this disclosure proposes techniques that may lower the number contexts used in CABAC by up to 56. | 12-04-2014 |
20140355681 | CONTEXT REDUCTION FOR CONTEXT ADAPTIVE BINARY ARITHMETIC CODING - A reduction in the number of binarizations and/or contexts used in context adaptive binary arithmetic coding (CABAC) for video coding is proposed. In particular, this disclosure proposes techniques that may lower the number contexts used in CABAC by up to 56. | 12-04-2014 |
20150071359 | TWO LEVEL LAST SIGNIFICANT COEFFICIENT (LSC) POSITION CODING - In some examples, a video coder employs a two-level technique to code information that identifies a position within the block of transform coefficients of one of the coefficients that is a last significant coefficient (LSC) for the block according to a scanning order associated with the block of transform coefficients. For example, a video coder may code a sub-block position that identifies a position of one of the sub-blocks that includes the LSC within the block, and code a coefficient position that identifies a position of the LSC within the sub-block that includes the LSC. | 03-12-2015 |