IP Library Granted Patent US 11,064,214
Granted Patent B2
US 11,064,214 · App. 16/860,506 · Granted Jul 13, 2021

System and methodology for video compression

Inventors: Ashish Banerji (Gaithersburg, MD); Kumar Swaminathan (North Potomac, MD)
Assignee: The DIRECTV Group, Inc.
H04N19/517H04N19/46H04N19/61
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 11,064,214
App. No.
16/860,506
Granted
Jul 13, 2021
Kind
B2
Abstract

A system and method for compressing video is disclosed, in which video frames that are only between consecutive I-frames are grouped into a video data set. The video data set is split into separate homogeneous files, and each of the homogeneous files are individually compressed. In one embodiment, the individually compressed files are multiplexed to form a bit stream.

Claims (47)

1. A method, comprising:

splitting, by a processing system including a processor, a video data set into a plurality of files, wherein the splitting comprises storing horizontal components of the video data set and vertical components of the video data set in first separate files of the plurality of files, storing mode information of the video data set and motion components in second separate files of the plurality of files, storing B-frame components of the video data set and P-frame components of the video data set in third separate files of the plurality of files, and storing mode 3 B-frame components of the video data set and mode 0, 1, and 2 B-frame components of the video data set in fourth separate files of the plurality of files;

compressing, by the processing system, each of the plurality of files to create a plurality of compressed files, the compressed files having varying sizes with an upper bound; and

prefixing, by the processing system, each of the plurality of compressed files with a header indicating a file size of that compressed file and having a header size sufficient to represent the upper bound.

2. The method of claim 1 , further comprising generating, by the processing system, an auxiliary file containing auxiliary information for interpreting the plurality of compressed files.

3. The method of claim 2 , wherein the auxiliary information comprises a frame width, a frame height, the header size, quantization parameters, or a combination thereof.

4. The method of claim 1 , wherein the first separate files comprise transformation coefficients, the second separate files comprise motion vectors, and the third separate files comprise enhancement data.

5. The method of claim 4 , further comprising:

using, by the processing system, the transformation coefficients to create a reconstructed video frame of the video data set;

adding, by the processing system, the reconstructed video frame to a buffered frame;

generating, by the processing system and from the buffered frame and the motion vectors, a predicted frame; and

applying, by the processing system, the predicted frame against a next frame of the video data set.

6. The method of claim 1 , wherein the compressing further comprises applying a grammar-based code.

7. The method of claim 6 , wherein the applying further comprises employing a YK algorithm.

8. The method of claim 1 , wherein the compressing further comprises bit plane encoding quantized transform coefficients obtained from the video data set.

9. The method of claim 8 , wherein the compressing further comprises performing a run length encoding of bit planed encoded coefficients.

10. A device comprising:

a processing system including a processor; and

a memory that stores executable instructions that, when executed by the processing system, facilitate performance of operations, the operations comprising:

grouping video frames that are between consecutive I-frames into a video data set, the video data set not including an I-frame;

splitting the video data set into a plurality of files, wherein the splitting comprises storing horizontal components of the video data set and vertical components of the video data set in first separate files of the plurality of files, storing mode information of the video data set and motion components in second separate files of the plurality of files, storing B-frame components of the video data set and P-frame components of the video data set in third separate files of the plurality of files, and storing mode 3 B-frame components of the video data set and mode 0, 1, and 2 B-frame components of the video data set in fourth separate files of the plurality of files;

individually compressing each of the plurality of files to create a plurality of compressed files, the compressed files having varying sizes with an upper bound; and

prefixing each of the plurality of compressed files with a header indicating a file size of that compressed file and having a header size sufficient to represent the upper bound.

11. The device of claim 10 , wherein the operations further comprise generating an auxiliary file containing auxiliary information for interpreting the plurality of compressed files, wherein the auxiliary information comprises a frame width, a frame height, the header size, quantization parameters, or a combination thereof.

12. The device of claim 10 , wherein the operations further comprise:

using transformation coefficients to create a reconstructed video frame of the video data set;

adding the reconstructed video frame to a buffered frame;

generating, from the buffered frame and motion vectors, a predicted frame; and

applying the predicted frame against a next frame of the video data set.

13. The device of claim 10 , wherein the compressing further comprises applying a grammar-based code.

14. The device of claim 10 , wherein the compressing further comprises bit plane encoding quantized transform coefficients obtained from the video data set.

15. A non-transitory, machine-readable medium comprising executable instructions that, when executed by a processing system including a processor, facilitate performance of operations, the operations comprising:

grouping video frames that are between consecutive I-frames into a video data set, the video data set not including an I-frame;

splitting the video data set into a plurality of files, wherein the splitting comprises storing horizontal components of the video data set and vertical components of the video data set in first separate files, storing mode information of the video data set and motion components in second separate files, storing B-frame components of the video data set and P-frame components of the video data set in third separate files, and storing mode 3 B-frame components of the video data set and mode 0, 1, and 2 B-frame components of the video data set in fourth separate files;

individually compressing each of the plurality of files to create a plurality of compressed files, the compressed files having varying sizes with an upper bound; and

concatenating each compressed file of the plurality of compressed files to produce a bit stream, wherein each compressed file of the plurality of compressed files is prefixed with a header indicating a file size of the compressed file and having a header size sufficient to represent the upper bound.

16. The non-transitory, machine-readable medium of claim 15 , wherein the operations further comprise:

generating, by the processing system, an auxiliary file containing auxiliary information for interpreting the compressed files in the bit stream.

17. The non-transitory, machine-readable medium of claim 16 , wherein the auxiliary information comprises a frame width, a frame height, the header size, quantization parameters, or a combination thereof.

18. The non-transitory, machine-readable medium of claim 15 , wherein the operations further comprise:

using transformation coefficients to create a reconstructed video frame of the video data set;

adding the reconstructed video frame to a buffered frame;

generating, from the buffered frame and motion vectors, a predicted frame; and

applying the predicted frame against a next frame of the video data set.

19. The non-transitory, machine-readable medium of claim 15 , wherein the compressing further comprises applying a grammar-based code.

20. The non-transitory, machine-readable medium of claim 15 , storing enhancement data in fifth separate files, and wherein the operations further comprise:

generating an auxiliary file containing auxiliary information for interpreting the plurality of compressed files in the bit stream.

Assignments (7)
SUCCESSION OF AGENCY IN PATENT SECURITY INTERESTS Recorded Oct 3, 2025
From: UBS AG, STAMFORD BRANCH (AS SUCCESSOR TO CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH)
To: UBS AG, STAMFORD BRANCH
Reel/Frame 072994/0001 →
SECURITY AGREEMENT Recorded Aug 5, 2021
From: DIRECTV, LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A. AS COLLATERAL AGENT
Reel/Frame 058220/0531 →
SECURITY AGREEMENT Recorded Aug 3, 2021
From: DIRECTV, LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 057695/0084 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 29, 2021
From: THE DIRECTV GROUP, INC.
To: DIRECTV, LLC
Reel/Frame 057019/0852 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 28, 2020
From: BANERJI, ASHISH
To: HUGHES ELECTRONICS CORPORATION
Reel/Frame 052776/0522 →
CHANGE OF NAME Recorded May 28, 2020
From: HUGHES ELECTRONICS CORPORATION
To: THE DIRECTV GROUP, INC.
Reel/Frame 052776/0537 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 28, 2020
From: SWAMINATHAN, KUMAR
To: HUGHES ELECTRONICS CORPORATION
Reel/Frame 052778/0423 →
Continuity (4)
Continuation 15866626 · Jan 10, 2018
Continuation 10174765 · Feb 12, 2002
Provisional Application 60304135 · Jul 10, 2001
Related Publication 20200260103A1 · Aug 13, 2020
Cited By (1)
US 12,608,939