IP Library Granted Patent US 10,918,939
Granted Patent B2
US 10,918,939 · App. 16/533,694 · Granted Feb 16, 2021

System and method for streaming game video

Inventors: Stephen G. Perlman (Palo Alto, CA); Roger van der Laan (Menlo Park, CA); Timothy Cotter (Sunnyvale, CA); Scott Furman (Menlo Park, CA); Robert McCool (Menlo Park, CA); Ian Buckley (San Carlos, CA)
Assignee: Sony Interactive Entertainment LLC
A63F13/355A63F13/12A63F13/33A63F13/35A63F13/358A63F13/49A63F13/493A63F13/50H04L65/403H04L65/4076H04L65/605H04L67/38H04N19/107H04N19/132H04N19/146H04N19/169H04N19/172H04N19/188H04N19/436H04N19/61H04N21/233H04N21/2343H04N21/2381H04N21/4781H04N21/6125H04N21/6377H04N21/6405H04N21/658H04N21/6587A63F2300/402A63F2300/407A63F2300/534A63F2300/552A63F2300/554A63F2300/556A63F2300/572A63F2300/577A63F2300/636A63F2300/69H04N7/106
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,918,939
App. No.
16/533,694
Granted
Feb 16, 2021
Kind
B2
Abstract

A system and method are described for managing the state of an online video game. A method includes initiating a new online video game in response to user input from a client device, the online video game being in a first state on a first server when initiated; executing the online video game on the server, thereby causing the online video game to enter a second state; pausing or terminating the online video game; determining differences between the first state and the second state and generating difference data containing the differences; transmitting the difference data over a network to a second server; and recreating the second state from the difference data and the first state in response to user input indicating that the user wishes to resume the online video game and in response to the second server being selected as the server on which to execute the video game.

Claims (42)

1. A server computing system, comprising:

a processor configured to execute a game application in accordance with signals received from a client computing device to generate a sequence of video images corresponding to graphical output of the executed game application;

a network connection configured to connect the server computing system to a network over which data is transmittable to and from the server computing system, the client computing device and the server computing system in data communication over the network;

a data storage device; and

an encoder configured to compress the sequence of video images corresponding to graphical output of the executed game application into a first format and a second format, the first format providing for a lower data transmission latency over the network relative to the second format, the second format providing for higher quality graphical output of the executed game application relative to the first format, the server computing system configured to direct the sequence of video images in the first format to the network connection for transmission to the client computing device, the server computing system configured to direct storage of the sequence of video images in the second format on the data storage device.

2. The server computing system as recited in claim 1 , wherein the server computing system is configured to direct the sequence of video images in the second format from the data storage device to the network connection for transmission to a requesting computing device.

3. The server computing system as recited in claim 2 , wherein the requesting computing device is different from the client computing device.

4. The server computing system as recited in claim 3 , wherein the server computing system is configured to direct the sequence of video images in the second format to the requesting computing device as a spectator video stream.

5. The server computing system as recited in claim 4 , wherein the server computing system is configured to receive message data at the network connection from the requesting computing device, wherein the server computing system is configured to integrate the message data with the sequence of video images in the first format as directed to the network connection for transmission to the client computing device.

6. The server computing system as recited in claim 5 , wherein the encoder is configured to overlay the message data on the sequence of video images in the first format.

7. The server computing system as recited in claim 5 , wherein the server computing system is configured to integrate the message data with the sequence of video images in the second format in the spectator video stream.

8. The server computing system as recited in claim 7 , wherein the encoder is configured to overlay the message data on the sequence of video images in the second format.

9. The server computing system as recited in claim 2 , wherein the requesting computing device is the client computing device.

10. The server computing system as recited in claim 9 , wherein the server computing system is configured to direct the sequence of video images in the second format to the client computing device as a playback video stream.

11. The server computing system as recited in claim 1 , wherein the server computing system is configured to direct the sequence of video images in the first format as an active player video stream to the client computing device.

12. The server computing system as recited in claim 1 , wherein the server computing system is configured to receive client video data and client audio data from the client computing device through the network connection, wherein the server computing system is configured to integrate the client video data and the client audio data with the sequence of video images in the second format as stored on the data storage device to create a spectator video stream, and wherein the server computing system is configured to direct the spectator video stream to the network connection for transmission to a requesting computing device.

13. The server computing system as recited in claim 12 , wherein the encoder is configured to overlay the client video data on the sequence of video images in the second format as stored on the data storage device to create the spectator video stream.

14. The server computing system as recited in claim 13 , wherein the encoder is configured to compress the client video data into the second format for overlay of the client video data on the sequence of video images in the second format.

15. The server computing system as recited in claim 12 , wherein the server computing system is configured to include the spectator video stream as one of multiple interaction-selectable video streams within a single user interface video stream.

16. A method for providing game video from a server computing system, comprising:

executing a game application on a server computing system in accordance with signals received from a client computing device to generate a sequence of video images corresponding to graphical output of the executed game application;

compressing the sequence of video images corresponding to graphical output of the executed game application into a first format and a second format, the first format providing for a lower data transmission latency over a network relative to the second format, the second format providing for higher quality graphical output of the executed game application relative to the first format;

transmitting the sequence of video images in the first format over the network to the client computing device; and

storing the sequence of video images in the second format on a data storage device accessible by the server computing system.

17. The method as recited in claim 16 , further comprising:

receiving a request for a spectator video stream of the game application from a requesting computing device;

retrieving the sequence of video images in the second format from the data storage device; and

transmitting the sequence of video images in the second format over the network to the requesting computing device as the spectator video stream.

18. The method as recited in claim 17 , further comprising:

receiving message data; and

integrating the message data with the sequence of video images in the second format prior to transmitting the sequence of video images in the second format over the network to the requesting computing device.

19. The method as recited in claim 16 , further comprising:

receiving message data; and

integrating the message data with the sequence of video images in the first format prior to transmitting the sequence of video images in the first format over the network to the client computing device.

20. The method as recited in claim 16 , further comprising:

receiving a request for a playback video stream of the game application from the client computing device;

retrieving the sequence of video images in the second format from the data storage device; and

transmitting the sequence of video images in the second format over the network to the client computing device as the playback video stream.

21. The method as recited in claim 16 , further comprising:

receiving client video data and client audio data from the client computing device;

integrating the client video data and the client audio data with the sequence of video images in the second format as stored on the data storage device to create a spectator video stream; and

transmitting the spectator video stream over the network to a requesting computing device.

Continuity (6)
Continuation 15614586 · Jun 5, 2017
Continuation 15097207 · Apr 12, 2016
Continuation 14862042 · Sep 22, 2015
Continuation 12538077 · Aug 7, 2009
Provisional Application 61210888 · Mar 23, 2009
Related Publication 20190358539A1 · Nov 28, 2019