IP Library Granted Patent US 9,510,008
Granted Patent B2
US 9,510,008 · App. 14/175,774 · Granted Nov 29, 2016

Video decoder memory bandwidth compression

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,510,008
App. No.
14/175,774
Granted
Nov 29, 2016
Kind
B2
Abstract

A method, system and computer program for decompressing video data, storing the compressed video data in such a way that random access is possible and the data can be mapped efficiently into existing memory systems and interface protocols. The compression is accomplished via lossless compression using an algorithm optimized for video data. Due to the compressed format, data transmission consumes less bandwidth than using uncompressed data and prevents degradation in the decoded video.

Claims (32)

1. A method of compressing and decompressing digital video, the method comprising the steps of:

a) dividing a video image into a two dimensional block structure;

b) determining a surface map according to a difference between a mean of data values within the two dimensional block and a mean of data values within a plurality of sub blocks within the two dimensional block;

c) applying a best fit, weight to the surface map to minimize differences;

d) generating a plurality of variable length code (VLC) codes representing a plurality of encoding levels, a weight, a surface map, and a plurality of error terms for each level of mapping; and

e) collecting VLC terms into a linear group of data.

2. The method of claim 1 , wherein the method comprises iteratively processing error terms for additional surface mapping and for the reduction of bit encoding.

3. The method of claim 1 , wherein the method comprises randomly accessing the linear group of data from a buffer.

4. The method of claim 1 , wherein the method comprises fetching a first part of the linear group of data in a read operation and fetching a second part of the linear group of data if it is present.

5. The method of claim 1 , wherein the method comprises indicating whether the linear group of data is compressed.

6. A system for compressing and decompressing digital video, the system comprising:

a processor; and

a memory storing instructions which when executed cause the processor to:

divide a video image into a two dimensional block structure;

determine a surface map according to a difference between a mean of data values within the two dimensional block and a mean of data values within a plurality of sub blocks within the two dimensional block;

apply a best fit weight to the surface map to minimize differences;

generate variable length code (VLC) codes representing a plurality of encoding levels, a weight, a surface map, and a plurality of error terms for each level of mapping; and

collect VLC terms into a linear group of data.

7. The system of claim 6 , wherein the processor is operable to process resulting error terms for additional surface mapping and reduce bit encoding.

8. The system of claim 6 , wherein the processor is operable to randomly access the linear group of data.

9. The system of claim 6 , wherein the processor is operable to fetch a first part of the linear group of data in a read operation and fetch a second part of the linear group of data if it is present.

10. The system of claim 6 , wherein the processor is operable to indicate whether the linear group of data is compressed.

11. A non-transitory computer-executable storage medium comprising program instructions which are computer-executable to implement compressing and decompressing digital video comprising:

program instructions that cause a division of a video image into a two dimensional block structure;

program instructions that cause a determination of a surface map according to a difference between a mean of data values within the two dimensional block and a mean of data values within a plurality of sub blocks within the two dimensional block;

program instructions that cause an application of a best fit weight to the surface map to minimize differences;

program instructions that cause a generation of a plurality of variable length code (VLC) codes representing a plurality of encoding levels, a weight, a surface map, and a plurality of error terms for each level of mapping; and

program instructions that cause a collection of VLC terms into a linear group of data.

12. The non-transitory computer-executable storage medium of claim 11 , wherein the non-transitory computer-executable storage medium comprises program instructions that cause an iteration of processing error terms for additional surface mapping and for the reduction of bit encoding.

13. The non-transitory computer-executable storage medium of claim 11 , wherein the non-transitory computer-executable storage medium comprises program instructions that cause a random access of the linear group of data from a buffer.

14. The non-transitory computer-executable storage medium of claim 11 , wherein the non-transitory computer-executable storage medium comprises program instructions that cause fetching a first part of the linear group of data in a read operation and fetching a second part of the linear group of data if it is present.

15. The non-transitory computer-executable storage medium of claim 11 , wherein the non-transitory computer-executable storage medium comprises program instructions that cause an indicator of whether the linear group of data is compressed.

Assignments (7)
SECURITY AGREEMENT Recorded Jul 9, 2021
From: MAXLINEAR, INC.; MAXLINEAR COMMUNICATIONS, LLC; EXAR CORPORATION
To: WELLS FARGO BANK, NATIONAL ASSOCIATION
Reel/Frame 056816/0089 →
RELEASE OF SECURITY INTEREST Recorded Jun 23, 2021
From: MUFG UNION BANK, N.A.
To: MAXLINEAR, INC.; EXAR CORPORATION; MAXLINEAR COMMUNICATIONS LLC
Reel/Frame 056656/0204 →
SUCCESSION OF AGENCY (REEL 042453 / FRAME 0001) Recorded Jul 1, 2020
From: JPMORGAN CHASE BANK, N.A.
To: MUFG UNION BANK, N.A.
Reel/Frame 053115/0842 →
SECURITY AGREEMENT Recorded May 12, 2017
From: MAXLINEAR, INC.; ENTROPIC COMMUNICATIONS, LLC (F/K/A ENTROPIC COMMUNICATIONS, INC.); EXAR CORPORATION
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 042453/0001 →
MERGER AND CHANGE OF NAME Recorded May 18, 2015
From: ENTROPIC COMMUNICATIONS, INC.; EXCALIBUR SUBSIDIARY, LLC; ENTROPIC COMMUNICATIONS, LLC
To: ENTROPIC COMMUNICATIONS, LLC
Reel/Frame 035706/0188 →
MERGER AND CHANGE OF NAME Recorded May 15, 2015
From: EXCALIBUR ACQUISITION CORPORATION; ENTROPIC COMMUNICATIONS, INC.; ENTROPIC COMMUNICATIONS, INC.
To: ENTROPIC COMMUNICATIONS, INC.
Reel/Frame 035704/0504 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 20, 2014
From: BATES, MATTHEW DAMIAN; BAUR, MARK ALAN
To: ENTROPIC COMMUNICATIONS INC.
Reel/Frame 032483/0705 →