System and method for generating video frames and correcting motion
First Claim
1. A method of generating video frames, the method comprising:
- receiving in a client device a first frame transmitted via a network a first frame, the first frame representative of an image at a first instance in time, the first frame including a plurality of first elements and a plurality of motion vectors, each of the motion vectors being associated with one of the plurality of first elements;
receiving in the client device a second frame transmitted via the network a second frame, the first second frame representative of an image at a second instance in time, the first second frame including a plurality of second elements and a plurality of motion vectors, each of the motion vectors being associated with one of the plurality of second elements;
subsequent to decoding the first frame and the second frame, determining in the client device, based upon a characteristic of the first frame or second frame, whether to modify at least one of the motion vectors in the first and/or second frames, wherein determining a characteristic of the first or second frame comprises determining the following characteristics;
(a) whether the duration of time between receiving the first frame and the second frame exceeds a first threshold, and (b) whether a number of blocks in the second frame that has been independently coded is greater than a second threshold;
modifying, at least in part in response to determining the characteristics, at least one of the plurality of motion vectors in the first and/or second frames based upon the value of one of the other motion vectors in the first and/or the second frame; and
generating, at least one intermediate frame based, at least in part, upon a plurality of the first and/or second elements and said at least one of the plurality of motion vectors.
2 Assignments
0 Petitions
Accused Products
Abstract
System and method for generating video frames. The system includes a frame generator which generates one or more intermediate frames based upon one base frames. Each of the base frames are comprised of a plurality of macroblocks. Furthermore, one or more of the macroblocks have a motion vector. The macroblocks are comprised of a plurality of pixels. In the frame generation process, the frame generator performs a number of steps such as: (i) determines whether frame generation is appropriate, (ii) examines the first and second base frames to check for the presence of textual characters, (iii) selects a frame generation method based upon information in the first and second frames, (iv) filters the generated frames. In one embodiment, the system includes a server computer having an encoder, a client computer having a decoder, and a network connecting the server computer to the client computer. In this embodiment, the frame generator resides and executes within the client computer and receives the base frames from the decoder.
62 Citations
1 Claim
-
1. A method of generating video frames, the method comprising:
-
receiving in a client device a first frame transmitted via a network a first frame, the first frame representative of an image at a first instance in time, the first frame including a plurality of first elements and a plurality of motion vectors, each of the motion vectors being associated with one of the plurality of first elements;
receiving in the client device a second frame transmitted via the network a second frame, the first second frame representative of an image at a second instance in time, the first second frame including a plurality of second elements and a plurality of motion vectors, each of the motion vectors being associated with one of the plurality of second elements;
subsequent to decoding the first frame and the second frame, determining in the client device, based upon a characteristic of the first frame or second frame, whether to modify at least one of the motion vectors in the first and/or second frames, wherein determining a characteristic of the first or second frame comprises determining the following characteristics;
(a) whether the duration of time between receiving the first frame and the second frame exceeds a first threshold, and (b) whether a number of blocks in the second frame that has been independently coded is greater than a second threshold;
modifying, at least in part in response to determining the characteristics, at least one of the plurality of motion vectors in the first and/or second frames based upon the value of one of the other motion vectors in the first and/or the second frame; and
generating, at least one intermediate frame based, at least in part, upon a plurality of the first and/or second elements and said at least one of the plurality of motion vectors.
-
Specification