IP Library Granted Patent US 9,774,848
Granted Patent B2
US 9,774,848 · App. 13/099,693 · Granted Sep 26, 2017

Efficient compression and transport of video over a network

Inventors: Nikil Jayant (Alpharetta, GA); Joe Monaco (Atlanta, GA); Yucel Altunbasak (Norcross, GA); John Hartung (Mableton, GA); Santhana Krishnamachari (Smyrna, GA); Sam John (Atlanta, GA); Cham Ith (Atlanta, GA); Martin Sauser (Atlanta, GA); Chris Elliott (Smyrna, GA); James Pawlyk (Maplewood, NJ)
Assignee: ARRIS Enterprises LLC
H04N19/00H04N19/103H04N19/124H04N19/126H04N19/137H04N19/139H04N19/14H04N19/142H04N19/147H04N19/149H04N19/15H04N19/152H04N19/154H04N19/172H04N19/176H04N19/177H04N19/179H04N19/19H04N19/194H04N19/196H04N19/197H04N19/46H04N19/517H04N19/52H04N19/53H04N19/567H04N19/61H04N19/80H04N19/85H04N19/87
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,774,848
App. No.
13/099,693
Filed
May 3, 2011
Granted
Sep 26, 2017
Kind
B2
Art Unit
2489
USPC
375/240.05
Abstract

The disclosed invention is a enhancement to the Video Encoder component of the MPEG standard to improve both the efficiency and quality of the video presentation at the display device. The inventions described below pertain to the enhancement of video compression technology. In general, they are compatible with MPEG video standards (as in current art), but represent novel enhancements thereof. The above inventions apply to several transmission media and networks including cable, DSL, wireless, satellite and IP networks. Another category of invention in this disclosure enhances networking performance by recognizing that the transmitted information is video, rather than data. This invention can be scaled to other classes of multimedia data such as speech or audio or images.

Claims (58)

1. A method for allocating bits among portions of a frame in a video encoding implementation, said allocation intended to attain a constant bit rate per frame, said method comprising:

in a processor coupled to a memory, determining a particular class of visual sensitivity for a portion of the frame among a plurality of visual sensitivity classes;

in the processor, determining a number of bits associated with the particular class; and

in the processor, establishing a number of bits to be transmitted for the portion based on the number of bits associated with the particular class, wherein a sum over the plurality of classes of a product of the number of bits associated with each class and the probability that the portion belongs to the class is substantively equal to the constant bit rate.

2. A method for adaptive bit allocation, comprising:

in a processor coupled to a memory, repeatedly and dynamically determining a plurality of parameters associated with a frame of a video stream, the plurality of parameters comprising at least a particular class of visual sensitivity for a portion of the frame among a plurality of visual sensitivity classes; and

in the processor, establishing a number of bits to be transmitted for the frame of the video stream based on the determined plurality of parameters, including at least the particular class of visual sensitivity for a portion of the frame;

wherein determining a plurality of parameters associated with a frame comprises:

determining a first number of bits for a frame to achieve a target bit rate according to a first procedure that produces values for a number of header bits, a number of coded zeros and a number of DCT bits; and

determining a second number of bits for the frame, wherein the determination is based on an actual number of coded zeros for the frame to match the number of DCT bits.

3. The method of claim 2 , wherein allocating a bit to the frame based on the determined parameter comprises allocating the second number of bits to the frame.

4. A method for adaptive bit allocation, comprising:

in a processor coupled to a memory, repeatedly and dynamically determining a plurality of parameters associated with a frame of a video stream, the plurality of parameters comprising at least a particular class of visual sensitivity for a portion of the frame among a plurality of visual sensitivity classes; and

in the processor, establishing a number of bits to be transmitted for the frame of the video stream based on the determined plurality of parameters, including at least the particular class of visual sensitivity for a portion of the frame;

wherein determining a plurality of parameters associated with a frame comprises:

determining a relationship that relates a variance in a frame to a number of bits for the frame for each type of frame among an I-frame type, P-frame-type and B-frame type in the group of pictures;

determining a variance corresponding to each type of frame in the group of pictures; and

determining a number of bits for each type of frame based at least in part on the relationship and the variance of each type of frame and the number of frames of each type of frame.

5. The method of claim 4 , wherein allocating a bit to the frame based on the determined parameter comprises allocating the number of bits determined for each type of frame.

6. A method for adaptive bit allocation, comprising:

in a processor coupled to a memory, repeatedly and dynamically determining a plurality of parameters associated with a frame of a video stream, the plurality of parameters comprising at least a particular class of visual sensitivity for a portion of the frame among a plurality of visual sensitivity classes,

wherein determining a plurality of parameters associated with a frame comprises determining whether a macroblock within the frame is associated with motion faster than a threshold speed for tracking by a human observer; and

in the processor, establishing a number of bits to be transmitted for the frame of the video stream based on the determined plurality of parameters, including at least the particular class of visual sensitivity for a portion of the frame,

wherein, establishing a number of bits to be transmitted for the frame based on the determined parameter comprises using fewer bits to represent Discrete Cosine Transform amplitudes for blocks in the macroblock, wherein fewer bits are used if the determination indicates that the macroblock is associated motion faster than the threshold speed.

7. A method for adaptive bit allocation, comprising:

in a processor coupled to a memory, repeatedly and dynamically determining a plurality of parameters associated with a frame of a video stream, the plurality of parameters comprising at least a particular class of visual sensitivity for a portion of the frame among a plurality of visual sensitivity classes; and

in the processor, allocating a bit of the memory to the frame of the video stream based on the determined plurality of parameters, including at least the particular class of visual sensitivity for a portion of the frame;

wherein determining a plurality of parameters associated with a frame comprises:

determining a particular class of visual sensitivity for a portion of the frame among a plurality of visual sensitivity classes, and

determining a number of bits associated with the particular class; and

wherein allocating a bit to the frame based on the determined parameter comprises allocating a number of bits for the portion based on the number of bits associated with the particular class, wherein a sum over the plurality of classes of a product of the number of bits associated with each class and the probability that the portion belongs to the class is substantively equal to the constant bit rate.

8. A system for adaptive bit allocation, comprising:

a memory; and

a processor coupled to the memory and being operable to determine a parameter associated with a frame and allocating a bit to the frame based on the determined parameter, the parameter comprising at least a particular class of visual sensitivity for a portion of the frame among a plurality of visual sensitivity classes;

wherein determining a parameter associated with a frame comprises:

determining a first number of bits for a frame to achieve a target bit rate according to a first procedure that produces values for a number of header bits, a number of coded zeros and a number of DCT bits; and

determining a second number of bits for the frame, wherein the determination is based on an actual number of coded zeros for the frame to match the number of DCT bits.

9. The system of claim 8 , wherein allocating a bit to the frame based on the determined parameter comprises allocating the second number of bits to the frame.

10. A system for adaptive bit allocation, comprising:

a memory; and

a processor coupled to the memory and being operable to determine a parameter associated with a frame and allocating a bit to the frame based on the determined parameter, the parameter comprising at least a particular class of visual sensitivity for a portion of the frame among a plurality of visual sensitivity classes;

wherein determining a parameter associated with a frame comprises:

determining a relationship that relates a variance in a frame to a number of bits for the frame for each type of frame among an I-frame type, P-frame-type and B-frame type in the group of pictures;

determining a variance corresponding to each type of frame in the group of pictures; and

determining a number of bits for each type of frame based at least in part on the relationship and the variance of each type of frame and the number of frames of each type of frame.

11. The system of claim 10 , wherein allocating a bit to the frame based on the determined parameter comprises allocating the number of bits determined for each type of frame.

12. A system for adaptive bit allocation, comprising:

a memory; and

a processor coupled to the memory and being operable to determine a parameter associated with a frame and allocating a bit to the frame based on the determined parameter, the parameter comprising at least a particular class of visual sensitivity for a portion of the frame among a plurality of visual sensitivity classes;

wherein determining a parameter associated with a frame comprises determining whether a macroblock within the frame is associated with motion faster than a threshold speed for tracking by a human observer; and

wherein allocating a bit to the frame based on the determined parameter comprises using fewer bits to represent Discrete Cosine Transform amplitudes for blocks in the macroblock, wherein fewer bits are used if the determination indicates that the macroblock is associated motion faster than the threshold speed.

13. A system for adaptive bit allocation, comprising:

a memory; and

a processor coupled to the memory and being operable to determine a parameter associated with a frame and allocating a bit to the frame based on the determined parameter, the parameter comprising at least a particular class of visual sensitivity for a portion of the frame among a plurality of visual sensitivity classes;

wherein determining a parameter associated with a frame comprises:

determining a particular class of visual sensitivity for a portion of the frame among a plurality of visual sensitivity classes; and

determining a number of bits associated with the particular class.

14. The system of claim 13 , wherein allocating a bit to the frame based on the determined parameter comprises allocating a number of bits for the portion based on the number of bits associated with the particular class, wherein a sum over the plurality of classes of a product of the number of bits associated with each class and the probability that the portion belongs to the class is substantively equal to the constant bit rate.

Assignments (11)
RELEASE OF SECURITY INTEREST AT REEL/FRAME 049905/0504 Recorded Dec 19, 2024
From: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
To: ARRIS ENTERPRISES LLC (F/K/A ARRIS ENTERPRISES, INC.); ARRIS TECHNOLOGY, INC.; ARRIS SOLUTIONS, INC.; COMMSCOPE, INC. OF NORTH CAROLINA; COMMSCOPE TECHNOLOGIES LLC; RUCKUS WIRELESS, LLC (F/K/A RUCKUS WIRELESS, INC.)
Reel/Frame 071477/0255 →
SECURITY INTEREST Recorded Dec 17, 2024
From: ARRIS ENTERPRISES LLC; COMMSCOPE TECHNOLOGIES LLC; COMMSCOPE INC., OF NORTH CAROLINA; OUTDOOR WIRELESS NETWORKS LLC; RUCKUS IP HOLDINGS LLC
To: APOLLO ADMINISTRATIVE AGENCY LLC
Reel/Frame 069889/0114 →
SECURITY INTEREST Recorded Nov 19, 2021
From: ARRIS SOLUTIONS, INC.; ARRIS ENTERPRISES LLC; COMMSCOPE TECHNOLOGIES LLC; COMMSCOPE, INC. OF NORTH CAROLINA; RUCKUS WIRELESS, INC.
To: WILMINGTON TRUST
Reel/Frame 060752/0001 →
TERM LOAN SECURITY AGREEMENT Recorded Jul 3, 2019
From: COMMSCOPE, INC. OF NORTH CAROLINA; COMMSCOPE TECHNOLOGIES LLC; ARRIS ENTERPRISES LLC; ARRIS TECHNOLOGY, INC.; RUCKUS WIRELESS, INC.; ARRIS SOLUTIONS, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 049905/0504 →
PATENT SECURITY AGREEMENT Recorded Jul 3, 2019
From: ARRIS ENTERPRISES LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 049820/0495 →
ABL SECURITY AGREEMENT Recorded Jul 3, 2019
From: COMMSCOPE, INC. OF NORTH CAROLINA; COMMSCOPE TECHNOLOGIES LLC; ARRIS ENTERPRISES LLC; ARRIS TECHNOLOGY, INC.; RUCKUS WIRELESS, INC.; ARRIS SOLUTIONS, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 049892/0396 →
CHANGE OF NAME Recorded Jun 25, 2019
From: ARRIS ENTERPRISES, INC.
To: ARRIS ENTERPRISES LLC
Reel/Frame 049586/0470 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Apr 8, 2019
From: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
To: ARRIS GROUP, INC.; ARRIS ENTERPRISES, INC.; ARRIS SOLUTIONS, INC.; ARRIS KOREA, INC.; ARRIS HOLDINGS CORP. OF ILLINOIS, INC.; BIG BAND NETWORKS, INC.; TEXSCAN CORPORATION; POWER GUARD, INC.; 4HOME, INC.; ACADIA AIC, INC.; AEROCAST, INC.; BROADBUS TECHNOLOGIES, INC.; GENERAL INSTRUMENT CORPORATION; GENERAL INSTRUMENT AUTHORIZATION SERVICES, INC.; GENERAL INSTRUMENT INTERNATIONAL HOLDINGS, INC.; IMEDIA CORPORATION; JERROLD DC RADIO, INC.; LEAPSTONE SYSTEMS, INC.; MODULUS VIDEO, INC.; MOTOROLA WIRELINE NETWORKS, INC.; NETOPIA, INC.; NEXTLEVEL SYSTEMS (PUERTO RICO), INC.; QUANTUM BRIDGE COMMUNICATIONS, INC.; SETJAM, INC.; SUNUP DESIGN SYSTEMS, INC.; UCENTRIC SYSTEMS, INC.; GIC INTERNATIONAL HOLDCO LLC; GIC INTERNATIONAL CAPITAL LLC; CCE SOFTWARE LLC; THE GI REALTY TRUST 1996
Reel/Frame 048825/0294 →
CHANGE OF NAME Recorded Mar 14, 2017
From: ARRIS ENTERPRISES INC
To: ARRIS ENTERPRISES LLC
Reel/Frame 041995/0031 →
SECURITY AGREEMENT Recorded May 28, 2013
From: ARRIS GROUP, INC.; ARRIS ENTERPRISES, INC.; ARRIS SOLUTIONS, INC.; ARRIS KOREA, INC.; ARRIS HOLDINGS CORP. OF ILLINOIS; BIGBAND NETWORKS, INC.; TEXSCAN CORPORATION; POWER GUARD, INC.; 4HOME, INC.; ACADIA AIC, INC.; AEROCAST, INC.; BROADBUS TECHNOLOGIES, INC.; GENERAL INSTRUMENT CORPORATION; GENERAL INSTRUMENT AUTHORIZATION SERVICES, INC.; GENERAL INSTRUMENT INTERNATIONAL HOLDINGS, INC.; IMEDIA CORPORATION; JERROLD DC RADIO, INC.; LEAPSTONE SYSTEMS, INC.; MODULUS VIDEO, INC.; MOTOROLA WIRELINE NETWORKS, INC.; NETOPIA, INC.; NEXTLEVEL SYSTEMS (PUERTO RICO), INC.; QUANTUM BRIDGE COMMUNICATIONS, INC.; SETJAM, INC.; SUNUP DESIGN SYSTEMS, INC.; UCENTRIC SYSTEMS, INC.; GIC INTERNATIONAL HOLDCO LLC; GIC INTERNATIONAL CAPITAL LLC; CCE SOFTWARE LLC; THE GI REALTY TRUST 1996
To: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 030498/0023 →
MERGER Recorded Apr 16, 2013
From: ARRIS GROUP, INC.
To: ARRIS ENTERPRISES, INC.
Reel/Frame 030228/0406 →
Continuity (5)
Division 10609539 · Jul 1, 2003
Provisional Application 60392605 · Jul 1, 2002
Provisional Application 60458956 · Apr 1, 2003
Provisional Application 60458958 · Apr 1, 2003
Related Publication 20110292996A1 · Dec 1, 2011