Patent ID: 7945605

Claim:
A method for accelerating the processing speed of a video compression algorithm, comprising the steps of: obtaining video data to process by said algorithm, said data including at least one picture frame; providing a first data structure for holding at least a portion of said data; setting a first variable representing one of said at least one picture frame to a first preselected value; setting a second variable representing a fragment of one of said at least one picture frame to a second preselected value; assigning dimension to said at least one picture frame; determining whether a last one of said at least one picture frame has been reached; when said last one of said at least one picture frame has been reached, ceasing further operation; and when said last one of said at least one picture frame has not been reached, (i) reading one of said at least one picture frame corresponding to said first variable, (ii) determining whether a fragment of said last one of said at least one picture frame has been reached, and (iii) when a fragment of said last one of said at least one picture frame has been reached, (a) incrementing said first variable and (b) revisiting said step of determining whether a last one of said at least one picture frame has been reached, and (iv) when a fragment of said last one of said at least one picture frame has not been reached, (c) reading a fragment of one of said at least one picture frame corresponding to said second variable, (d) determining whether said first data structure includes said read fragment of one of said at least one picture frame corresponding to said second variable, and (1) when said first data structure includes said read fragment, (e) assigning a value corresponding to said read fragment represented by a third variable to a second data structure, (f) writing a value of said fragment from said first data structure into said third variable, (g) incrementing said second variable, and (h) revisiting said step of determining whether a fragment of said last one of said at least one picture frame has been reached, and (2) when said first data structure does not include said read fragment, (i) assigning said read fragment to said first data structure, (j) assigning a last value from said first data structure to said third variable, (k) assigning said value corresponding to said read fragment represented by said third variable to said second data structure, (l) writing said value of said fragment from said first data structure into said third variable, (m) incrementing said second variable, and (n) revisiting said step of determining whether a fragment of said last one of said at least one picture frame has been reached.