Systems and methods for integrated graphics rendering are disclosed. In certain embodiments, the systems and methods utilize a graphics engine, a video encoding engine, and remote client coding engine to render graphics over a network. The systems and methods involve the generation of per-pixel motion vectors, which are converted to per-block motion vectors at the graphics engine. The graphics engine injects these per-block motion vectors into a video encoding engine, such that the video encoding engine may convert those vectors into encoded video data for transmission to the remote client coding engine.
Systems and methods for deferring post-process effects in video encoding are disclosed. The systems and methods are capable of calculating the capability of client hardware to defer load, and summing a known load of one or more deferral candidates to evaluate how many post-process deferral candidates are capable of being deferred to client hardware. The systems and methods are also capable of sending an updated deferral list of post-processes to a remote server that can apply the list of deferred post-process candidates during the post-processing phase of a first video frame.
Systems and methods for hinting an encoder are disclosed in which a server monitors for information related to changes in frame rendering, calculates tolerance boundaries, rolling average frame time and/or short-term trends in frame time, using those calculations to identify a frame time peak. The server then hints a codec (encoder) to modulate the quality settings of frame output in proportion to the size of the frame time peak. In certain embodiments, a renderer records one or more playthroughs in a game environment, sorts a plurality of frames from one or more playthroughs into a plurality of cells on a heatmap, and collects the list of sorted frames. A codec may then encode one or more frames from the list of sorted frames to calculate an average encoded frame size for each cell in the heatmap, and associate each average encoded frame size with a per-cell normalized encoder quality setting.
H04N 19/17 - Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
H04N 19/46 - Embedding additional information in the video signal during the compression process
H04N 19/51 - Motion estimation or motion compensation
H04N 19/56 - Motion estimation with initialisation of the vector search, e.g. estimating a good candidate to initiate a search
4.
PLAYER INPUT MOTION COMPENSATION BY ANTICIPATING MOTION VECTORS
Systems and methods for reducing latency through motion estimation and compensation incorporate a client device that uses lookup tables from a remote server to match, tag, and sum motion vectors. When a remote server transmits encoded video frames to the client, the client decodes them and applies the summed motion vectors to estimate motion. The technology also generate motion vectors based on predetermined criteria and transmit them and invalidators to a client, which caches them. The server instructs the client to receive input and use it to match to cached motion vectors or invalidators. The technology also caches repetitive motion vectors and transmits previously generated motion vector libraries to a client. The server instructs the client to calculate a motion estimate and instructs the client to update the stored motion vector library, so that the client applies the stored library to initiate motion prior to receiving actual motion vector data.
Systems and methods for improving computer technology related to the rendering and encoding of images are disclosed, preferably for use in a video-game environment. In certain embodiments, a codec is used to encode one or more reference images for a partial range of encoder settings and a renderer is used to generate one or more rendering quality-settings profiles, generate one or more reference images, calculate perceived qualities for each of the one or more reference images, re-render the one or more reference images for each of the one or more rendering quality-setting profiles, and calculate perceived qualities for each of the one or more re-rendered reference images. The renderer compares the perceived qualities of the reference images to the perceived qualities of the re-rendered images and matches them. Those matches result in an association of one or more encoder settings with their matching rendering quality-settings profiles into a look-up table.
A multi-chat monitoring and auditing system and method are disclosed. The system and method may be used to simultaneously monitor, audit, and manage online, text-based chat interactions between a plurality of customer service representatives and a plurality of users. Chat streams are monitored through the use of flags that may be customized based on the preferences of the system operators. The system and method may also audit chat interactions through data collection and through a dashboard that aggregates and analyzes key performance indicators. A supervisor's dashboard may also be utilized to manage and oversee the chat interactions of a plurality of customer service representatives.