IP Library Granted Patent US 11,413,546
Granted Patent B2
US 11,413,546 · App. 16/274,214 · Granted Aug 16, 2022

Methods for streaming online games using cloud servers and shared compression

Inventors: Roger van der Laan (Menlo Park, CA); Stephen G. Perlman (Palo Alto, CA)
Assignee: Sony Interactive Entertainment LLC
A63F13/87A63F13/20A63F13/30A63F13/33A63F13/335A63F13/35A63F13/352A63F13/355A63F13/358A63F13/533A63F13/86H04L65/4015H04L65/4076H04L65/4084H04L65/604H04L65/605H04L65/607H04L65/608H04L67/36H04L67/38H04N19/107H04N19/146H04N19/172H04N19/174H04N21/21H04N21/2143H04N21/226H04N21/23H04N21/23805H04N21/4781H04N21/6125A63F13/49A63F13/525A63F2300/402A63F2300/513A63F2300/538A63F2300/552H04N7/106H04N19/154H04N19/167H04N19/188H04N19/61H04N19/66H04W28/16H04W84/12H04W88/14
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 11,413,546
App. No.
16/274,214
Granted
Aug 16, 2022
Kind
B2
Abstract

A system and method are described for an online game service. One method includes receiving a request from a client device interacting with a game application. The request is received by a server of the online game service. Then, receiving a control signal from the client device in response to an input made when interacting with the game application. The control signal is transmitted over a communication channel between the client device and the server. Executing a game associated with the game application by the server to generate a video stream comprising a sequence of images. Compressing the sequence of images of the application in accordance with a compression process to generate a compressed sequence of images using a compression resource used by said server and at least one other server of said online game service. The compression resource includes compression hardware or hardware running software that handles the compression of sequences of images for each of the servers executing games for the online game service. A state of each compressing operation processed for each of the servers is stored to enable the compression resource to take input from at least two of the servers and switch context of taking said input from among the two or more servers as the compression resource cycles taking input from among said respective two or more servers. And, sending respective compressed sequences of images to the client device or other client devices using the online game service via outbound routing that processes output of said compression resource.

Claims (34)

1. A computer-implemented method, comprising:

receiving a request from a client device interacting with a game application, the request being received by a server of an online game service;

receiving a control signal from the client device in response to an input made via the client device of a user when the user is interacting with the game application, the control signal being transmitted over a communication channel between the client device and the server;

executing the game application and said control signal by the server to generate a video stream comprising a sequence of images;

compressing the sequence of images of the application in accordance with a compression process to generate a compressed sequence of images using a shared compression resource used by said server and at least one other server of said online game service, the shared compression resource is a single compressor that includes compression hardware or hardware running software that handles the compression of sequences of images for each of the servers executing games for the online game service, wherein a state of each compressing operation processed for each of the servers is stored and the shared compression resource takes input from at least two of the servers and switch context of taking said input from the two or more servers as the single compressor cycles taking input from among said respective two or more servers that are generating respective video streams; and

transmitting respective compressed sequences of images to the client device or other client devices using the online game service via outbound routing that processes output of said shared compression resource;

wherein the shared compression resource is configured to operate in accordance with a compression parameter that defines a level of compression, the level of compression is separately set for each respective video stream based on a data rate between a respective client and a corresponding server of the online game service.

2. The method of claim 1 , wherein the online game service is configured to serve access to a plurality of games, each of the games being executed by servers associated with the online game service, and said two or more servers are configured to use one or more of said shared compression resource.

3. The method of claim 1 , wherein said online game service is configured to store program code for a plurality of games and execute the program code on said one or more servers of the online game service.

4. The method of claim 1 , further comprising,

examining the data rate using the transmitted compressed sequence of images sent to the respective clients, and

adjusting the level of compression based on the examining.

5. The method of claim 4 , wherein the level of compression is increased when the examining determines that the data rate has fallen below a predetermined level.

6. The method of claim 4 , wherein the level of compression is decreased when the examining determines that the data rate has increased above a predetermined level.

7. The method of claim 4 , wherein the level of compression is adjusted based on a latency being above or below one or more thresholds.

8. The method of claim 4 , wherein adjusting the level of compression acts to modify a transmitted frame rate of the compressed sequence of images.

9. The method of claim 1 , wherein the level of compression is configured to modify an image resolution of at least one of the compressed sequence of images, and instructing the client device or one of said other client devices to scale the at least one of the compressed sequence of images to maintain an image size on a display associated with the client device.

10. The method of claim 1 , wherein the game application provides an interface on the client device for accessing the online game service and for selecting the game or other games to play in a streaming format, such that the one or more servers of the online game service executes the game or other games and transmits said respective compressed sequences of images to the client device or other client devices for presentation via respective display screens.

11. A computer-implemented method, comprising:

receiving a request from a client device interacting with a game application, the request being received by a server of an online game service;

receiving a control signal from the client device in response to an input made when interacting with the game application, the control signal being transmitted over a communication channel between the client device and the server;

executing the game application and said control signal by the server to generate a video stream comprising a sequence of images;

compressing the sequence of images of the application in accordance with a compression process to generate a compressed sequence of images using a compression resource used by said server and at least one other server of said online game service, the compression resource is a single compressor that includes compression hardware or hardware running software that handles the compression of sequences of images for each of the servers executing games for the online game service, wherein a state of each compressing operation processed for each of the servers is stored and the compression resource takes input from at least two of the servers and switch context of taking said input from among the two or more servers as the single compressor cycles taking input from among said respective two or more servers that are generating respective video streams; and

sending respective compressed sequences of images to the client device or other client devices using the online game service via outbound routing that processes output of said compression resource;

wherein the shared compression resource is configured to operate in accordance with a compression parameter that defines a level of compression, the level of compression is separately set for each respective video stream based on a data rate between a respective client and a corresponding server of the online game service.

12. The method of claim 11 , wherein the online game service is configured to serve access to the game that is one of a plurality of games, each of the games being executed by servers associated with the online game service, and said two or more servers are configured to use one or more of said compression resource.

13. The method of claim 12 , wherein said online game service is configured to store program code for the plurality of games and execute the program code on said one or more servers of the online game service.

14. The method of claim 11 , further comprising,

examining the data rate using the transmitted compressed sequence of images sent to the respective clients, and

adjusting the level of compression based on the examining.

15. The method of claim 14 , wherein the level of compression is increased when the examining determines that the data rate has fallen below a predetermined level.

16. The method of claim 14 , wherein the level of compression is decreased when the examining determines that the data rate has increased above a predetermined level.

17. The method of claim 11 , wherein the level of compression is adjusted based on a latency being above or below one or more thresholds.

18. The method of claim 11 , wherein the game application provides an interface on the client device for accessing the online game service and for selecting the game or other games to play in a streaming format, such that the one or more servers of the online game service executes the game or other games and transmits said respective compressed sequences of images to the client device or other client devices for presentation via respective display screens.

Assignments (1)
MERGER Recorded Mar 30, 2020
From: SONY INTERACTIVE ENTERTAINMENT AMERICA LLC
To: SONY INTERACTIVE ENTERTAINMENT LLC
Reel/Frame 053323/0567 →
Continuity (3)
Continuation 12359226 · Jan 23, 2009
Continuation 11999474 · Dec 5, 2007
Related Publication 20190224577A1 · Jul 25, 2019