IP Library Granted Patent US 9,055,290
Granted Patent B2
US 9,055,290 · App. 14/448,936 · Granted Jun 9, 2015

Coding the position of a last significant coefficient within a video block based on a scanning order for the block in video coding

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,055,290
App. No.
14/448,936
Granted
Jun 9, 2015
Kind
B2
Abstract

In one example, an apparatus is disclosed for coding coefficients associated with a block of video data during a video coding process, wherein the apparatus includes a video coder configured to code x- and y-coordinates that indicate a position of a last non-zero coefficient within the block according to a scanning order associated with the block when the scanning order comprises a first scanning order, and code interchanged x- and y-coordinates that indicate the position of the last non-zero coefficient within the block according to the scanning order when the scanning order comprises a second scanning order, wherein the second scanning order is different than the first scanning order.

Claims (41)

1. A method of coding a block of coefficients associated with a block of video data during a video coding process, the method comprising:

determining contexts for performing context adaptive entropy coding of the x- and y-coordinates indicating a horizontal position and a vertical position, respectively, of a last non-zero coefficient within the block of coefficients, wherein the contexts indicate a probability of each of the x- and y-coordinates comprising a given value when the coefficients of the block of video data are scanned in a first scanning order;

in the case that the coefficients are scanned in the first scanning order, entropy coding the x-coordinate and the y-coordinate using the determined contexts such that the x-coordinate is entropy coded based on the probability of the x-coordinate having a given value and the y-coordinate is entropy coded based on the probability of the y-coordinate having a given value; and

in the case that the coefficients are scanned in the second scanning order, interchanging the x- and y-coordinates and entropy coding the interchanged x-coordinate and the interchanged y-coordinate using the determined contexts such that the interchanged x-coordinate is entropy coded based on the probability of the y-coordinate having a given value and the interchanged y-coordinate is entropy coded based on the probability of the x-coordinate having a given value.

2. The method of claim 1 , wherein the first scanning order comprises a horizontal scanning order and the second scanning order comprises a vertical scanning order.

3. The method of claim 1 , wherein entropy coding the x- and y-coordinates and the interchanged x- and y-coordinates comprises coding a sequence of one or more bins, wherein the contexts indicate probabilities of each of the bins having a given value.

4. The method of claim 1 , wherein coding comprises decoding, the method further comprising:

receiving entropy encoded values indicative of the x-coordinate and y-coordinate in the video bitstream, wherein entropy coding the respective ones of the x- and y-coordinates or the interchanged x- and y-coordinates comprises entropy decoding the received entropy encoded values so as to obtain the respective ones of x- and y-coordinates or the interchanged x- and y-coordinates;

receiving encoded values of non-zero coefficients associated with the block of video data in a bitstream; and

decoding the encoded values of the non-zero coefficients based on the respective ones of the x- and y-coordinates and the interchanged x- and y-coordinates.

5. The method of claim 1 , wherein coding comprises encoding, and wherein entropy coding the respective ones of the x- and y-coordinates or the interchanged x- and y-coordinates comprises entropy encoding the respective ones of the x- and y-coordinates or the interchanged x- and y-coordinate so as to obtain the entropy encoded values indicative of the x-coordinate and y-coordinate; the method further comprising:

encoding values of non-zero coefficients associated with the block of video data based on the respective ones of the x- and y-coordinates and the interchanged x- and y-coordinates; and

outputting entropy encoded values indicative of the x-coordinate and y-coordinate and the encoded values of the non-zero coefficients in a video bitstream.

6. An apparatus for coding a block of coefficients associated with a block of video data during a video coding process, the apparatus comprising:

a memory configured to store video data; and

a processor in communication with the memory and configured to:

determine contexts for performing context adaptive entropy coding of the x- and y-coordinates indicating a horizontal position and a vertical position, respectively, of a last non-zero coefficient within the block of coefficients, wherein the contexts indicate a probability of each of the x- and y-coordinates comprising a given value when the coefficients of the block of video data are scanned in a first scanning order;

in the case that the coefficients are scanned in the first scanning order, entropy code the x-coordinate and the y-coordinate using the determined contexts such that the x-coordinate is entropy coded based on the probability of the x-coordinate having a given value and the y-coordinate is entropy coded based on the probability of the y-coordinate having a given value; and

in the case that the coefficients are scanned in the second scanning order, interchange the x- and y-coordinates and entropy code the interchanged x-coordinate and the interchanged y-coordinate using the determined contexts such that the interchanged x-coordinate is entropy coded based on the probability of the y-coordinate having a given value and the interchanged y-coordinate is entropy coded based on the probability of the x-coordinate having a given value.

7. The apparatus of claim 6 , wherein the first scanning order comprises a horizontal scanning order and the second scanning order comprises a vertical scanning order.

8. The apparatus of claim 6 , wherein to entropy code the x- and y-coordinates and the interchanged x- and y-coordinates, the processor is configured to code a sequence of one or more bins, wherein the contexts indicate probabilities of each of the bins having a given value.

9. The apparatus of claim 6 , wherein the processor is further configured to:

receive entropy encoded values indicative of the x-coordinate and y-coordinate in the video bitstream, wherein to entropy code the respective ones of the x- and y-coordinates or the interchanged x- and y-coordinates, the processor is configured to entropy decode the received entropy encoded values so as to obtain the respective ones of x- and y-coordinates or the interchanged x- and y-coordinates;

receive encoded values of non-zero coefficients associated with the block of video data in a bitstream; and

decode the encoded values of the non-zero coefficients based on the respective ones of the x- and y-coordinates and the interchanged x- and y-coordinates.

10. The apparatus of claim 6 , wherein to entropy code the respective ones of the x- and y-coordinates or the interchanged x- and y-coordinates, the processor is configured to entropy encode the respective ones of the x- and y-coordinates or the interchanged x- and y-coordinates so as to obtain the entropy encoded values indicative of the x-coordinate and y-coordinate and wherein the processor is further configured to:

decode values of non-zero coefficients associated with the block of video data based on the respective ones of the x- and y-coordinates and the interchanged x- and y-coordinates; and

output entropy encoded values indicative of the x-coordinate and y-coordinate and the encoded values of the non-zero coefficients in a video bitstream.

11. A non-transitory computer-readable medium having stored thereon instructions that, when executed, cause a processor to code coefficients associated with a block of video data during a video coding process, wherein the instructions cause the processor to:

determine contexts for performing context adaptive entropy coding of the x- and y-coordinates indicating a horizontal position and a vertical position, respectively, of a last non-zero coefficient within the block, wherein the contexts indicate a probability of each of the x- and y-coordinates comprising a given value when the coefficients of the block of video data are scanned in a first scanning order;

when the coefficients of the block of video data are scanned in the first scanning order, code the x-coordinate and the y-coordinate using the determined contexts such that the x-coordinate is coded based on the probability of the x-coordinate comprising a given value and the y-coordinate is coded based on the probability of the y-coordinate comprising a given value; and

interchange the x- and y-coordinates when the coefficients of the block of video data are scanned in the second scanning order and code the interchanged x-coordinate and the interchanged y-coordinate using the determined contexts such that the interchanged x-coordinate is coded based on the probability of the y-coordinate comprising a given value and the interchanged y-coordinate is coded based on the probability of the x-coordinate comprising a given value.

12. The computer-readable medium of claim 11 , wherein the first scanning order comprises a horizontal scanning order and the second scanning order comprises a vertical scanning order.

13. The computer-readable medium of claim 11 , wherein to entropy code the x- and y-coordinates and the interchanged x- and y-coordinates, the instructions cause the processor to code a sequence of one or more bins, wherein the contexts indicate probabilities of each of the bins having a given value.

14. The computer-readable medium of claim 11 , wherein the instructions further cause the processor to:

receive entropy encoded values indicative of the x-coordinate and y-coordinate in the video bitstream, wherein to entropy code the respective ones of the x- and y-coordinates or the interchanged x- and y-coordinates, the processor is configured to entropy decode the received entropy encoded values so as to obtain the respective ones of x- and y-coordinates or the interchanged x- and y-coordinates;

receive encoded values of non-zero coefficients associated with the block of video data in a bitstream; and

decode the encoded values of the non-zero coefficients based on the respective ones of the x- and y-coordinates and the interchanged x- and y-coordinates.

15. The computer-readable medium of claim 11 , wherein to entropy code the respective ones of the x- and y-coordinates or the interchanged x- and y-coordinates, the instructions cause the processor to entropy encode the respective ones of the x- and y-coordinates or the interchanged x- and y-coordinates so as to obtain the entropy encoded values indicative of the x-coordinate and y-coordinate and wherein the instructions further cause the processor:

decode values of non-zero coefficients associated with the block of video data based on the respective ones of the x- and y-coordinates and the interchanged x- and y-coordinates; and

output entropy encoded values indicative of the x-coordinate and y-coordinate and the encoded values of the non-zero coefficients in a video bitstream.

Assignments (6)
RELEASE OF SECURITY INTEREST Recorded Jul 26, 2022
From: CORTLAND CAPITAL MARKET SERVICES LLC
To: VELOS MEDIA, LLC AND VELOS MEDIA MANAGEMENT, LLC
Reel/Frame 060923/0407 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 23, 2021
From: VELOS MEDIA, LLC
To: QUALCOMM INCORPORATED
Reel/Frame 057575/0431 →
RELEASE OF SECURITY INTEREST Recorded Sep 21, 2021
From: CORTLAND CAPITAL MARKET SERVICES LLC
To: VELOS MEDIA, LLC AND VELOS MEDIA MANAGEMENT, LLC
Reel/Frame 057554/0540 →
SECOND AMENDED AND RESTATED MEMBER INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Apr 2, 2018
From: VELOS MEDIA MANAGEMENT, LLC; VELOS MEDIA, LLC
To: CORTLAND CAPITAL MARKET SERVICES LLC, AS COLLATERAL AGENT
Reel/Frame 045806/0030 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 2, 2017
From: QUALCOMM INCORPORATED
To: VELOS MEDIA, LLC
Reel/Frame 043173/0291 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 31, 2014
From: SOLE ROJALS, JOEL; COBAN, MUHAMMED ZEYD; ZHENG, YUNFEI; JOSHI, RAJAN LAXMAN; KARCZEWICZ, MARTA
To: QUALCOMM INCORPORATED
Reel/Frame 033439/0503 →