IP Library Granted Patent US 8,902,989
Granted Patent B2
US 8,902,989 · App. 11/412,668 · Granted Dec 2, 2014

Decoder system for decoding multi-standard encoded video

Inventor: Stephen Gordon (N. Andover, MA)
Assignee: Broadcom Corporation
H04N7/26946H04N7/26702H04N7/26069H04N7/26335H04N7/26207
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 8,902,989
App. No.
11/412,668
Granted
Dec 2, 2014
Kind
B2
Abstract

Presented herein are a decoder system for decoding multi-standard encoded video. In one embodiment, there is presented a system for decoding video data. The system comprises an outer loop symbol interpreter and an inner loop symbol interpreter. The outer loop symbol interpreter decodes VC-1 syntax and AVC syntax, at a slice or picture level. The inner loop symbol interpreter decodes VC-1 and AVC syntax at a macroblock level.

Claims (38)

1. A system for decoding video data, said system comprising:

a first symbol interpreter for decoding VC-1 syntax and AVC syntax, at a slice or picture level, the first symbol interpreter determining descriptor data including at least one of a picture type, a picture length, a picture width, a pointer to bit plane data, a pointer to a slice structure, or a length of slice data; and

a second symbol interpreter for decoding VC-1 and AVC syntax at a macroblock level in response to the descriptor data, the second symbol interpreter including a coefficient constructor for constructing coefficients from the VC-1 syntax at the macroblock level or a vector constructor for constructing vectors from the VC-1 syntax at the macroblock level.

2. The system of claim 1 , wherein the second symbol interpreter comprises:

a coefficient constructor for constructing coefficients from the VC-1 syntax at the macroblock level.

3. The system of claim 1 , wherein the second symbol interpreter comprises:

a vector constructor for constructing vectors from the VC-1 syntax at the macroblock level.

4. The system of claim 1 , wherein the second symbol interpreter comprises:

variable length code engine for decoding variable length codes.

5. The system of claim 1 , wherein the first symbol interpreter comprises an outer loop symbol interpreter.

6. The system of claim 1 , wherein the second symbol interpreter comprises an inner loop symbol interpreter.

7. A method for decoding video data, said method comprising:

decoding VC-1 syntax and MPEG-2 syntax, at a slice or picture level at first symbol interpreter in an outer loop, the decoding at a slice or picture level comprising determining descriptor data including at least one of a picture type, a picture length, a picture width, a pointer to bit plane data, a pointer to a slice structure, or a length of slice data;

decoding VC-1 at a macroblock level at a second symbol interpreter in an inner loop, wherein the decoding VC-1 syntax at the macroblock level comprises constructing coefficients from the VC-1 syntax or constructing vectors from the VC-1 syntax;

decoding MPEG-2 at the macroblock level at the second symbol interpreter in the inner loop.

8. The method of claim 7 , wherein decoding VC-1 syntax at the macroblock level comprises:

constructing coefficients from the VC-1 syntax at the macroblock level at a coefficient constructor.

9. The method of claim 7 , wherein the decoding VC-1 syntax at the macroblock level comprises:

constructing vectors from the VC-1 syntax at the macroblock level at a vector constructor.

10. The method of claim 7 , wherein the decoding VC-1 syntax at the macroblock level further comprises:

variable length code engine for decoding variable length codes.

11. A system for decoding video data, said system comprising:

a first symbol interpreter for decoding variable length coded symbols encoded in accordance with VC-1 syntax and variable length coded symbols encoded in accordance with AVC syntax at a slice or picture level, the first symbol interpreter determining descriptor data including at least one of a picture type, a picture length, a picture width, a pointer to bit plane data, a pointer to a slice structure, or a length of slice data; and

a second symbol interpreter for decoding variable length coded symbols encoded in accordance with VC-1 syntax and variable length coded symbols encoded in accordance with AVC syntax at a macroblock level, the second symbol interpreter including a coefficient constructor for constructing coefficients from the VC-1 syntax at the macroblock level or a vector constructor for constructing vectors from the VC-1 syntax at the macroblock level.

12. The system of claim 11 , wherein decoding variable length coded symbols encoded in accordance with VC-1 syntax and variable length coded symbols encoded in accordance with AVC syntax at a slice or picture level comprises decoding picture header syntax elements.

13. The system of claim 11 , wherein the decoding variable length coded symbols encoded in accordance with AVC syntax at a macroblock level comprises decoding CABAC coded symbols.

14. The system of claim 12 , wherein the first symbol interpreter provides decoded picture header syntax elements to the second symbol interpreter, wherein the second symbol interpreter uses the picture header syntax elements to decode the variable length coded symbols encoded in accordance with VC-1 syntax and the variable length coded symbols encoded in accordance with AVC syntax at a macroblock level.

15. The system of claim 11 , wherein the second symbol interpreter comprises:

a vector constructor for constructing vectors from the VC-1 syntax at the macroblock level.

16. The system of claim 11 , wherein the second symbol interpreter comprises:

variable length code engine for decoding variable length codes.

17. The system of claim 1 , wherein the first symbol interpreter provides decoded picture header syntax elements to the second symbol interpreter, wherein the second symbol interpreter uses the picture header syntax elements to decode the variable length coded symbols encoded in accordance with VC-1 syntax and the variable length coded symbols encoded in accordance with AVC syntax at a macroblock level.

18. The method of claim 7 , further comprising:

providing decoded picture header syntax elements from the first symbol interpreter to the second symbol interpreter, wherein the second symbol interpreter uses the picture header syntax elements to decode the variable length coded symbols encoded in accordance with VC-1 syntax and the variable length coded symbols encoded in accordance with AVC syntax at a macroblock level.

19. The system of claim 1 , further comprising:

a slice descriptor buffer, the first symbol interpreter filling the slice descriptor buffer and the second symbol interpreter consuming the slice descriptor buffer prior to decoding macroblocks in the slice.

20. The method of claim 7 , further comprising:

filling a slice descriptor buffer of a slice in the outer loop and the consuming the slice descriptor buffer prior to decoding macroblocks of the slice in the inner loop.

Assignments (7)
CORRECTIVE ASSIGNMENT TO CORRECT THE EXECUTION DATE OF THE MERGER PREVIOUSLY RECORDED ON REEL 047642 FRAME 0417. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT, Recorded Mar 6, 2019
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 048521/0395 →
MERGER Recorded Oct 5, 2018
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 047642/0417 →
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 Feb 25, 2009
From: BROADCOM ADVANCED COMPRESSION GROUP, LLC
To: BROADCOM CORPORATION
Reel/Frame 022299/0916 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 27, 2006
From: GORDON, STEPHEN
To: BROADCOM CORPORATION
Reel/Frame 017852/0661 →
Continuity (2)
Provisional Application 60675144 · Apr 27, 2005
Related Publication 20060248516A1 · Nov 2, 2006