Techniques for video data encoding
First Claim
1. A computer-implemented method for encoding video content in a video game environment, comprising:
- obtaining, by one or more computer systems, a first data set defining a first frame of a plurality of frames of video content, the first data set including information associated with a first position of a virtual camera and defining a first boundary of the first frame, the first data set further including a subset defining at least one object within the first frame;
obtaining a second data set defining a second frame of video content immediately succeeding the first frame in the plurality of frames, the second set of data including information associated with a second position of the virtual camera and defining a second boundary of the second frame;
determining a first portion of the first frame at least partially overlapping the second frame based at least in part upon virtual camera translation information, the virtual camera translation information reflecting movement of the virtual camera between the first and second positions;
determining a second portion of the first frame that does not overlap with the second frame and a third portion of the second frame that does not overlap with the first frame based on a difference between the first and second boundaries;
determining object translation information based at least in part upon a projected movement of the at least one object between the first frame and the second frame and upon the virtual camera translation information;
encoding, by the one or more computer systems, a video file with information defining the first portion of the first frame, the second portion of the first frame, and the third portion of the second frame based upon the virtual camera translation information and the object translation informationdetermining a frame degradation based on at least camera movement information;
determining whether the frame degradation is above a threshold;
when the frame degradation is above the threshold, transmitting the first frame as the second frame; and
when the frame degradation is below the threshold, generating data for new frame encoding based at least in part on the camera or object movement information and reconstructing the plurality of frames of video content based at least in part on the generated data for new frame encoding.
1 Assignment
0 Petitions
Accused Products
Abstract
The techniques for encoding video content are disclosed. In an online game environment, the techniques include obtaining information for a first and second successive frames of video content and information for a position of a virtual camera associated with each frame, determining virtual camera translation information based on the positions of the virtual camera, determining a projected movement between the frames of an object included in each frame, determining the portion of the first frame to be excluded from the second frame and a new portion of the second frame, and providing the determined encoded information for a reconstruction of the second frame based on the provided information.
-
Citations
28 Claims
-
1. A computer-implemented method for encoding video content in a video game environment, comprising:
-
obtaining, by one or more computer systems, a first data set defining a first frame of a plurality of frames of video content, the first data set including information associated with a first position of a virtual camera and defining a first boundary of the first frame, the first data set further including a subset defining at least one object within the first frame; obtaining a second data set defining a second frame of video content immediately succeeding the first frame in the plurality of frames, the second set of data including information associated with a second position of the virtual camera and defining a second boundary of the second frame; determining a first portion of the first frame at least partially overlapping the second frame based at least in part upon virtual camera translation information, the virtual camera translation information reflecting movement of the virtual camera between the first and second positions; determining a second portion of the first frame that does not overlap with the second frame and a third portion of the second frame that does not overlap with the first frame based on a difference between the first and second boundaries; determining object translation information based at least in part upon a projected movement of the at least one object between the first frame and the second frame and upon the virtual camera translation information; encoding, by the one or more computer systems, a video file with information defining the first portion of the first frame, the second portion of the first frame, and the third portion of the second frame based upon the virtual camera translation information and the object translation information determining a frame degradation based on at least camera movement information; determining whether the frame degradation is above a threshold; when the frame degradation is above the threshold, transmitting the first frame as the second frame; and when the frame degradation is below the threshold, generating data for new frame encoding based at least in part on the camera or object movement information and reconstructing the plurality of frames of video content based at least in part on the generated data for new frame encoding. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A computer-implemented method for encoding video content comprising a plurality of successive frames, the method comprising:
-
obtaining, by one or more computer systems, a first data set defining a first frame of video content, and a second data set defining a second frame of video content immediately succeeding the first frame; determining virtual camera translation information based on a first position of a virtual camera associated with the first frame and a second position of the virtual camera associated with the second frame; determining information defining a first and second subsets of the first data set, the first subset defining a first portion of the first frame that overlaps with the second frame, the second subset defining a second portion of the first frame that does not overlap with the second frame, the information defining the first subset being determined based on the virtual camera translation information; determining information defining a subset of the second data set, the subset defining a first portion of the second frame that does not overlap with the first frame; encoding, by the one or more computer systems, a video file with the determined information, determining a frame degradation based on at least the virtual camera translation information; determining whether the frame degradation is above a threshold; when the frame degradation is above the threshold, transmitting the first frame as the second frame; and when the frame degradation is below the threshold, generating data for new frame encoding based at least in part on camera or object movement information and reconstructing the plurality of frames of video content based at least in part on the generated data for new frame encoding. - View Dependent Claims (8, 9, 10, 11, 12, 13, 14)
-
-
15. A computer system for encoding video content comprising a plurality of frames in a video game environment, the system comprising a processor and a memory having computer-executable instructions that, when executed on the processor, cause the processor to:
-
obtain a first data set defining a first frame of video content, the first data set including a subset defining at least one object within the first frame; determine a projected movement of the at least one object between the first frame and a second frame that is subsequent to the first frame based at least in part on a movement of the at least one object between at least two frames preceding the second frame; determine object translation information based on the determined projected movement, the at least one object translation information defining a location of the at least one object in the second frame; encoding a video file with the determined object translation information, determining a frame degradation based on at least the virtual camera translation information; determining whether the frame degradation is above a threshold; when the frame degradation is above the threshold, transmitting the first frame as the second frame; and when the frame degradation is below the threshold, generating data for new frame encoding based at least in part on camera or object movement information and reconstructing the plurality of frames of video content based at least in part on the generated data for new frame encoding. - View Dependent Claims (16, 17, 18, 19, 20, 21)
-
-
22. A non-transitory computer-readable storage medium having computer-executable instructions for encoding video content comprising a plurality of frames recorded by a camera in real time stored thereon that, when executed by a computer, cause the computer to:
-
obtain information for a first frame of video content and a second frame of video content immediately succeeding the first frame; obtain camera translation information based on a movement of a camera between the first and second frames; determine information indicating a difference between the first and second frames based on the camera translation information; encode a video file with the determined information, determine a frame degradation based on at least the virtual camera translation information; determine whether the frame degradation is above a threshold; when the frame degradation is above the threshold, transmit the first frame as the second frame; and when the frame degradation is below the threshold, generating data for new frame encoding based at least in part on camera or object movement information and reconstructing the plurality of frames of video content based at least in part on the generated data for new frame encoding. - View Dependent Claims (23, 24, 25, 26, 27, 28)
-
Specification