IP Library Patent Application 11899188
Patent Application
App. No. 11/899,188

Near full motion search algorithm

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 None
App. No.
11/899,188
Abstract

A method and system of processing multimedia data is provided. The method includes associating a constant identifier with a current block of the multimedia data. A frame of blocks of the multimedia data, including streaming video data, can be sorted based on the identifier. The identifier of the current block can be compared with the sorted frame of blocks and a compare condition can comprise matching a constant component of the compared blocks. A plurality of fine-grained instructions of a searching algorithm can be used in the comparing of the blocks. The plurality of fined-grained instructions can be stored in a data parallel system. Motion vectors can be generated for the frame of blocks. The generated motion vectors can also be sorted following generation of the motion vectors. A current picture can be reconfigured according to the generated motion vectors for the frame of blocks of the multimedia data.

Claims (31)

1 . A method of processing multimedia data comprising:

associating an identifier with a current block of the multimedia data;

sorting a frame of blocks of the multimedia data based on the identifier;

comparing the identifier of the current block with the sorted frame of blocks of the multimedia data;

generating motion vectors for the frame of blocks of the multimedia data; and

reconfiguring a current picture according to the generated motion vectors for the frame of blocks of the multimedia data.

2 . The method of claim 1 , further comprising sorting the motion vectors after the generating step.

3 . The method of claim 1 , wherein the identifier comprises a constant component of the current block of multimedia data.

4 . The method of claim 1 , wherein the frame of blocks comprise a frame of video data.

5 . The method of claim 4 , wherein the video data comprises streaming video data.

6 . The method of claim 1 , wherein each of the blocks of the multimedia data is compared with each neighboring block.

7 . The method of claim 1 , wherein a compare condition comprises matching a constant component of the compared blocks of the multimedia data.

8 . The method of claim 1 , wherein the current block comprises a size of 4×4 pixels.

9 . The method of claim 1 , wherein the current block comprises a size of 4×8, or 8×4 pixels.

10 . The method of claim 1 , wherein a plurality of fine-grain instructions of a searching algorithm is used in the comparing of the blocks of multimedia data.

11 . The method of claim 10 , wherein the plurality of fine-grained instructions are stored in a data parallel system comprising an array of parallel processors.

12 . A system for multimedia data processing comprising:

a data parallel system for performing parallel data computations,

wherein the data parallel system comprises a fine-grain data parallelism architecture for detecting motion in video data.

13 . The system of claim 12 , wherein the data parallel system further comprises:

a. an array of processing elements;

b. a plurality of sequencers coupled to the array of processing elements for providing and sending a plurality of instructions to associated processing elements within the array of processing elements;

c. a direct memory access component coupled to the array of processing elements for transferring the data to and from a memory; and

d. a selection mechanism coupled to the plurality of sequencers,

wherein the plurality of sequencers comprise fine-grain instructions for detecting motion in video data, wherein the selection mechanism is configured to select the associated processing elements.

14 . The system of claim 13 , wherein the sending of the plurality of instructions to the associated processing elements uses a diagonal mapping scheme.

15 . The system of claim 14 , wherein the diagonal mapping scheme is configured to load a data memory of the processing elements in a diagonal order.

16 . The system of claim 13 , wherein the instructions of the plurality of sequencers comprise common functional fine-grain instructions of a searching algorithm for the detecting motion in the video data.

17 . The system of claim 13 , wherein the processing elements of the array of processing elements are individually programmable.

18 . The system of claim 13 , wherein each of the plurality of sequencers comprises a unique instruction set.

19 . The system of claim 13 , wherein each of the plurality of sequencers comprises an independent instruction set.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 17, 2009
From: BRIGHTSCALE, INC.
To: ALLSEARCH SEMI LLC
Reel/Frame 023248/0102 →
RELEASE Recorded Jun 24, 2009
From: SILICON VALLEY BANK
To: BRIGHTSCALE, INC.
Reel/Frame 022868/0330 →
SECURITY AGREEMENT Recorded Jan 11, 2008
From: BRIGHTSCALE, INC.
To: SILICON VALLEY BANK
Reel/Frame 020353/0462 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 30, 2007
From: BIVOLARSKI, LAZAR
To: BRIGHTSCALE, INC.
Reel/Frame 020050/0615 →