ZeniMax Media Inc.

United States of America

Back to Profile

1-30 of 30 for ZeniMax Media Inc. Sort by
Query
Patent
United States - USPTO
Excluding Subsidiaries
Aggregations Reset Report
Date
2023 3
2021 4
2020 6
2019 8
Before 2019 9
IPC Class
H04N 7/12 - Systems in which the television signal is transmitted via one channel or a plurality of parallel channels, the bandwidth of each channel being less than the bandwidth of the television signal 19
H04N 19/176 - 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 the region being a block, e.g. a macroblock 17
H04N 19/517 - Processing of motion vectors by encoding 17
H04N 19/162 - User input 16
H04N 19/124 - Quantisation 15
See more
Status
Pending 3
Registered / In Force 27
Found results for  patents

1.

SYSTEMS AND METHODS FOR DEFERRED POST-PROCESSES IN VIDEO ENCODING

      
Application Number 18221293
Status Pending
Filing Date 2023-07-12
First Publication Date 2023-11-09
Owner ZeniMax Media Inc. (USA)
Inventor Kopietz, Michael

Abstract

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.

IPC Classes  ?

  • H04N 19/156 - Availability of hardware or computational resources, e.g. encoding based on power-saving criteria
  • H04N 19/85 - Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
  • H04N 19/117 - Filters, e.g. for pre-processing or post-processing
  • H04N 19/42 - Methods or arrangements for coding, decoding, compressing or decompressing digital video signals - characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation

2.

SYSTEMS AND METHODS FOR PLAYER INPUT MOTION COMPENSATION BY ANTICIPATING MOTION VECTORS AND/OR CACHING REPETITIVE MOTION VECTORS

      
Application Number 18141698
Status Pending
Filing Date 2023-05-01
First Publication Date 2023-08-24
Owner ZeniMax Media Inc. (USA)
Inventor Kopietz, Michael

Abstract

Systems and methods for reducing latency through motion estimation and compensation techniques are disclosed. The systems and methods include a client device that uses transmitted lookup tables from a remote server to match user input to motion vectors, and tag and sum those motion vectors. When a remote server transmits encoded video frames to the client, the client decodes those video frames and applies the summed motion vectors to the decoded frames to estimate motion in those frames. In certain embodiments, the systems and methods generate motion vectors at a server based on predetermined criteria and transmit the generated motion vectors and one or more invalidators to a client, which caches those motion vectors and invalidators. The server instructs the client to receive input from a user, and use that input to match to cached motion vectors or invalidators. Based on that comparison, the client then applies the matched motion vectors or invalidators to effect motion compensation in a graphic interface. In other embodiments, the systems and methods cache repetitive motion vectors at a server, which transmits a previously generated motion vector library to a client. The client stores the motion vector library, and monitors for user input data. The server instructs the client to calculate a motion estimate from the input data and instructs the client to update the stored motion vector library based on the input data, so that the client applies the stored motion vector library to initiate motion in a graphic interface prior to receiving actual motion vector data from the server. In this manner, latency in video data streams is reduced.

IPC Classes  ?

  • H04N 19/513 - Processing of motion vectors
  • H04N 19/139 - Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
  • H04N 19/176 - 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 the region being a block, e.g. a macroblock
  • H04N 19/517 - Processing of motion vectors by encoding
  • A63F 13/358 - Adapting the game course according to the network or server load, e.g. for reducing latency due to different connection speeds between clients
  • H04N 19/162 - User input
  • H04N 19/44 - Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
  • A63F 13/352 - Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers - Details of game servers involving special game server arrangements, e.g. regional servers connected to a national server or a plurality of servers managing partitions of the game world
  • A63F 13/355 - Performing operations on behalf of clients with restricted processing capabilities, e.g. servers transform changing game scene into an MPEG-stream for transmitting to a mobile phone or a thin client
  • A63F 13/86 - Watching games played by other players
  • H04N 19/124 - Quantisation
  • H04N 19/126 - Quantisation - Details of normalisation or weighting functions, e.g. normalisation matrices or variable uniform quantisers
  • H04N 19/146 - Data rate or code amount at the encoder output
  • H04N 19/192 - Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding the adaptation method, adaptation tool or adaptation type being iterative or recursive
  • H04L 65/80 - Responding to QoS
  • H04L 65/65 - Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
  • H04L 65/70 - Media network packetisation
  • H04L 65/75 - Media network packet handling
  • H04N 19/107 - Selection of coding mode or of prediction mode between spatial and temporal predictive coding, e.g. picture refresh
  • H04N 19/172 - 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 the region being a picture, frame or field
  • A63F 13/35 - Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers - Details of game servers
  • A63F 13/40 - Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment
  • A63F 13/52 - Controlling the output signals based on the game progress involving aspects of the displayed game scene

3.

SYSTEMS AND METHODS FOR GAME-GENERATED MOTION VECTORS

      
Application Number 17955665
Status Pending
Filing Date 2022-09-29
First Publication Date 2023-03-23
Owner ZeniMax Media Inc. (USA)
Inventor Kopietz, Michael

Abstract

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.

IPC Classes  ?

  • H04N 19/517 - Processing of motion vectors by encoding
  • G06T 15/00 - 3D [Three Dimensional] image rendering
  • H04N 19/61 - Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
  • H04N 19/537 - Motion estimation other than block-based
  • E05B 77/54 - Automatic securing or unlocking of bolts triggered by certain vehicle parameters, e.g. exceeding a speed threshold
  • E05B 79/20 - Connections between movable lock parts using flexible connections, e.g. Bowden cables
  • E05B 83/24 - Locks for luggage compartments, car boot lids or car bonnets for car bonnets
  • E05B 85/24 - Bolts rotating about an axis
  • E05B 85/26 - Cooperation between bolts and detents
  • G06T 9/00 - Image coding

4.

Systems and methods for player input motion compensation by anticipating motion vectors and/or caching repetitive motion vectors

      
Application Number 17227804
Grant Number 11533504
Status In Force
Filing Date 2021-04-12
First Publication Date 2021-07-29
Grant Date 2022-12-20
Owner ZeniMax Media Inc. (USA)
Inventor Kopietz, Michael

Abstract

Systems and methods for reducing latency through motion estimation and compensation techniques are disclosed. The systems and methods include a client device that uses transmitted lookup tables from a remote server to match user input to motion vectors, and tag and sum those motion vectors. When a remote server transmits encoded video frames to the client, the client decodes those video frames and applies the summed motion vectors to the decoded frames to estimate motion in those frames. In certain embodiments, the systems and methods generate motion vectors at a server based on predetermined criteria and transmit the generated motion vectors and one or more invalidators to a client, which caches those motion vectors and invalidators. The server instructs the client to receive input from a user, and use that input to match to cached motion vectors or invalidators. Based on that comparison, the client then applies the matched motion vectors or invalidators to effect motion compensation in a graphic interface. In other embodiments, the systems and methods cache repetitive motion vectors at a server, which transmits a previously generated motion vector library to a client. The client stores the motion vector library, and monitors for user input data. The server instructs the client to calculate a motion estimate from the input data and instructs the client to update the stored motion vector library based on the input data, so that the client applies the stored motion vector library to initiate motion in a graphic interface prior to receiving actual motion vector data from the server. In this manner, latency in video data streams is reduced.

IPC Classes  ?

  • H04N 7/12 - Systems in which the television signal is transmitted via one channel or a plurality of parallel channels, the bandwidth of each channel being less than the bandwidth of the television signal
  • H04N 19/513 - Processing of motion vectors
  • H04N 19/139 - Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
  • H04N 19/176 - 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 the region being a block, e.g. a macroblock
  • H04N 19/517 - Processing of motion vectors by encoding
  • A63F 13/358 - Adapting the game course according to the network or server load, e.g. for reducing latency due to different connection speeds between clients
  • H04N 19/162 - User input
  • H04N 19/44 - Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
  • A63F 13/352 - Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers - Details of game servers involving special game server arrangements, e.g. regional servers connected to a national server or a plurality of servers managing partitions of the game world
  • A63F 13/355 - Performing operations on behalf of clients with restricted processing capabilities, e.g. servers transform changing game scene into an MPEG-stream for transmitting to a mobile phone or a thin client
  • A63F 13/86 - Watching games played by other players
  • H04N 19/124 - Quantisation
  • H04N 19/126 - Quantisation - Details of normalisation or weighting functions, e.g. normalisation matrices or variable uniform quantisers
  • H04N 19/146 - Data rate or code amount at the encoder output
  • H04N 19/192 - Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding the adaptation method, adaptation tool or adaptation type being iterative or recursive
  • H04L 65/80 - Responding to QoS
  • H04L 65/65 - Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
  • H04L 65/70 - Media network packetisation
  • H04L 65/75 - Media network packet handling
  • H04N 19/107 - Selection of coding mode or of prediction mode between spatial and temporal predictive coding, e.g. picture refresh
  • H04N 19/172 - 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 the region being a picture, frame or field
  • A63F 13/35 - Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers - Details of game servers
  • A63F 13/40 - Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment
  • A63F 13/52 - Controlling the output signals based on the game progress involving aspects of the displayed game scene
  • H04N 19/527 - Global motion vector estimation

5.

Systems and methods for player input motion compensation by anticipating motion vectors and/or caching repetitive motion vectors

      
Application Number 17195461
Grant Number 11503332
Status In Force
Filing Date 2021-03-08
First Publication Date 2021-06-24
Grant Date 2022-11-15
Owner ZeniMax Media Inc. (USA)
Inventor Kopietz, Michael

Abstract

Systems and methods for reducing latency through motion estimation and compensation techniques are disclosed. The systems and methods include a client device that uses transmitted lookup tables from a remote server to match user input to motion vectors, and tag and sum those motion vectors. When a remote server transmits encoded video frames to the client, the client decodes those video frames and applies the summed motion vectors to the decoded frames to estimate motion in those frames. In certain embodiments, the systems and methods generate motion vectors at a server based on predetermined criteria and transmit the generated motion vectors and one or more invalidators to a client, which caches those motion vectors and invalidators. The server instructs the client to receive input from a user, and use that input to match to cached motion vectors or invalidators. Based on that comparison, the client then applies the matched motion vectors or invalidators to effect motion compensation in a graphic interface. In other embodiments, the systems and methods cache repetitive motion vectors at a server, which transmits a previously generated motion vector library to a client. The client stores the motion vector library, and monitors for user input data. The server instructs the client to calculate a motion estimate from the input data and instructs the client to update the stored motion vector library based on the input data, so that the client applies the stored motion vector library to initiate motion in a graphic interface prior to receiving actual motion vector data from the server. In this manner, latency in video data streams is reduced.

IPC Classes  ?

  • H04N 7/12 - Systems in which the television signal is transmitted via one channel or a plurality of parallel channels, the bandwidth of each channel being less than the bandwidth of the television signal
  • H04N 19/513 - Processing of motion vectors
  • H04N 19/139 - Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
  • H04N 19/176 - 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 the region being a block, e.g. a macroblock
  • H04N 19/517 - Processing of motion vectors by encoding
  • A63F 13/358 - Adapting the game course according to the network or server load, e.g. for reducing latency due to different connection speeds between clients
  • H04N 19/162 - User input
  • H04N 19/44 - Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
  • A63F 13/352 - Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers - Details of game servers involving special game server arrangements, e.g. regional servers connected to a national server or a plurality of servers managing partitions of the game world
  • A63F 13/355 - Performing operations on behalf of clients with restricted processing capabilities, e.g. servers transform changing game scene into an MPEG-stream for transmitting to a mobile phone or a thin client
  • A63F 13/86 - Watching games played by other players
  • H04N 19/124 - Quantisation
  • H04N 19/126 - Quantisation - Details of normalisation or weighting functions, e.g. normalisation matrices or variable uniform quantisers
  • H04N 19/146 - Data rate or code amount at the encoder output
  • H04N 19/192 - Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding the adaptation method, adaptation tool or adaptation type being iterative or recursive
  • H04L 65/80 - Responding to QoS
  • H04L 65/65 - Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
  • H04L 65/70 - Media network packetisation
  • H04L 65/75 - Media network packet handling
  • H04N 19/107 - Selection of coding mode or of prediction mode between spatial and temporal predictive coding, e.g. picture refresh
  • H04N 19/172 - 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 the region being a picture, frame or field
  • A63F 13/35 - Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers - Details of game servers
  • A63F 13/40 - Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment
  • A63F 13/52 - Controlling the output signals based on the game progress involving aspects of the displayed game scene
  • H04N 19/527 - Global motion vector estimation

6.

Systems and methods for rendering and pre-encoded load estimation based encoder hinting

      
Application Number 17008305
Grant Number 11503313
Status In Force
Filing Date 2020-08-31
First Publication Date 2021-02-25
Grant Date 2022-11-15
Owner ZeniMax Media Inc. (USA)
Inventor Kopietz, Michael

Abstract

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 short-term trends in frame time, and uses 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.

IPC Classes  ?

  • H04N 19/192 - Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding the adaptation method, adaptation tool or adaptation type being iterative or recursive
  • H04N 19/176 - 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 the region being a block, e.g. a macroblock
  • H04N 19/126 - Quantisation - Details of normalisation or weighting functions, e.g. normalisation matrices or variable uniform quantisers
  • H04N 19/146 - Data rate or code amount at the encoder output
  • H04N 19/124 - Quantisation
  • H04N 19/162 - User input
  • A63F 13/355 - Performing operations on behalf of clients with restricted processing capabilities, e.g. servers transform changing game scene into an MPEG-stream for transmitting to a mobile phone or a thin client
  • A63F 13/352 - Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers - Details of game servers involving special game server arrangements, e.g. regional servers connected to a national server or a plurality of servers managing partitions of the game world
  • H04L 65/65 - Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
  • H04L 65/70 - Media network packetisation
  • H04L 65/75 - Media network packet handling
  • A63F 13/86 - Watching games played by other players
  • H04L 65/80 - Responding to QoS

7.

Systems and methods for deferred post-processes in video encoding

      
Application Number 17064430
Grant Number 11778199
Status In Force
Filing Date 2020-10-06
First Publication Date 2021-02-11
Grant Date 2023-10-03
Owner ZeniMax Media Inc. (USA)
Inventor Kopietz, Michael

Abstract

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.

IPC Classes  ?

  • H04N 7/12 - Systems in which the television signal is transmitted via one channel or a plurality of parallel channels, the bandwidth of each channel being less than the bandwidth of the television signal
  • H04N 19/156 - Availability of hardware or computational resources, e.g. encoding based on power-saving criteria
  • H04N 19/85 - Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
  • H04N 19/42 - Methods or arrangements for coding, decoding, compressing or decompressing digital video signals - characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
  • H04N 19/117 - Filters, e.g. for pre-processing or post-processing

8.

Systems and methods for game-generated motion vectors

      
Application Number 16847493
Grant Number 11381835
Status In Force
Filing Date 2020-04-13
First Publication Date 2020-12-24
Grant Date 2022-07-05
Owner ZeniMax Media Inc. (USA)
Inventor Kopietz, Michael

Abstract

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.

IPC Classes  ?

  • H04N 7/12 - Systems in which the television signal is transmitted via one channel or a plurality of parallel channels, the bandwidth of each channel being less than the bandwidth of the television signal
  • H04N 19/517 - Processing of motion vectors by encoding
  • G06T 15/00 - 3D [Three Dimensional] image rendering
  • H04N 19/61 - Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
  • H04N 19/537 - Motion estimation other than block-based
  • E05B 77/54 - Automatic securing or unlocking of bolts triggered by certain vehicle parameters, e.g. exceeding a speed threshold
  • E05B 79/20 - Connections between movable lock parts using flexible connections, e.g. Bowden cables
  • E05B 83/24 - Locks for luggage compartments, car boot lids or car bonnets for car bonnets
  • E05B 85/24 - Bolts rotating about an axis
  • E05B 85/26 - Cooperation between bolts and detents
  • G06T 9/00 - Image coding
  • H04N 19/527 - Global motion vector estimation
  • H04N 19/56 - Motion estimation with initialisation of the vector search, e.g. estimating a good candidate to initiate a search
  • E05B 81/16 - Power-actuated vehicle locks characterised by the function or purpose of the powered actuators operating on locking elements for locking or unlocking action
  • F16H 59/10 - Range selector apparatus comprising levers
  • F16H 63/36 - Interlocking devices

9.

Systems and methods for player input motion compensation by anticipating motion vectors and/or caching repetitive motion vectors

      
Application Number 16716731
Grant Number 11695951
Status In Force
Filing Date 2019-12-17
First Publication Date 2020-06-25
Grant Date 2023-07-04
Owner ZeniMax Media Inc. (USA)
Inventor Kopietz, Michael

Abstract

Systems and methods for reducing latency through motion estimation and compensation techniques are disclosed. The systems and methods include a client device that uses transmitted lookup tables from a remote server to match user input to motion vectors, and tag and sum those motion vectors. When a remote server transmits encoded video frames to the client, the client decodes those video frames and applies the summed motion vectors to the decoded frames to estimate motion in those frames. In certain embodiments, the systems and methods generate motion vectors at a server based on predetermined criteria and transmit the generated motion vectors and one or more invalidators to a client, which caches those motion vectors and invalidators. The server instructs the client to receive input from a user, and use that input to match to cached motion vectors or invalidators. Based on that comparison, the client then applies the matched motion vectors or invalidators to effect motion compensation in a graphic interface. In other embodiments, the systems and methods cache repetitive motion vectors at a server, which transmits a previously generated motion vector library to a client. The client stores the motion vector library, and monitors for user input data. The server instructs the client to calculate a motion estimate from the input data and instructs the client to update the stored motion vector library based on the input data, so that the client applies the stored motion vector library to initiate motion in a graphic interface prior to receiving actual motion vector data from the server. In this manner, latency in video data streams is reduced.

IPC Classes  ?

  • H04N 7/12 - Systems in which the television signal is transmitted via one channel or a plurality of parallel channels, the bandwidth of each channel being less than the bandwidth of the television signal
  • H04N 19/513 - Processing of motion vectors
  • H04N 19/139 - Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
  • H04N 19/176 - 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 the region being a block, e.g. a macroblock
  • H04N 19/517 - Processing of motion vectors by encoding
  • A63F 13/358 - Adapting the game course according to the network or server load, e.g. for reducing latency due to different connection speeds between clients
  • H04N 19/162 - User input
  • H04N 19/44 - Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
  • A63F 13/352 - Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers - Details of game servers involving special game server arrangements, e.g. regional servers connected to a national server or a plurality of servers managing partitions of the game world
  • A63F 13/355 - Performing operations on behalf of clients with restricted processing capabilities, e.g. servers transform changing game scene into an MPEG-stream for transmitting to a mobile phone or a thin client
  • A63F 13/86 - Watching games played by other players
  • H04N 19/124 - Quantisation
  • H04N 19/126 - Quantisation - Details of normalisation or weighting functions, e.g. normalisation matrices or variable uniform quantisers
  • H04N 19/146 - Data rate or code amount at the encoder output
  • H04N 19/192 - Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding the adaptation method, adaptation tool or adaptation type being iterative or recursive
  • H04L 65/80 - Responding to QoS
  • H04L 65/65 - Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
  • H04L 65/70 - Media network packetisation
  • H04L 65/75 - Media network packet handling
  • H04N 19/107 - Selection of coding mode or of prediction mode between spatial and temporal predictive coding, e.g. picture refresh
  • H04N 19/172 - 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 the region being a picture, frame or field
  • A63F 13/35 - Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers - Details of game servers
  • A63F 13/40 - Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment
  • A63F 13/52 - Controlling the output signals based on the game progress involving aspects of the displayed game scene
  • H04N 19/527 - Global motion vector estimation

10.

Systems and methods for player input motion compensation by anticipating motion vectors and/or caching repetitive motion vectors

      
Application Number 16692958
Grant Number 11601670
Status In Force
Filing Date 2019-11-22
First Publication Date 2020-06-11
Grant Date 2023-03-07
Owner ZeniMax Media Inc. (USA)
Inventor Kopietz, Michael

Abstract

Systems and methods for reducing latency through motion estimation and compensation techniques are disclosed. The systems and methods include a client device that uses transmitted lookup tables from a remote server to match user input to motion vectors, and tag and sum those motion vectors. When a remote server transmits encoded video frames to the client, the client decodes those video frames and applies the summed motion vectors to the decoded frames to estimate motion in those frames. In certain embodiments, the systems and methods generate motion vectors at a server based on predetermined criteria and transmit the generated motion vectors and one or more invalidators to a client, which caches those motion vectors and invalidators. The server instructs the client to receive input from a user, and use that input to match to cached motion vectors or invalidators. Based on that comparison, the client then applies the matched motion vectors or invalidators to effect motion compensation in a graphic interface. In other embodiments, the systems and methods cache repetitive motion vectors at a server, which transmits a previously generated motion vector library to a client. The client stores the motion vector library, and monitors for user input data. The server instructs the client to calculate a motion estimate from the input data and instructs the client to update the stored motion vector library based on the input data, so that the client applies the stored motion vector library to initiate motion in a graphic interface prior to receiving actual motion vector data from the server. In this manner, latency in video data streams is reduced.

IPC Classes  ?

  • H04N 7/12 - Systems in which the television signal is transmitted via one channel or a plurality of parallel channels, the bandwidth of each channel being less than the bandwidth of the television signal
  • H04N 19/513 - Processing of motion vectors
  • H04N 19/139 - Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
  • H04N 19/176 - 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 the region being a block, e.g. a macroblock
  • H04N 19/517 - Processing of motion vectors by encoding
  • A63F 13/358 - Adapting the game course according to the network or server load, e.g. for reducing latency due to different connection speeds between clients
  • H04N 19/162 - User input
  • H04N 19/44 - Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
  • A63F 13/352 - Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers - Details of game servers involving special game server arrangements, e.g. regional servers connected to a national server or a plurality of servers managing partitions of the game world
  • A63F 13/355 - Performing operations on behalf of clients with restricted processing capabilities, e.g. servers transform changing game scene into an MPEG-stream for transmitting to a mobile phone or a thin client
  • A63F 13/86 - Watching games played by other players
  • H04N 19/124 - Quantisation
  • H04N 19/126 - Quantisation - Details of normalisation or weighting functions, e.g. normalisation matrices or variable uniform quantisers
  • H04N 19/146 - Data rate or code amount at the encoder output
  • H04N 19/192 - Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding the adaptation method, adaptation tool or adaptation type being iterative or recursive
  • H04L 65/80 - Responding to QoS
  • H04L 65/65 - Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
  • H04L 65/70 - Media network packetisation
  • H04L 65/75 - Media network packet handling
  • H04N 19/107 - Selection of coding mode or of prediction mode between spatial and temporal predictive coding, e.g. picture refresh
  • H04N 19/172 - 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 the region being a picture, frame or field
  • A63F 13/35 - Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers - Details of game servers
  • A63F 13/40 - Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment
  • A63F 13/52 - Controlling the output signals based on the game progress involving aspects of the displayed game scene
  • H04N 19/527 - Global motion vector estimation

11.

Systems and methods for encoder-guided adaptive-quality rendering

      
Application Number 16735275
Grant Number 11330276
Status In Force
Filing Date 2020-01-06
First Publication Date 2020-05-14
Grant Date 2022-05-10
Owner ZeniMax Media Inc. (USA)
Inventor Kopietz, Michael

Abstract

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. The lookup table is used to generate a rendered image at a substantially identical perceived quality to an encoded frame during gameplay.

IPC Classes  ?

  • H04N 19/172 - 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 the region being a picture, frame or field
  • G06T 15/00 - 3D [Three Dimensional] image rendering
  • A63F 13/30 - Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
  • H04N 19/124 - Quantisation
  • A63F 13/52 - Controlling the output signals based on the game progress involving aspects of the displayed game scene
  • A63F 13/355 - Performing operations on behalf of clients with restricted processing capabilities, e.g. servers transform changing game scene into an MPEG-stream for transmitting to a mobile phone or a thin client
  • H04N 19/154 - Measured or subjectively estimated visual quality after decoding, e.g. measurement of distortion

12.

Systems and methods for game-generated motion vectors

      
Application Number 16736490
Grant Number 11503326
Status In Force
Filing Date 2020-01-07
First Publication Date 2020-05-07
Grant Date 2022-11-15
Owner ZeniMax Media Inc. (USA)
Inventor Kopietz, Michael

Abstract

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.

IPC Classes  ?

  • H04N 7/12 - Systems in which the television signal is transmitted via one channel or a plurality of parallel channels, the bandwidth of each channel being less than the bandwidth of the television signal
  • H04N 19/517 - Processing of motion vectors by encoding
  • G06T 15/00 - 3D [Three Dimensional] image rendering
  • H04N 19/61 - Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
  • H04N 19/537 - Motion estimation other than block-based
  • E05B 77/54 - Automatic securing or unlocking of bolts triggered by certain vehicle parameters, e.g. exceeding a speed threshold
  • E05B 79/20 - Connections between movable lock parts using flexible connections, e.g. Bowden cables
  • E05B 83/24 - Locks for luggage compartments, car boot lids or car bonnets for car bonnets
  • E05B 85/24 - Bolts rotating about an axis
  • E05B 85/26 - Cooperation between bolts and detents
  • G06T 9/00 - Image coding
  • H04N 19/527 - Global motion vector estimation
  • H04N 19/56 - Motion estimation with initialisation of the vector search, e.g. estimating a good candidate to initiate a search
  • E05B 81/16 - Power-actuated vehicle locks characterised by the function or purpose of the powered actuators operating on locking elements for locking or unlocking action
  • F16H 59/10 - Range selector apparatus comprising levers
  • F16H 63/36 - Interlocking devices

13.

Systems and methods for player input motion compensation by anticipating motion vectors and/or caching repetitive motion vectors

      
Application Number 16580897
Grant Number 11323740
Status In Force
Filing Date 2019-09-24
First Publication Date 2020-02-13
Grant Date 2022-05-03
Owner ZeniMax Media Inc. (USA)
Inventor Kopietz, Michael

Abstract

Systems and methods for reducing latency through motion estimation and compensation techniques are disclosed. The systems and methods include a client device that uses transmitted lookup tables from a remote server to match user input to motion vectors, and tag and sum those motion vectors. When a remote server transmits encoded video frames to the client, the client decodes those video frames and applies the summed motion vectors to the decoded frames to estimate motion in those frames. In certain embodiments, the systems and methods generate motion vectors at a server based on predetermined criteria and transmit the generated motion vectors and one or more invalidators to a client, which caches those motion vectors and invalidators. The server instructs the client to receive input from a user, and use that input to match to cached motion vectors or invalidators. Based on that comparison, the client then applies the matched motion vectors or invalidators to effect motion compensation in a graphic interface. In other embodiments, the systems and methods cache repetitive motion vectors at a server, which transmits a previously generated motion vector library to a client. The client stores the motion vector library, and monitors for user input data. The server instructs the client to calculate a motion estimate from the input data and instructs the client to update the stored motion vector library based on the input data, so that the client applies the stored motion vector library to initiate motion in a graphic interface prior to receiving actual motion vector data from the server. In this manner, latency in video data streams is reduced.

IPC Classes  ?

  • A63F 9/24 - Games using electronic circuits not otherwise provided for
  • H04N 19/513 - Processing of motion vectors
  • H04N 19/139 - Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
  • H04N 19/176 - 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 the region being a block, e.g. a macroblock
  • H04N 19/517 - Processing of motion vectors by encoding
  • A63F 13/358 - Adapting the game course according to the network or server load, e.g. for reducing latency due to different connection speeds between clients
  • H04N 19/162 - User input
  • H04N 19/44 - Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
  • A63F 13/352 - Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers - Details of game servers involving special game server arrangements, e.g. regional servers connected to a national server or a plurality of servers managing partitions of the game world
  • A63F 13/355 - Performing operations on behalf of clients with restricted processing capabilities, e.g. servers transform changing game scene into an MPEG-stream for transmitting to a mobile phone or a thin client
  • A63F 13/86 - Watching games played by other players
  • H04N 19/124 - Quantisation
  • H04N 19/126 - Quantisation - Details of normalisation or weighting functions, e.g. normalisation matrices or variable uniform quantisers
  • H04N 19/146 - Data rate or code amount at the encoder output
  • H04N 19/192 - Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding the adaptation method, adaptation tool or adaptation type being iterative or recursive
  • H04L 65/60 - Network streaming of media packets
  • H04L 65/65 - Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
  • H04L 65/80 - Responding to QoS
  • H04N 19/107 - Selection of coding mode or of prediction mode between spatial and temporal predictive coding, e.g. picture refresh
  • H04N 19/172 - 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 the region being a picture, frame or field
  • A63F 13/35 - Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers - Details of game servers
  • A63F 13/40 - Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment
  • A63F 13/52 - Controlling the output signals based on the game progress involving aspects of the displayed game scene
  • H04N 19/527 - Global motion vector estimation

14.

Systems and methods for player input motion compensation by anticipating motion vectors and/or caching repetitive motion vectors

      
Application Number 16517223
Grant Number 11330291
Status In Force
Filing Date 2019-07-19
First Publication Date 2019-11-28
Grant Date 2022-05-10
Owner ZeniMax Media Inc. (USA)
Inventor Kopietz, Michael

Abstract

Systems and methods for reducing latency through motion estimation and compensation techniques are disclosed. The systems and methods include a client device that uses transmitted lookup tables from a remote server to match user input to motion vectors, and tag and sum those motion vectors. When a remote server transmits encoded video frames to the client, the client decodes those video frames and applies the summed motion vectors to the decoded frames to estimate motion in those frames. In certain embodiments, the systems and methods generate motion vectors at a server based on predetermined criteria and transmit the generated motion vectors and one or more invalidators to a client, which caches those motion vectors and invalidators. The server instructs the client to receive input from a user, and use that input to match to cached motion vectors or invalidators. Based on that comparison, the client then applies the matched motion vectors or invalidators to effect motion compensation in a graphic interface. In other embodiments, the systems and methods cache repetitive motion vectors at a server, which transmits a previously generated motion vector library to a client. The client stores the motion vector library, and monitors for user input data. The server instructs the client to calculate a motion estimate from the input data and instructs the client to update the stored motion vector library based on the input data, so that the client applies the stored motion vector library to initiate motion in a graphic interface prior to receiving actual motion vector data from the server. In this manner, latency in video data streams is reduced.

IPC Classes  ?

  • H04N 7/12 - Systems in which the television signal is transmitted via one channel or a plurality of parallel channels, the bandwidth of each channel being less than the bandwidth of the television signal
  • H04N 19/513 - Processing of motion vectors
  • H04N 19/139 - Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
  • H04N 19/176 - 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 the region being a block, e.g. a macroblock
  • H04N 19/517 - Processing of motion vectors by encoding
  • A63F 13/358 - Adapting the game course according to the network or server load, e.g. for reducing latency due to different connection speeds between clients
  • H04N 19/162 - User input
  • H04N 19/44 - Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
  • A63F 13/352 - Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers - Details of game servers involving special game server arrangements, e.g. regional servers connected to a national server or a plurality of servers managing partitions of the game world
  • A63F 13/355 - Performing operations on behalf of clients with restricted processing capabilities, e.g. servers transform changing game scene into an MPEG-stream for transmitting to a mobile phone or a thin client
  • A63F 13/86 - Watching games played by other players
  • H04N 19/124 - Quantisation
  • H04N 19/126 - Quantisation - Details of normalisation or weighting functions, e.g. normalisation matrices or variable uniform quantisers
  • H04N 19/146 - Data rate or code amount at the encoder output
  • H04N 19/192 - Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding the adaptation method, adaptation tool or adaptation type being iterative or recursive
  • H04L 65/60 - Network streaming of media packets
  • H04L 65/65 - Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
  • H04L 65/80 - Responding to QoS
  • H04N 19/107 - Selection of coding mode or of prediction mode between spatial and temporal predictive coding, e.g. picture refresh
  • H04N 19/172 - 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 the region being a picture, frame or field
  • A63F 13/35 - Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers - Details of game servers
  • A63F 13/40 - Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment
  • A63F 13/52 - Controlling the output signals based on the game progress involving aspects of the displayed game scene
  • H04N 19/527 - Global motion vector estimation

15.

Systems and methods for rendering and pre-encoded load estimation based encoder hinting

      
Application Number 16421934
Grant Number 10869045
Status In Force
Filing Date 2019-05-24
First Publication Date 2019-09-12
Grant Date 2020-12-15
Owner Zenimax Media Inc. (USA)
Inventor Kopietz, Michael

Abstract

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 short-term trends in frame time, and uses 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.

IPC Classes  ?

  • H04N 19/192 - Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding the adaptation method, adaptation tool or adaptation type being iterative or recursive
  • H04N 19/176 - 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 the region being a block, e.g. a macroblock
  • H04N 19/126 - Quantisation - Details of normalisation or weighting functions, e.g. normalisation matrices or variable uniform quantisers
  • H04N 19/146 - Data rate or code amount at the encoder output
  • H04N 19/124 - Quantisation
  • H04N 19/162 - User input
  • H04L 29/06 - Communication control; Communication processing characterised by a protocol
  • A63F 13/355 - Performing operations on behalf of clients with restricted processing capabilities, e.g. servers transform changing game scene into an MPEG-stream for transmitting to a mobile phone or a thin client
  • A63F 13/352 - Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers - Details of game servers involving special game server arrangements, e.g. regional servers connected to a national server or a plurality of servers managing partitions of the game world
  • A63F 13/86 - Watching games played by other players

16.

Systems and methods for encoder-guided adaptive-quality rendering

      
Application Number 16391898
Grant Number 10554984
Status In Force
Filing Date 2019-04-23
First Publication Date 2019-08-15
Grant Date 2020-02-04
Owner ZeniMax Media Inc. (USA)
Inventor Kopietz, Michael

Abstract

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. The lookup table is used to generate a rendered image at a substantially identical perceived quality to an encoded frame during gameplay.

IPC Classes  ?

  • H04N 19/172 - 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 the region being a picture, frame or field
  • G06T 15/00 - 3D [Three Dimensional] image rendering
  • A63F 13/30 - Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
  • H04N 19/124 - Quantisation
  • A63F 13/52 - Controlling the output signals based on the game progress involving aspects of the displayed game scene
  • A63F 13/355 - Performing operations on behalf of clients with restricted processing capabilities, e.g. servers transform changing game scene into an MPEG-stream for transmitting to a mobile phone or a thin client
  • H04N 19/154 - Measured or subjectively estimated visual quality after decoding, e.g. measurement of distortion

17.

System and methods for game-generated motion vectors

      
Application Number 16290468
Grant Number 10701388
Status In Force
Filing Date 2019-03-01
First Publication Date 2019-07-25
Grant Date 2020-06-30
Owner ZENIMAX MEDIA INC. (USA)
Inventor Kopietz, Michael

Abstract

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.

IPC Classes  ?

  • H04N 7/12 - Systems in which the television signal is transmitted via one channel or a plurality of parallel channels, the bandwidth of each channel being less than the bandwidth of the television signal
  • H04N 19/517 - Processing of motion vectors by encoding
  • G06T 15/00 - 3D [Three Dimensional] image rendering
  • H04N 19/61 - Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
  • H04N 19/537 - Motion estimation other than block-based
  • E05B 77/54 - Automatic securing or unlocking of bolts triggered by certain vehicle parameters, e.g. exceeding a speed threshold
  • E05B 79/20 - Connections between movable lock parts using flexible connections, e.g. Bowden cables
  • E05B 83/24 - Locks for luggage compartments, car boot lids or car bonnets for car bonnets
  • E05B 85/24 - Bolts rotating about an axis
  • E05B 85/26 - Cooperation between bolts and detents
  • G06T 9/00 - Image coding
  • H04N 19/527 - Global motion vector estimation
  • H04N 19/56 - Motion estimation with initialisation of the vector search, e.g. estimating a good candidate to initiate a search
  • E05B 81/16 - Power-actuated vehicle locks characterised by the function or purpose of the powered actuators operating on locking elements for locking or unlocking action
  • F16H 59/10 - Range selector apparatus comprising levers
  • F16H 63/36 - Interlocking devices

18.

Systems and methods for player input motion compensation by anticipating motion vectors and/or caching repetitive motion vectors

      
Application Number 16366820
Grant Number 10595041
Status In Force
Filing Date 2019-03-27
First Publication Date 2019-07-18
Grant Date 2020-03-17
Owner ZeniMax Media Inc. (USA)
Inventor Kopietz, Michael

Abstract

Systems and methods for reducing latency through motion estimation and compensation techniques are disclosed. The systems and methods include a client device that uses transmitted lookup tables from a remote server to match user input to motion vectors, and tag and sum those motion vectors. When a remote server transmits encoded video frames to the client, the client decodes those video frames and applies the summed motion vectors to the decoded frames to estimate motion in those frames. In certain embodiments, the systems and methods generate motion vectors at a server based on predetermined criteria and transmit the generated motion vectors and one or more invalidators to a client, which caches those motion vectors and invalidators. The server instructs the client to receive input from a user, and use that input to match to cached motion vectors or invalidators. Based on that comparison, the client then applies the matched motion vectors or invalidators to effect motion compensation in a graphic interface. In other embodiments, the systems and methods cache repetitive motion vectors at a server, which transmits a previously generated motion vector library to a client. The client stores the motion vector library, and monitors for user input data. The server instructs the client to calculate a motion estimate from the input data and instructs the client to update the stored motion vector library based on the input data, so that the client applies the stored motion vector library to initiate motion in a graphic interface prior to receiving actual motion vector data from the server. In this manner, latency in video data streams is reduced.

IPC Classes  ?

  • H04N 7/12 - Systems in which the television signal is transmitted via one channel or a plurality of parallel channels, the bandwidth of each channel being less than the bandwidth of the television signal
  • H04N 19/513 - Processing of motion vectors
  • H04N 19/139 - Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
  • H04N 19/176 - 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 the region being a block, e.g. a macroblock
  • H04N 19/517 - Processing of motion vectors by encoding
  • A63F 13/358 - Adapting the game course according to the network or server load, e.g. for reducing latency due to different connection speeds between clients
  • H04N 19/162 - User input
  • H04N 19/44 - Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
  • H04N 19/107 - Selection of coding mode or of prediction mode between spatial and temporal predictive coding, e.g. picture refresh
  • H04N 19/172 - 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 the region being a picture, frame or field
  • A63F 13/35 - Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers - Details of game servers
  • A63F 13/40 - Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment
  • A63F 13/52 - Controlling the output signals based on the game progress involving aspects of the displayed game scene
  • H04N 19/527 - Global motion vector estimation

19.

Systems and methods for deferred post-processes in video encoding

      
Application Number 16355200
Grant Number 10841591
Status In Force
Filing Date 2019-03-15
First Publication Date 2019-07-11
Grant Date 2020-11-17
Owner Zenimax Media Inc. (USA)
Inventor Kopietz, Michael

Abstract

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.

IPC Classes  ?

  • H04N 7/12 - Systems in which the television signal is transmitted via one channel or a plurality of parallel channels, the bandwidth of each channel being less than the bandwidth of the television signal
  • H04N 19/156 - Availability of hardware or computational resources, e.g. encoding based on power-saving criteria
  • H04N 19/85 - Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
  • H04N 19/42 - Methods or arrangements for coding, decoding, compressing or decompressing digital video signals - characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
  • H04N 19/117 - Filters, e.g. for pre-processing or post-processing

20.

Systems and methods for rendering and pre-encoded load estimation based encoder hinting

      
Application Number 16254107
Grant Number 11202084
Status In Force
Filing Date 2019-01-22
First Publication Date 2019-05-23
Grant Date 2021-12-14
Owner ZeniMax Media Inc. (USA)
Inventor Kopietz, Michael

Abstract

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, and uses 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.

IPC Classes  ?

  • H04N 7/12 - Systems in which the television signal is transmitted via one channel or a plurality of parallel channels, the bandwidth of each channel being less than the bandwidth of the television signal
  • H04N 19/192 - Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding the adaptation method, adaptation tool or adaptation type being iterative or recursive
  • H04N 19/176 - 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 the region being a block, e.g. a macroblock
  • H04N 19/126 - Quantisation - Details of normalisation or weighting functions, e.g. normalisation matrices or variable uniform quantisers
  • H04N 19/146 - Data rate or code amount at the encoder output
  • H04N 19/124 - Quantisation
  • H04N 19/162 - User input
  • H04L 29/06 - Communication control; Communication processing characterised by a protocol
  • A63F 13/355 - Performing operations on behalf of clients with restricted processing capabilities, e.g. servers transform changing game scene into an MPEG-stream for transmitting to a mobile phone or a thin client
  • A63F 13/352 - Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers - Details of game servers involving special game server arrangements, e.g. regional servers connected to a national server or a plurality of servers managing partitions of the game world
  • A63F 13/86 - Watching games played by other players

21.

Systems and methods for player input motion compensation by anticipating motion vectors and/or caching repetitive motion vectors

      
Application Number 16201686
Grant Number 10595040
Status In Force
Filing Date 2018-11-27
First Publication Date 2019-04-25
Grant Date 2020-03-17
Owner ZeniMax Media Inc. (USA)
Inventor Kopietz, Michael

Abstract

Systems and methods for reducing latency through motion estimation and compensation techniques are disclosed. The systems and methods include a client device that uses transmitted lookup tables from a remote server to match user input to motion vectors, and tag and sum those motion vectors. When a remote server transmits encoded video frames to the client, the client decodes those video frames and applies the summed motion vectors to the decoded frames to estimate motion in those frames. In certain embodiments, the systems and methods generate motion vectors at a server based on predetermined criteria and transmit the generated motion vectors and one or more invalidators to a client, which caches those motion vectors and invalidators. The server instructs the client to receive input from a user, and use that input to match to cached motion vectors or invalidators. Based on that comparison, the client then applies the matched motion vectors or invalidators to effect motion compensation in a graphic interface. In other embodiments, the systems and methods cache repetitive motion vectors at a server, which transmits a previously generated motion vector library to a client. The client stores the motion vector library, and monitors for user input data. The server instructs the client to calculate a motion estimate from the input data and instructs the client to update the stored motion vector library based on the input data, so that the client applies the stored motion vector library to initiate motion in a graphic interface prior to receiving actual motion vector data from the server. In this manner, latency in video data streams is reduced.

IPC Classes  ?

  • H04N 7/12 - Systems in which the television signal is transmitted via one channel or a plurality of parallel channels, the bandwidth of each channel being less than the bandwidth of the television signal
  • H04N 19/513 - Processing of motion vectors
  • H04N 19/139 - Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
  • H04N 19/176 - 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 the region being a block, e.g. a macroblock
  • H04N 19/517 - Processing of motion vectors by encoding
  • A63F 13/358 - Adapting the game course according to the network or server load, e.g. for reducing latency due to different connection speeds between clients
  • H04N 19/162 - User input
  • H04N 19/44 - Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
  • H04N 19/107 - Selection of coding mode or of prediction mode between spatial and temporal predictive coding, e.g. picture refresh
  • H04N 19/172 - 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 the region being a picture, frame or field
  • A63F 13/35 - Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers - Details of game servers
  • A63F 13/40 - Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment
  • A63F 13/52 - Controlling the output signals based on the game progress involving aspects of the displayed game scene
  • H04N 19/527 - Global motion vector estimation

22.

Systems and methods for player input motion compensation by anticipating motion vectors and/or caching repetitive motion vectors

      
Application Number 15958979
Grant Number 10469867
Status In Force
Filing Date 2018-04-20
First Publication Date 2018-11-01
Grant Date 2019-11-05
Owner ZeniMax Media Inc. (USA)
Inventor Kopietz, Michael

Abstract

Systems and methods for reducing latency through motion estimation and compensation techniques are disclosed. The systems and methods include a client device that uses transmitted lookup tables from a remote server to match user input to motion vectors, and tag and sum those motion vectors. When a remote server transmits encoded video frames to the client, the client decodes those video frames and applies the summed motion vectors to the decoded frames to estimate motion in those frames. In certain embodiments, the systems and methods generate motion vectors at a server based on predetermined criteria and transmit the generated motion vectors and one or more invalidators to a client, which caches those motion vectors and invalidators. The server instructs the client to receive input from a user, and use that input to match to cached motion vectors or invalidators. Based on that comparison, the client then applies the matched motion vectors or invalidators to effect motion compensation in a graphic interface. In other embodiments, the systems and methods cache repetitive motion vectors at a server, which transmits a previously generated motion vector library to a client. The client stores the motion vector library, and monitors for user input data. The server instructs the client to calculate a motion estimate from the input data and instructs the client to update the stored motion vector library based on the input data, so that the client applies the stored motion vector library to initiate motion in a graphic interface prior to receiving actual motion vector data from the server. In this manner, latency in video data streams is reduced.

IPC Classes  ?

  • H04N 7/12 - Systems in which the television signal is transmitted via one channel or a plurality of parallel channels, the bandwidth of each channel being less than the bandwidth of the television signal
  • H04N 19/513 - Processing of motion vectors
  • H04N 19/139 - Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
  • H04N 19/176 - 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 the region being a block, e.g. a macroblock
  • H04N 19/517 - Processing of motion vectors by encoding
  • A63F 13/358 - Adapting the game course according to the network or server load, e.g. for reducing latency due to different connection speeds between clients
  • H04N 19/162 - User input
  • H04N 19/44 - Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
  • H04N 19/107 - Selection of coding mode or of prediction mode between spatial and temporal predictive coding, e.g. picture refresh
  • H04N 19/172 - 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 the region being a picture, frame or field
  • A63F 13/35 - Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers - Details of game servers
  • A63F 13/40 - Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment
  • A63F 13/52 - Controlling the output signals based on the game progress involving aspects of the displayed game scene
  • H04N 19/527 - Global motion vector estimation

23.

Systems and methods for game-generated motion vectors

      
Application Number 15958499
Grant Number 10567788
Status In Force
Filing Date 2018-04-20
First Publication Date 2018-10-25
Grant Date 2020-02-18
Owner ZeniMax Media Inc. (USA)
Inventor Kopietz, Michael

Abstract

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.

IPC Classes  ?

  • H04N 7/12 - Systems in which the television signal is transmitted via one channel or a plurality of parallel channels, the bandwidth of each channel being less than the bandwidth of the television signal
  • H04N 19/517 - Processing of motion vectors by encoding
  • G06T 15/00 - 3D [Three Dimensional] image rendering
  • H04N 19/61 - Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
  • H04N 19/537 - Motion estimation other than block-based
  • G06T 9/00 - Image coding
  • H04N 19/527 - Global motion vector estimation
  • H04N 19/56 - Motion estimation with initialisation of the vector search, e.g. estimating a good candidate to initiate a search

24.

Systems and methods for deferred post-processes in video encoding

      
Application Number 15958574
Grant Number 10271055
Status In Force
Filing Date 2018-04-20
First Publication Date 2018-10-25
Grant Date 2019-04-23
Owner Zenimax Media Inc. (USA)
Inventor Kopietz, Michael

Abstract

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.

IPC Classes  ?

  • H04N 7/12 - Systems in which the television signal is transmitted via one channel or a plurality of parallel channels, the bandwidth of each channel being less than the bandwidth of the television signal
  • H04N 19/156 - Availability of hardware or computational resources, e.g. encoding based on power-saving criteria
  • H04N 19/85 - Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
  • H04N 19/42 - Methods or arrangements for coding, decoding, compressing or decompressing digital video signals - characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
  • H04N 19/117 - Filters, e.g. for pre-processing or post-processing

25.

Systems and methods for player input motion compensation by anticipating motion vectors and/or caching repetitive motion vectors

      
Application Number 15959076
Grant Number 10341678
Status In Force
Filing Date 2018-04-20
First Publication Date 2018-10-25
Grant Date 2019-07-02
Owner ZeniMax Media Inc. (USA)
Inventor Kopietz, Michael

Abstract

Systems and methods for reducing latency through motion estimation and compensation techniques are disclosed. The systems and methods include a client device that uses transmitted lookup tables from a remote server to match user input to motion vectors, and tag and sum those motion vectors. When a remote server transmits encoded video frames to the client, the client decodes those video frames and applies the summed motion vectors to the decoded frames to estimate motion in those frames. In certain embodiments, the systems and methods generate motion vectors at a server based on predetermined criteria and transmit the generated motion vectors and one or more invalidators to a client, which caches those motion vectors and invalidators. The server instructs the client to receive input from a user, and use that input to match to cached motion vectors or invalidators. Based on that comparison, the client then applies the matched motion vectors or invalidators to effect motion compensation in a graphic interface. In other embodiments, the systems and methods cache repetitive motion vectors at a server, which transmits a previously generated motion vector library to a client. The client stores the motion vector library, and monitors for user input data. The server instructs the client to calculate a motion estimate from the input data and instructs the client to update the stored motion vector library based on the input data, so that the client applies the stored motion vector library to initiate motion in a graphic interface prior to receiving actual motion vector data from the server. In this manner, latency in video data streams is reduced.

IPC Classes  ?

  • H04N 7/12 - Systems in which the television signal is transmitted via one channel or a plurality of parallel channels, the bandwidth of each channel being less than the bandwidth of the television signal
  • H04N 19/513 - Processing of motion vectors
  • H04N 19/139 - Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
  • H04N 19/176 - 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 the region being a block, e.g. a macroblock
  • H04N 19/517 - Processing of motion vectors by encoding
  • A63F 13/358 - Adapting the game course according to the network or server load, e.g. for reducing latency due to different connection speeds between clients
  • H04N 19/107 - Selection of coding mode or of prediction mode between spatial and temporal predictive coding, e.g. picture refresh
  • H04N 19/172 - 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 the region being a picture, frame or field
  • A63F 13/35 - Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers - Details of game servers
  • A63F 13/40 - Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment
  • A63F 13/52 - Controlling the output signals based on the game progress involving aspects of the displayed game scene
  • H04N 19/162 - User input
  • H04N 19/44 - Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
  • H04N 19/527 - Global motion vector estimation

26.

Systems and methods for rendering and pre-encoded load estimation based encoder hinting

      
Application Number 15958610
Grant Number 10362320
Status In Force
Filing Date 2018-04-20
First Publication Date 2018-10-25
Grant Date 2019-07-23
Owner ZeniMax Media Inc. (USA)
Inventor Kopietz, Michael

Abstract

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 short-term trends in frame time, and uses 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.

IPC Classes  ?

  • H04N 19/192 - Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding the adaptation method, adaptation tool or adaptation type being iterative or recursive
  • H04N 19/176 - 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 the region being a block, e.g. a macroblock
  • H04N 19/126 - Quantisation - Details of normalisation or weighting functions, e.g. normalisation matrices or variable uniform quantisers
  • H04N 19/146 - Data rate or code amount at the encoder output
  • A63F 13/86 - Watching games played by other players
  • H04L 29/06 - Communication control; Communication processing characterised by a protocol
  • H04N 19/124 - Quantisation
  • H04N 19/162 - User input

27.

Systems and methods for rendering and pre-encoded load estimation based encoder hinting

      
Application Number 15958647
Grant Number 10225564
Status In Force
Filing Date 2018-04-20
First Publication Date 2018-10-25
Grant Date 2019-03-05
Owner ZENIMAX MEDIA INC (USA)
Inventor Kopietz, Michael

Abstract

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, and uses 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.

IPC Classes  ?

  • H04N 7/12 - Systems in which the television signal is transmitted via one channel or a plurality of parallel channels, the bandwidth of each channel being less than the bandwidth of the television signal
  • H04N 19/192 - Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding the adaptation method, adaptation tool or adaptation type being iterative or recursive
  • H04N 19/176 - 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 the region being a block, e.g. a macroblock
  • H04N 19/126 - Quantisation - Details of normalisation or weighting functions, e.g. normalisation matrices or variable uniform quantisers
  • H04N 19/146 - Data rate or code amount at the encoder output
  • A63F 13/86 - Watching games played by other players
  • H04L 29/06 - Communication control; Communication processing characterised by a protocol
  • H04N 19/124 - Quantisation
  • H04N 19/162 - User input

28.

Systems and methods for player input motion compensation by anticipating motion vectors and/or caching repetitive motion vectors

      
Application Number 15958919
Grant Number 10148978
Status In Force
Filing Date 2018-04-20
First Publication Date 2018-10-25
Grant Date 2018-12-04
Owner ZeniMax Media Inc. (USA)
Inventor Kopietz, Michael

Abstract

Systems and methods for reducing latency through motion estimation and compensation techniques are disclosed. The systems and methods include a client device that uses transmitted lookup tables from a remote server to match user input to motion vectors, and tag and sum those motion vectors. When a remote server transmits encoded video frames to the client, the client decodes those video frames and applies the summed motion vectors to the decoded frames to estimate motion in those frames. In certain embodiments, the systems and methods generate motion vectors at a server based on predetermined criteria and transmit the generated motion vectors and one or more invalidators to a client, which caches those motion vectors and invalidators. The server instructs the client to receive input from a user, and use that input to match to cached motion vectors or invalidators. Based on that comparison, the client then applies the matched motion vectors or invalidators to effect motion compensation in a graphic interface. In other embodiments, the systems and methods cache repetitive motion vectors at a server, which transmits a previously generated motion vector library to a client. The client stores the motion vector library, and monitors for user input data. The server instructs the client to calculate a motion estimate from the input data and instructs the client to update the stored motion vector library based on the input data, so that the client applies the stored motion vector library to initiate motion in a graphic interface prior to receiving actual motion vector data from the server. In this manner, latency in video data streams is reduced.

IPC Classes  ?

  • H04N 7/12 - Systems in which the television signal is transmitted via one channel or a plurality of parallel channels, the bandwidth of each channel being less than the bandwidth of the television signal
  • H04N 19/513 - Processing of motion vectors
  • H04N 19/176 - 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 the region being a block, e.g. a macroblock
  • H04N 19/517 - Processing of motion vectors by encoding
  • H04N 19/139 - Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
  • H04N 19/107 - Selection of coding mode or of prediction mode between spatial and temporal predictive coding, e.g. picture refresh
  • H04N 19/172 - 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 the region being a picture, frame or field

29.

Systems and methods for encoder-guided adaptive-quality rendering

      
Application Number 15959069
Grant Number 10313679
Status In Force
Filing Date 2018-04-20
First Publication Date 2018-10-25
Grant Date 2019-06-04
Owner ZeniMaz Media Inc. (USA)
Inventor Kopietz, Michael

Abstract

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. The lookup table is used to generate a rendered image at a substantially identical perceived quality to an encoded frame during gameplay.

IPC Classes  ?

  • H04N 19/172 - 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 the region being a picture, frame or field
  • G06T 15/00 - 3D [Three Dimensional] image rendering
  • A63F 13/30 - Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
  • H04N 19/124 - Quantisation
  • A63F 13/52 - Controlling the output signals based on the game progress involving aspects of the displayed game scene
  • A63F 13/355 - Performing operations on behalf of clients with restricted processing capabilities, e.g. servers transform changing game scene into an MPEG-stream for transmitting to a mobile phone or a thin client
  • H04N 19/154 - Measured or subjectively estimated visual quality after decoding, e.g. measurement of distortion

30.

Game for portable devices or other gaming devices

      
Application Number 13918498
Grant Number 09526988
Status In Force
Filing Date 2013-06-14
First Publication Date 2013-12-19
Grant Date 2016-12-27
Owner ZENIMAX MEDIA INC. (USA)
Inventor
  • Tardif, Marc A.
  • Mustaine, Thomas W.

Abstract

A method includes displaying an obscured first image to a first user, where the first image is associated with a first alpha-numeric string. The method also includes generating a score based on an amount of the first image revealed or not revealed and whether the first user is able to successfully identify the first alpha-numeric string. The method may further include revealing at least a portion of the first image to the first user and receiving user input defining at least the portion of the first image revealed to the first user. The user input could include one or more swipes across a touchscreen that displays the obscured first image.

IPC Classes  ?

  • A63F 9/00 - Games not otherwise provided for
  • A63F 13/46 - Computing the game score
  • G07F 17/32 - Coin-freed apparatus for hiring articles; Coin-freed facilities or services for games, toys, sports, or amusements
  • A63F 13/00 - Video games, i.e. games using an electronically generated display having two or more dimensions
  • A63F 13/2145 - Input arrangements for video game devices characterised by their sensors, purposes or types for locating contacts on a surface, e.g. floor mats or touch pads the surface being also a display device, e.g. touch screens
  • A63F 13/213 - Input arrangements for video game devices characterised by their sensors, purposes or types comprising photodetecting means, e.g. cameras, photodiodes or infrared cells