Patent ID: 8451905

Claim:
A method, comprising: processing a sequence of video frames by a computing device, in which at least some of the video frames are determined as key video frames and others of the video frames are determined as non-key video frames, said processing comprises, for video frames of the sequence of video frames: determining whether the video frame is a key video frame or a non-key video frame; if the video frame is determined to be a key video frame, encoding of the key video frame for reception by a receiving device; and if the video frame is determined to be a non-key video frame: for a particular pixel block of one or more pixel blocks of the non-key video frame, determining whether the particular pixel block is within a threshold of similarity to a corresponding previous pixel block of a previous video frame in the sequence of video frames; in response to said determining that the particular pixel block is within the threshold of similarity to the corresponding previous pixel block, generating an indication usable by the receiving device to reconstruct the particular pixel block of the non-key video frame via the corresponding previous pixel block of the previous video frame; and in response to said determining that the particular pixel block of the non-key video frame is not within the threshold of similarity to the corresponding previous pixel block, encoding the particular pixel block of the non-key video frame based at least in part on on contents of the non-key video frame that contains the particular pixel block and not on contents of the previous key video frame, nor on contents of any other video frame positioned between the previous key video frame and the nonkey video frame in the sequence of video frames.