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 frame of a plurality of frames of video content, the first frame including information associated with a first position of a virtual camera and at least one object within the first frame;
obtaining a second frame of the plurality of frames of video content immediately succeeding the first frame in the plurality of frames, the second frame including information associated with a second position of the virtual camera;
determining one or more portions of partial overlap between the first frame and the second frame based at least in part on virtual camera translation information, the virtual camera translation information reflecting movement of the virtual camera between the first and second positions;
encoding video with the one or more portions of partial overlap from the first frame and the second frame based upon the virtual camera translation information and object translation information, the 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;
determining a frame quality value based on at least the virtual camera translation information;
determining whether the frame quality value is above a threshold;
when the frame quality value is above the threshold, transmitting the first frame as the second frame; and
when the frame quality value is below the threshold, generating data for frame encoding based at least in part on the projected movement of the at least one object.
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 frame of a plurality of frames of video content, the first frame including information associated with a first position of a virtual camera and at least one object within the first frame; obtaining a second frame of the plurality of frames of video content immediately succeeding the first frame in the plurality of frames, the second frame including information associated with a second position of the virtual camera; determining one or more portions of partial overlap between the first frame and the second frame based at least in part on virtual camera translation information, the virtual camera translation information reflecting movement of the virtual camera between the first and second positions; encoding video with the one or more portions of partial overlap from the first frame and the second frame based upon the virtual camera translation information and object translation information, the 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; determining a frame quality value based on at least the virtual camera translation information; determining whether the frame quality value is above a threshold; when the frame quality value is above the threshold, transmitting the first frame as the second frame; and when the frame quality value is below the threshold, generating data for frame encoding based at least in part on the projected movement of the at least one object. - 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 portion of the first frame that overlaps with the second frame, a second portion of the first frame that does not overlap with the second frame, and a first portion of the second frame that does not overlap with the first frame, the information being determined based at least in part on the virtual camera translation information; encoding, by the one or more computer systems, video with the determined information; determining a frame quality value based on at least the virtual camera translation information; determining whether the frame quality value is above a threshold; when the frame quality value is above the threshold, transmitting the first frame as the second frame; and when the frame quality value is below the threshold, generating data for frame encoding based at least in part on camera or object movement information. - 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 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; and encode video with the determined object translation information, determine a frame quality value based on at least the virtual camera translation information; determine whether the frame quality value is above a threshold; when the frame quality value is above the threshold, transmit the first frame as the second frame; and when the frame quality value is below the threshold, generate data for frame encoding based at least in part on the movement of the at least one object. - 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; and encode video with the determined information, determine a frame quality value based on at least the camera translation information; determine whether the frame quality value is above a threshold; when the frame quality value is above the threshold, transmit the first frame as the second frame; and when the frame quality value is below the threshold, generate data for frame encoding based at least in part on the movement of the camera. - View Dependent Claims (23, 24, 25, 26, 27, 28)
-
Specification