IP Library › Granted Patent US 9,426,498
Granted Patent B2
US 9,426,498 · App. 13/545,242 · Granted Aug 23, 2016

Real-time encoding system of multiple spatially scaled video based on shared video coding information

Inventor: Lei Zhang (Palo Alto, CA)
Assignee: BROADCOM CORPORATION
H04N21/2343H04N19/33H04N19/513H04N19/56H04N21/23439H04N21/234363
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,426,498
App. No.
13/545,242
Granted
Aug 23, 2016
Kind
B2
Abstract

In one embodiment, a method comprising receiving at a single encoding engine an input video stream having one or more pictures of a first size; and generating by the single encoding engine, in parallel, plural encoded streams, a first of the encoded streams comprising one or more pictures of the first size and a second of the encoded streams comprising one or more pictures of a second size that is smaller than the first size, the encoding of the second stream based on sharing video coding information used in encoding the first encoded stream.

Claims (30)

1. A method, comprising:

receiving at a single encoding engine an input video stream having one or more pictures of a first resolution; and

generating by the single encoding engine, in parallel, plural encoded streams, a first of the encoded streams comprising one or more pictures of the first resolution and a second of the encoded streams comprising one or more pictures of a second resolution that is smaller than the first resolution, the encoding of the second stream based on sharing video coding information used in encoding the first encoded stream, wherein a plurality of first blocks of the first encoded stream are downscaled by a scaling factor to derive a plurality of second blocks of the second encoded stream;

mapping a plurality of first motion vectors of the first blocks to a plurality of second motion vectors of the second blocks, the second motion vectors each corresponding to one of the first motion vectors adjusted by the scaling factor; and

partitioning at least one of a macroblock or a coding unit of the second encoded stream into one or more partitions, the at least one of the macroblock or the coding unit comprising a plurality of the second blocks, the at least one of the macroblock or the coding unit partitioned by:

identifying a plurality of neighboring second blocks within the at least one of the macroblock or the coding unit having equal second motion vectors; and

combining the neighboring second blocks having the equal second motion vectors within a partition of the one or more partitions.

2. The method of claim 1 , wherein the video coding information comprises motion vector search results used for inter prediction.

3. The method of claim 2 , wherein the motion vector search results comprise motion vectors, partitions of one coding unit, motion vector search range, or any combination thereof.

4. The method of claim 2 , wherein a motion vector search is performed for the first encoded stream and the resulting motion vectors and associated coding unit partitions are used for the generating of the second encoded stream without performing a motion vector search function for the second encoded stream.

5. The method of claim 2 , wherein a vertical and horizontal dimension of each of the first are downscaled by the scaling factor to derive the second blocks of the second encoded stream.

6. The method of claim 1 , further comprising merging the mapped motion vectors in response to a non-compliant block size to form a compliant block size.

7. The method of claim 6 , further comprising determining a partitioning of each macroblock or coding unit containing the compliant mapped blocks based on neighboring mapped motion vectors.

8. The method of claim 1 , further comprising averaging, or applying a median operation to, the mapped motion vectors when the boundary of each macroblock corresponding to the downscaled encoded stream is not aligned with that in the input video stream.

9. The method of claim 1 , wherein encoding the second stream based on sharing video coding information further comprises encoding the second stream based on the selection between inter prediction and intra prediction applied when encoding the first stream.

10. The method of claim 1 , wherein the video coding information comprises motion vector search results, an intra prediction mode used for intra prediction, a selection between inter prediction and intra prediction for a coding unit, or any combination thereof.

11. The method of claim 10 , further comprising generating one or more additional encoded stream in parallel with generating the first and second encoded streams, the generating based on the shared video coding information.

12. The method of claim 1 , wherein the generating occurs in real-time.

13. The method of claim 1 , further comprising processing some coding functions of the first and second encoded streams independently of each other.

14. The method of claim 1 , wherein the first encoded stream is generated according to a different video coding standard than the second encoded stream.

15. The method of claim 1 , wherein the first encoded stream comprises an enhanced layer stream and the second encoded stream comprises a base layer stream.

16. A system comprising:

a single encoding engine configured to:

receive an input video stream having one or more pictures of a first resolution;

generate in parallel plural encoded streams, the a first encoded stream of the encoded streams comprising one or more pictures of the first resolution and a second of the encoded streams comprising one or more pictures of a second resolution that is smaller than the first resolution, the encoding of the second stream based on sharing video coding information used in encoding the first encoded stream

map a plurality of first motion vectors of the first blocks to a plurality of second motion vectors of the second blocks, the second motion vectors each corresponding to one of the first motion vectors adjusted by the scaling factor; and

partition at least one of a macroblock or a coding unit of the second encoded stream into one or more partitions, the at least one of the macroblock or the coding unit comprising a plurality of the second blocks, the single encoding engine configured to partition at least one of the macroblock or the coding unit by:

identifying a plurality of neighboring second blocks within the at least one of the macroblock or the coding unit having a same second motion vector; and

combining the neighboring second blocks having the same second motion vector within a partition of the one or more partitions.

17. The system of claim 16 , wherein the video coding information comprises motion vector search results, an intra prediction mode used for intra prediction, a selection between inter prediction and intra prediction for a coding unit, or any combination thereof.

Assignments (7)
CORRECTIVE ASSIGNMENT TO CORRECT THE PATENT NUMBER 9,385,856 TO 9,385,756 PREVIOUSLY RECORDED AT REEL: 47349 FRAME: 001. ASSIGNOR(S) HEREBY CONFIRMS THE MERGER. Recorded Mar 22, 2019
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 051144/0648 →
CORRECTIVE ASSIGNMENT TO CORRECT THE EFFECTIVE DATE PREVIOUSLY RECORDED ON REEL 047229 FRAME 0408. ASSIGNOR(S) HEREBY CONFIRMS THE THE EFFECTIVE DATE IS 09/05/2018. Recorded Oct 29, 2018
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 047349/0001 →
MERGER Recorded Oct 4, 2018
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 047229/0408 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Feb 3, 2017
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: BROADCOM CORPORATION
Reel/Frame 041712/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 1, 2017
From: BROADCOM CORPORATION
To: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
Reel/Frame 041706/0001 →
PATENT SECURITY AGREEMENT Recorded Feb 11, 2016
From: BROADCOM CORPORATION
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 037806/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 3, 2012
From: ZHANG, LEI
To: BROADCOM CORPORATION
Reel/Frame 028715/0301 →
Continuity (1)
Related Publication 20140015922A1 · Jan 16, 2014