Encoder-side decisions for screen content encoding

US2016269732A1 · US · A1

Patent metadata
FieldValue
Publication numberUS-2016269732-A1
Application numberUS-201415030032-A
CountryUS
Kind codeA1
Filing dateMar 17, 2014
Priority dateMar 17, 2014
Publication dateSep 15, 2016
Grant date

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.

Innovations in encoder-side decisions for coding of screen content video or other video can speed up encoding in various ways. For example, some of the innovations relate to ways to speed up motion estimation by identifying appropriate starting points for the motion estimation in different reference pictures. Many of the encoder-side decisions speed up encoding by terminating encoding for a block or skipping the evaluation of certain modes or options when a condition is satisfied. For example, some of the innovations relate to ways to speed up encoding when hash-based block matching is used. Still other innovations relate to ways to identify when certain intra-picture prediction modes should or should not be evaluated during encoding. Other innovations relate to other aspects of encoding.

First claim

Opening claim text (preview).

1 .- 6 . (canceled) 7 . A computing device comprising: one or more buffers configured to store an image or video; and an image encoder or video encoder configured to perform operations comprising: encoding the image or video to produce encoded data, including: performing hash-based block matching for a current block of a current picture; based on whether a condition is satisfied, determining whether to skip one or more stages of encoding for the current block, wherein the condition depends on whether a match is found during the hash-based block matching for the current block; and based on results of the determining, selectively skipping the one or more stages of encoding for the current block; and outputting the encoded data in a bitstream. 8 . The computing device of claim 7 wherein the hash-based block matching for the current block is performed for motion estimation, and wherein the one or more stages of encoding for the current block include fractional-precision motion estimation for the current block, evaluation of coding modes for the current block, and/or evaluation of coding options for the current block. 9 . (canceled) 10 . The computing device of claim 7 wherein the hash-based block matching for the current block is performed for block vector estimation, and wherein the one or more stages of encoding for the current block include evaluation of coding modes and coding options for the current block. 11 . The computing device of claim 7 wherein the condition further depends on expected quality of the current block relative to quality of a candidate block for the match. 12 . The computing device of claim 11 wherein the expected quality of the current block is indicated by a quantization parameter (“QP”) value that applies for the current block, and wherein the quality of the candidate block is indicated by a QP value for the candidate block. 13 . The computing device of claim 7 wherein the condition further depends on block size of the current block relative to a threshold block size. 14 . The computing device of claim 7 wherein the match signifies matching hash values between the current block and a candidate block. 15 . The computing device of claim 14 wherein the match further signifies sample-by-sample matching between the current block and the candidate block. 16 . The computing device of claim 7 wherein the hash-based block matching compares hash values computed from input sample values. 17 . In a computing device, a method comprising: encoding an image or video to produce encoded data, including: measuring a number of different colors in a unit of the image or video; based at least in part on results of the measuring, determining whether to skip one or more intra-picture prediction modes for the unit; and if the one or more intra-picture prediction modes are not skipped, evaluating the one or more intra-picture prediction modes for the unit; and outputting the encoded data in a bitstream. 18 . The method of claim 17 wherein the measuring includes counting the different colors among sample values in the unit or counting the different colors among sample values in the unit after clustering of the sample values into fewer colors. 19 . (canceled) 20 . The method of claim 17 wherein the one or more intra-picture prediction modes include intra block copy prediction mode and/or dictionary coding mode. 21 . (canceled) 22 . The method of claim 17 wherein the determining includes comparing the results of the measuring to a threshold. 23 . The method of claim 22 wherein the threshold depends on block size. 24 . The method of claim 22 further comprising, before the encoding the image or video, adjusting the threshold to trade off encoding speed versus decrease in coding efficiency. 25 . The method of claim 17 wherein the unit is a block, slice or picture. 26 . One or more computer-readable media storing computer-executable instructions for causing a computing device, when programmed thereby, to perform operations comprising: encoding an image or video to produce encoded data, including, for a current block of a current picture: in a first stage, identifying a set of candidate directions of spatial intra-picture prediction for the current block; in a second stage, selecting one of the set of candidate directions, after, for each of the set of candidate directions, performing rate-distortion analysis for encoding of the current block using that candidate direction but without rate-distortion optimization-based quantization (“RDOQ”); and in a third stage, determining how to encode a residual quadtree for the current block when encoded using the selected candidate direction, including performing rate-distortion analysis with RDOQ for different ways of encoding of the residual quadtree; and outputting the encoded data in a bitstream. 27 . The one or more computer-readable media of claim 26 wherein the identifying the set of candidate directions of spatial intra-picture prediction for the current block includes: for each of multiple possible directions of spatial intra-picture prediction for the current block, calculating a value of a distortion metric for the possible direction, wherein the distortion metric is sum of absolute differences or sum of absolute transform differences; and selecting the set of candidate directions according to the values of the distortion metric for the multiple possible directions. 28 . The one or more computer-readable media of claim 26 wherein the second stage includes, for each of the set of candidate directions: calculating residual values for the current block when encoded using the candidate direction; encoding the residual values using a largest transform size but without RDOQ; reconstructing the residual values; and measuring rate cost and distortion cost. 29 . The one or more computer-readable media of claim 26 wherein the third stage includes, for each of multiple combinations of transform sizes for the residual quadtree, encoding residual values of the residual quadtree using the combination of transform sizes with RDOQ. 30 .- 35 . (canceled)

Assignees

Inventors

Classifications

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

  • involving spatial prediction techniques · CPC title

  • the unit being a colour or a chrominance component · CPC title

  • involving filtering within a prediction loop · CPC title

  • Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264 · 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 US2016269732A1 cover?
Innovations in encoder-side decisions for coding of screen content video or other video can speed up encoding in various ways. For example, some of the innovations relate to ways to speed up motion estimation by identifying appropriate starting points for the motion estimation in different reference pictures. Many of the encoder-side decisions speed up encoding by terminating encoding for a blo…
Who is the assignee on this patent?
Li Bin, Xu Jizheng, Wu Feng, and 1 more
What technology area does this patent fall under?
Primary CPC classification H04N19/176. Mapped technology areas include Electricity.
When was this patent published?
Publication date Thu Sep 15 2016 00:00:00 GMT+0000 (Coordinated Universal Time) (A1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).