H04N19/43

Simplification of history-based motion vector prediction

A method of coding video data, including constructing a history-based motion vector prediction (HMVP) candidate history table that includes motion vector information of previously coded blocks that extend beyond adjacent neighboring blocks of a current block, constructing a motion vector predictor list, and adding one or more HMVP candidates from the HMVP candidate history table to the motion vector predictor list. Adding the one or more HMVP candidates from the HMVP candidate history table comprises comparing a first HMVP candidate in the HMVP candidate history table to two entries in the motion vector predictor list and no other entries, and adding the first HMVP candidate to the motion vector predictor list when the first HMVP candidate is different than both of the two entries in the motion vector predictor list. The method also includes coding the current block of video data using the motion vector predictor list.

Method and Device for Encoding a Sequence of Images and Method and Device for Decoding a Sequence of Images
20230089360 · 2023-03-23 ·

A method and device for deriving at least one motion information predictor for encoding of an image portion by motion compensation. At least two distinct first and second subsets of motion information predictors of a first set of motion information predictors are provided. Processing of the first subset of motion information predictors and processing of the second subset of motion information predictors is performed to obtain a final set of motion information predictors usable for predicting said image portion from the reference image portion. Processing of the second subset may comprise removing duplicates from among the motion information predictors of said second subset, and may be performed so as to exclude temporal predictors. At least part of the processing of the second subset of motion information predictors may be performed concurrently with at least part of the processing of the first subset of motion information predictors.

Method and Device for Encoding a Sequence of Images and Method and Device for Decoding a Sequence of Images
20230089360 · 2023-03-23 ·

A method and device for deriving at least one motion information predictor for encoding of an image portion by motion compensation. At least two distinct first and second subsets of motion information predictors of a first set of motion information predictors are provided. Processing of the first subset of motion information predictors and processing of the second subset of motion information predictors is performed to obtain a final set of motion information predictors usable for predicting said image portion from the reference image portion. Processing of the second subset may comprise removing duplicates from among the motion information predictors of said second subset, and may be performed so as to exclude temporal predictors. At least part of the processing of the second subset of motion information predictors may be performed concurrently with at least part of the processing of the first subset of motion information predictors.

REPRESENTING MOTION VECTORS IN AN ENCODED BITSTREAM

A format for use in encoding moving image data, comprising: a sequence of frames including plurality of the frames in which at least a region is encoded using motion estimation; a respective set of motion vector values representing motion vectors of the motion estimation for each respective one of these frames or each respective one of one or more regions within each of such frames; and at least one respective indicator associated with each of the respective frames or regions, indicating whether the respective motion vector values of the respective frame or region are encoded at a first resolution or a second resolution.

REPRESENTING MOTION VECTORS IN AN ENCODED BITSTREAM

A format for use in encoding moving image data, comprising: a sequence of frames including plurality of the frames in which at least a region is encoded using motion estimation; a respective set of motion vector values representing motion vectors of the motion estimation for each respective one of these frames or each respective one of one or more regions within each of such frames; and at least one respective indicator associated with each of the respective frames or regions, indicating whether the respective motion vector values of the respective frame or region are encoded at a first resolution or a second resolution.

Shared motion estimation cost metrics for overlapping units

An apparatus having a processor and a circuit is disclosed. The processor may be configured to (i) compare, at a first level of a motion estimation hierarchy, first units of a current picture with a reference picture to generate first metrics, (ii) combine, at the first level, the first metrics to generate second metrics and (iii) refine, at a second level of the hierarchy, the first metrics and the second metrics to generate motion vectors. Multiple metrics may be refined in parallel. The first metrics generally correspond to the first units in an overlapping unit of the current picture. The second metrics generally correspond to a plurality of second units in the overlapping unit. Each second unit may overlap one or more first units. The circuit may be configured to process the overlapping unit based on the motion vectors to generate an output signal.

Shared motion estimation cost metrics for overlapping units

An apparatus having a processor and a circuit is disclosed. The processor may be configured to (i) compare, at a first level of a motion estimation hierarchy, first units of a current picture with a reference picture to generate first metrics, (ii) combine, at the first level, the first metrics to generate second metrics and (iii) refine, at a second level of the hierarchy, the first metrics and the second metrics to generate motion vectors. Multiple metrics may be refined in parallel. The first metrics generally correspond to the first units in an overlapping unit of the current picture. The second metrics generally correspond to a plurality of second units in the overlapping unit. Each second unit may overlap one or more first units. The circuit may be configured to process the overlapping unit based on the motion vectors to generate an output signal.

METHODS, DEVICES AND SYSTEMS FOR PARALLEL VIDEO ENCODING AND DECODING
20230082110 · 2023-03-16 ·

A method for decoding a video bitstream is disclosed. The method comprises: entropy decoding a first portion of a video bitstream, wherein first portion of video bitstream is associated with a video frame, thereby producing a first portion of decoded data; entropy decoding a second portion of video bitstream, wherein second portion of video bitstream is associated with video frame, thereby producing a second portion of decoded data, wherein entropy decoding second portion of video bitstream is independent of entropy decoding first portion of video bitstream; and reconstructing a first portion of video frame associated with video bitstream using first portion of decoded data and second portion of decoded data.

METHODS, DEVICES AND SYSTEMS FOR PARALLEL VIDEO ENCODING AND DECODING
20230082110 · 2023-03-16 ·

A method for decoding a video bitstream is disclosed. The method comprises: entropy decoding a first portion of a video bitstream, wherein first portion of video bitstream is associated with a video frame, thereby producing a first portion of decoded data; entropy decoding a second portion of video bitstream, wherein second portion of video bitstream is associated with video frame, thereby producing a second portion of decoded data, wherein entropy decoding second portion of video bitstream is independent of entropy decoding first portion of video bitstream; and reconstructing a first portion of video frame associated with video bitstream using first portion of decoded data and second portion of decoded data.

Video Coding Using Intra Block Copy
20230085594 · 2023-03-16 ·

A method for decoding encoded blocks of pixels from an encoded video bit stream is provided that includes decoding a block vector corresponding to an encoded block of pixels from the encoded bit stream, verifying that the block vector indicates a block of reconstructed pixels in a search area including reconstructed pixels of a largest coding unit (LCU) including the encoded block of pixels and N left neighboring reconstructed LCUs of the LCU, and decoding the encoded block of pixels, wherein the block of reconstructed pixels is used as a predictor for the encoded block of pixels.