IP Library Granted Patent US 9,014,275
Granted Patent B2
US 9,014,275 · App. 13/401,824 · Granted Apr 21, 2015

Method and apparatus for multi-threaded video decoding

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,014,275
App. No.
13/401,824
Granted
Apr 21, 2015
Kind
B2
Abstract

A method and an apparatus for performing multi-threaded video decoding are disclosed. The method takes use of a multi-threaded scheme to process an encoded picture stream on a picture by picture basis. In the method, multiple threads are used for performing video decoding at the same time, such as one thread for the operation of parsing input bits into syntax elements of one picture implemented by the first thread, another thread for the operation of decoding the parsed syntax elements of another picture into pixel values implemented by the second thread, and the other threads for the operations of the non-reference picture, such as bidirectional predictive picture, including parsing input bits into syntax elements and the subsequent operation of decoding the parsed syntax elements into pixel values. Therefore, the decoding speed is substantially increased, and the decoding efficiency is enhanced.

Claims (21)

1. A method for performing multi-threaded video decoding, comprising:

receiving encoded picture streams for decoding;

finding a reference picture from the header information of encoded picture stream;

processing following steps in a parallel manner:

parsing input bits of a current reference picture into a plurality of syntax elements;

decoding the parsed syntax elements of the preceding reference picture into pixel value, and

processing a plurality of non-reference pictures,

wherein the step of processing a plurality of non-reference pictures is to parse input bits of one non-reference picture into a plurality of syntax elements and then to decode the parsed syntax elements of the non-reference picture into pixel values while the one or more other pictures referred by the decoding of the non-reference picture have been decoded.

2. The method for performing multi-threaded video decoding according to claim 1 , further comprises determining whether the picture to be decoded includes a plurality of slices.

3. The method for performing multi-threaded video decoding according to claim 2 , wherein the picture is decoded by multiple threads if the picture to be decoded includes a plurality of slices.

4. The method of claim 1 , wherein the encoded picture stream is encoded in accordance with the Advanced Video Coding standard.

5. The method of claim 1 , wherein processing in a parallel manner is performed using different threads in a multi-threaded processor.

6. The method of claim 1 , wherein the syntax elements include one or more of picture start code, temporal reference, picture type, motion vector type, and motion vectors.

7. The method of claim 1 , wherein receiving includes receiving the encoded picture streams from a network.

8. The method of claim 1 , wherein receiving includes receiving the encoded picture streams from an optical storage disk.

9. The method of claim 8 , wherein the optical storage disk includes one of a digital versatile disk (DVD), a high-definition DVD (HD-DVD) and a Blu-ray disk (BD).

10. The method of claim 1 , wherein the reference picture is an intra-coded picture (I-picture).

11. The method of claim 1 , wherein the reference picture is a predictive picture (P-picture).

12. The method of claim 1 , further comprising:

determining whether an entire picture of the reference picture and the non-reference picture has been decoded; and

if the entire picture has been decoded, outputting the decoded entire picture to a buffer memory for display.

Assignments (10)
TERMINATION AND RELEASE OF SECOND LIEN SECURITY INTEREST IN PATENT RIGHTS Recorded May 6, 2026
From: CANTOR FITZGERALD SECURITIES, AS COLLATERAL AGENT
To: CLEARSLIDE INC.; COREL CORPORATION (AS SUCCESSOR IN INTEREST TO CASCADE BIDCO CORP.)
Reel/Frame 075522/0510 →
RELEASE OF SECURITY INTEREST Recorded May 5, 2026
From: CITIBANK, N.A., AS AGENT
To: COREL CORPORATION; CASCADE BIDCO CORP.; COREL INC.; CLEARSLIDE INC.
Reel/Frame 075559/0953 →
SECURITY INTEREST Recorded May 1, 2026
From: COREL CORPORATION
To: FIRST-CITIZENS BANK & TRUST COMPANY
Reel/Frame 075315/0928 →
SECURITY INTEREST Recorded Jul 3, 2019
From: CASCADE BIDCO CORP.; COREL INC.; CLEARSLIDE INC.
To: CITIBANK, N.A.
Reel/Frame 049678/0950 →
SECURITY INTEREST Recorded Jul 3, 2019
From: CASCADE BIDCO CORP.; COREL INC.; CLEARSLIDE INC.
To: CANTOR FITZGERALD SECURITIES
Reel/Frame 049678/0980 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 30, 2019
From: COREL SOFTWARE LLC
To: COREL CORPORATION
Reel/Frame 049030/0419 →
CHANGE OF NAME Recorded Jul 21, 2015
From: 8324450 DELAWARE LLC
To: COREL SOFTWARE LLC
Reel/Frame 036148/0764 →
ENTITY DOMICILE CHANGE Recorded Jul 21, 2015
From: 8324450 CANADA INC.
To: 8324450 DELAWARE LLC
Reel/Frame 036148/0369 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 21, 2015
From: COREL CORPORATION
To: 8324450 CANADA INC.
Reel/Frame 036143/0930 →
SECURITY AGREEMENT Recorded Jun 21, 2013
From: COREL CORPORATION; COREL US HOLDINGS, LLC; COREL INC.; WINZIP INTERNATIONAL LLC; WINZIP COMPUTING LLC; WINZIP COMPUTING LP
To: WILMINGTON TRUST, NATIONAL ASSOCIATION
Reel/Frame 030657/0487 →