Reset of historical motion vector prediction

US11792390B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11792390-B2
Application numberUS-202117369543-A
CountryUS
Kind codeB2
Filing dateJul 7, 2021
Priority dateAug 31, 2018
Publication dateOct 17, 2023
Grant dateOct 17, 2023

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

In some embodiments, a method maintains a first list that stores motion vectors from one or more blocks that have been previously processed in a frame. When a current block is in the first set of positions in the frame, the method resets and uses a motion vector from a second list to transcode the current block due to the resetting of the first list. When the current block is not in the first set of positions, the method uses a motion vector from the first list to transcode the current block.

First claim

Opening claim text (preview).

What is claimed is: 1. A method comprising: maintaining, by a computing device, a first list that is storing N motion vectors from a first N blocks from an edge of a frame and one or more motion vectors from one or more blocks that have been previously processed in the frame that are not in the first N blocks and a second list that is storing the N motion vectors and not the one or more motion vectors; when a current block is in a first set of positions in the frame: resetting, by the computing device, the first list; and using, by the computing device, a motion vector from the second list to transcode the current block due to the resetting of the first list; and when the current block is not in the first set of positions, using, by the computing device, a motion vector from the one or more motions vectors in the first list to transcode the current block. 2. The method of claim 1 , wherein the first set of positions in the frame comprises a first block on the edge of the frame. 3. The method of claim 1 , wherein the first set of positions in the frame comprises a leftmost block from a left edge of the frame or a topmost block from a top edge of the frame. 4. The method of claim 1 , wherein the motion vector is the second list is from a block that neighbors the current block on an edge of the current block. 5. The method of claim 1 , wherein using the motion vector from the second list comprises: loading the motion vector into the first list. 6. The method of claim 1 , wherein motion vectors in the second list are used to transcode the current block only when the current block is in the first set of positions. 7. The method of claim 1 , wherein resetting the first list comprises: removing an existing motion vector in the first list. 8. The method of claim 1 , wherein the first list stores historical motion vector predictors from blocks that were sequentially transcoded before the current block. 9. The method of claim 1 , wherein the second list is not used when blocks outside of the first set of positions are transcoded. 10. The method of claim 1 , further comprising: when the current block is in the first set of positions in the frame, storing a motion vector from the transcoding of the current block in the second list. 11. The method of claim 1 , further comprising: when the current block is not in the first set of positions in the frame, storing a motion vector from the transcoding of the current block in the first list and not the second list. 12. The method of claim 1 , wherein the second list includes motion vectors from blocks only in the first set of positions. 13. The method of claim 1 , further comprising: adding a motion vector to the second list that is not based on transcoding the current block. 14. The method of claim 13 , wherein the motion vector that is added to the second list comprises a motion vector with a horizontal motion vector or a vertical motion vector equal to zero. 15. The method of claim 13 , wherein the motion vector that is added to the second list comprises a predefined motion vector. 16. A non-transitory computer-readable storage medium having stored thereon computer executable instructions, which when executed by a computing device, cause the computing device to be operable for: maintaining a first list that is storing N motion vectors from a first N blocks from an edge of a frame and one or more motion vectors from one or more blocks that have been previously processed in the frame that are not in the first N blocks and a second list that is storing the N motion vectors and not the one or more motion vectors; when a current block is in a first set of positions in the frame: resetting the first list; and using a motion vector from the second list to transcode the current block due to the resetting of the first list; and when the current block is not in the first set of positions, using a motion vector from the one or more motions vectors in the first list to transcode the current block. 17. The non-transitory computer-readable storage medium of claim 16 , wherein resetting the first list comprises: removing an existing motion vector in the first list. 18. The non-transitory computer-readable storage medium of claim 16 , further operable for: adding a motion vector to the second list that is not based on transcoding the current block. 19. An apparatus comprising: one or more computer processors; and a computer-readable storage medium comprising instructions for controlling the one or more computer processors to be operable for: maintaining a first list that is storing N motion vectors from a first N blocks from an edge of a frame and one or more motion vectors from one or more blocks that have been previously processed in the frame that are not in the first N blocks and a second list that is storing the N motion vectors and not the one or more motion vectors; when a current block is in a first set of positions in the frame: resetting the first list; and using a motion vector from the second list to transcode the current block due to the resetting of the first list; and when the current block is not in the first set of positions, using a motion vector from the one or more motions vectors in the first list to transcode the current block. 20. The non-transitory computer-readable storage medium of claim 16 , wherein motion vectors in the second list are used to transcode the current block only when the current block is in the first set of positions.

Assignees

Inventors

Classifications

  • H04N19/105Primary

    Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction · CPC title

  • Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability · CPC title

  • the region being a block, e.g. a macroblock · CPC title

  • using video transcoding, i.e. partial or full decoding of a coded input stream followed by re-encoding of the decoded output stream · CPC title

  • H04N19/52Primary

    by predictive encoding · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US11792390B2 cover?
In some embodiments, a method maintains a first list that stores motion vectors from one or more blocks that have been previously processed in a frame. When a current block is in the first set of positions in the frame, the method resets and uses a motion vector from a second list to transcode the current block due to the resetting of the first list. When the current block is not in the first s…
Who is the assignee on this patent?
Hulu Llc
What technology area does this patent fall under?
Primary CPC classification H04N19/105. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Oct 17 2023 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 5 related publications on this page (citations in our corpus or others sharing the same primary CPC).