Digital video compression system, method and computer readable medium
US-9386304-B2 · Jul 5, 2016 · US
US10694214B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-10694214-B2 |
| Application number | US-201314134765-A |
| Country | US |
| Kind code | B2 |
| Filing date | Dec 19, 2013 |
| Priority date | Dec 21, 2012 |
| Publication date | Jun 23, 2020 |
| Grant date | Jun 23, 2020 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
In general, techniques are described for performing multiple passes of sample adaptive offset (SAO) filtering when coding video data. A video decoding device comprising one or more processors may perform the techniques. The processors may determine a first SAO pixel classification for a block of video data and determine a first offset value based on the first SAO pixel classification and one or more pixel values of the block. The one or more processors may also determine a second SAO pixel classification for the block and determine a second offset value based on the second SAO pixel classification and the one or more pixel values of block of video data. The processors may then apply the first offset value and the second offset value to the block of video data to generate a block of SAO filtered video data.
Opening claim text (preview).
What is claimed is: 1. A method of decoding video data, the method comprising: receiving one or more syntax elements indicating multi-pass sample adaptive offset (SAO) filtering was performed; determining, responsive to the one or more syntax elements indicating that the multi-pass SAO was performed, a first SAO pixel classification for a block of video data, wherein the first SAO pixel classification indicates that either an edge-based classification or a band-based classification is to be applied entirely with respect to the block of video data at a block-level; determining a first offset value based on the first SAO pixel classification and based on the plurality of pixel values of the block of video data; determining, responsive to the one or more syntax elements indicating that the multi-pass SAO was performed, a second SAO pixel classification for the block of video data concurrent to determining the first SAO pixel classification or determining the first offset value, wherein the second SAO pixel classification indicates that either the edge-based classification or the band-based classification is to be applied entirely with respect to the block of video data at the block-level; determining a second offset value based on the second SAO pixel classification and based on the plurality of pixel values of the block of video data; and applying the first offset value and the second offset value to the block of video data to generate a block of SAO filtered video data. 2. The method of claim 1 , wherein determining the second SAO pixel classification comprises determining the second SAO pixel classification concurrent to determining the first SAO pixel classification and prior to applying the first offset value to the block of video data. 3. The method of claim 1 , wherein determining the second offset comprises determining the second offset concurrent to determining the first SAO pixel classification and prior to applying the first offset value to the block of video data. 4. The method of claim 1 , wherein determining the second SAO pixel classification comprises determining the second SAO pixel classification concurrent to determining the first SAO pixel classification and prior to determining the first offset. 5. The method of claim 1 , wherein a video decoder performs the method and is configured to operate in accordance with a range extension profile of a high efficiency video coding standard when determining the first sample adaptive offset (SAO) pixel classification for the block of video data, determining the first offset value based on the first SAO pixel classification, based on the one or more pixel values of the block of video data, determining the second SAO pixel classification for the block of video data, determining the second offset value based on the second SAO pixel classification and based on the one or more pixel values of block of video data, and applying the first offset value and the second offset value to the block of video data to generate the block of SAO filtered video data. 6. The method of claim 1 , wherein a video decoder performs the method and is configured to operate in accordance with a screen coding profile of a high efficiency video coding standard when determining the first sample adaptive offset (SAO) pixel classification for the block of video data, determining the first offset value based on the first SAO pixel classification and based on the one or more pixel values of the block of video data, determining the second SAO pixel classification for the block of video data, determining the second offset value based on the second SAO pixel classification and based on the one or more pixel values of block of video data, and applying the first offset value and the second offset value to the block of video data to generate the block of SAO filtered video data. 7. The method of claim 1 , wherein the block of video data comprises one of a block of luma samples or a block of chroma samples. 8. The method of claim 1 , wherein receiving the one or more syntax elements comprises receiving one or more syntax element indicating multi-pass concurrent SAO filtering was performed. 9. The method of claim 1 , wherein receiving the one or more syntax elements comprises receiving one or more syntax elements indicating multi-pass sequential SAO filtering was performed. 10. The method of claim 1 , wherein receiving the one or more syntax elements comprises receiving one or more syntax elements indicating that one or more passes of the multi-pass SAO filtering was performed sequentially and one or more passes of the multi-pass SAO filtering was performed concurrently. 11. A video decoding device comprising: a memory configured to store data associated with a block of video data; and one or more processors configured to: receive one or more syntax elements indicating multi-pass sample adaptive offset (SAO) filtering was performed; determine, responsive to the one or more syntax elements indicating that the multi-pass SAO was performed, a first SAO pixel classification for the block of video data, wherein the first SAO pixel classification indicates that either an edge-based classification or a band-based classification is to be applied entirely with respect to the block of video data at a block-level; determine a first offset value based on the first SAO pixel classification and based on the plurality of pixel values of the block of video data; determine, responsive to the one or more syntax elements indicating that the multi-pass SAO was performed, a second SAO pixel classification for the block of video data concurrent to determining the first SAO pixel classification or determining the first offset value, wherein the second SAO pixel classification indicates that either the edge-based classification or the band-based classification is to be applied entirely with respect to the block of video data at the block-level; determine a second offset value based on the second SAO pixel classification and based on the plurality of pixel values of the block of video data; and apply the first offset value and the second offset value to the block of video data to generate a block of SAO filtered video data. 12. A method of encoding video data, the method comprising: determining a first sample adaptive offset (SAO) pixel classification for a block of video data, wherein the first SAO pixel classification indicates that either an edge-based classification or a band-based classification is to be applied entirely with respect to the block of video data at a block-level; determining a first offset value based on the first SAO pixel classification and based on a plurality of pixel values of the block of video data; applying the first offset value to the block of video data to determine a second block of video data; determining a second SAO pixel classification for the block of video data concurrent to determining the first SAO pixel classification or determining the first offset value, wherein the second SAO pixel classification indicates that either an edge-based classification or a band-based classification is to be applied with respect to the block of video data at the block-level; determining a second offset value based on the second SAO pixel classification and based on a plurality of pixel values of the second block of video data; applying the second offset value to the second block of video data to generate a block of SAO filtered video data; generating one or more syntax elements indicating that multi-pass SAO filtering was performed; and specifying, in a bitstream, the one or more syntax elements and the block of SAO filtered video data.
Filters, e.g. for pre-processing or post-processing (sub-band filter banks H04N19/635) · CPC title
using parallelised computational arrangements · CPC title
Coding unit complexity, e.g. amount of activity or edge presence estimation (H04N19/146 takes precedence) · CPC title
involving reduction of coding artifacts, e.g. of blockiness · CPC title
involving only two passes · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.