IP Library Granted Patent US 10,835,819
Granted Patent B2
US 10,835,819 · App. 15/883,694 · Granted Nov 17, 2020

Add-on management methods

Inventors: Andrew Buchanan Gault (Newport Beach, CA); Rui Filipe Andrade Pereira (Aliso, CA); David Perry (Monarch Beach, CA)
Assignee: Sony Interactive Entertainment America LLC
A63F13/355A63F13/60A63F13/77A63F13/79H04L67/38H04N21/241H04N21/25808H04N21/4781A63F2300/209A63F2300/538A63F2300/552G06F9/44521G06F9/44526H04L65/602
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,835,819
App. No.
15/883,694
Granted
Nov 17, 2020
Kind
B2
Abstract

A computing system is configured to execute a computer program on a server and to provide a video stream of the program output to a geographically remote client over a communication network. An add-on manager is provided to facilitate the use of add-ons to extend the functionality of the computer program. The add-on manager is responsive to commands received from the client and is configured to associate individual add-ons and add-on data with specific user accounts. The add-ons can be located on the server or some other location remote from the client.

Claims (94)

1. A method of executing an add-on program, the method comprising:

generating video data of a gaming application executing on game logic responsive to one or more gaming input commands from a sharing player, wherein the game logic is executing on a sharing computer for game play of the sharing player, wherein the sharing player is sharing the game play with one or more remote users;

sending the video data to a first encoder to generate a first video stream for a first remote computer of a first remote user, wherein the first encoder is configured for:

accessing first overlay data, wherein the first overlay data is generated by a first add-on program executing on the sharing computer; and

adding the first overlay data to the video data when generating the first video stream; and

sending the first video stream including the video data augmented with the first overlay data to the first remote computer;

receiving an add-on input command from the first remote computer; and

executing the add-on input command by the first add-on program to generate a portion of the first overlay data.

2. The method of claim 1 , further comprising:

sending the video data to a second encoder to generate a second video stream for a second remote computer of a second remote user, wherein the second encoder is configured for:

accessing second overlay data, wherein the second overlay data is generated by a second add-on program executing on the sharing computer; and

adding the second overlay data to the video data when generating the second video stream; and

sending the second video stream including the video data augmented with the second overlay data to the second remote computer.

3. The method of claim 2 , wherein the first encoder is configured for:

executing the first add-on program to generate a first overlay responsive to one or more add-on input commands received from the first remote computer; and

applying the first overlay to a first video frame of the video data when generating the first video stream; and

wherein the second encoder is configured for:

executing the second add-on program to generate a second overlay responsive to one or more add-on input commands received from the second remote computer; and

applying the second overlay to a second video frame of the video data when generating the second video stream.

4. The method of claim 3 , wherein the first video frame and the second video frame are identical.

5. The method of claim 2 , wherein the first and second add-on programs are identical.

6. The method of claim 1 , further comprising:

sending the first video stream to the sharing computer of the sharing player.

7. The method of claim 1 , further comprising:

receiving the add-on input command from the first remote computer at the game logic;

determining by the game logic if the add-on input command is for the game logic or for the first add-on program; and

executing the add-on input command by the first add-on program when the add-on input command is for the first add-on program or executing the add-on input command by the game logic when the add-on input command is for the game logic.

8. The method of claim 7 , further comprising:

sending over a network the add-on input command via an application programming interface (API) of the game logic in communication with an API of the first add-on program; and

accessing the first overlay data from storage, wherein the storage is located remote from the sharing computer and accessible by the first add-on program and accessible by the first encoder.

9. A computer system comprising:

a processor; and

memory coupled to the processor and having stored therein instructions that, if executed by the computer system, cause the computer system to execute a method for executing an add-on program comprising:

generating video data of a gaming application executing on game logic responsive to one or more gaming input commands from a sharing player, wherein the game logic is executing on the computer system configured as a sharing computer for game play of the sharing player, wherein the sharing player is sharing the game play with one or more remote users;

sending the video data to a first encoder to generate a first video stream for a first remote computer of a first remote user, wherein the first encoder is configured for:

accessing first overlay data, wherein the first overlay data is generated by a first add-on program executing on the sharing computer; and

adding the first overlay data to the video data when generating the first video stream; and

sending the first video stream including the video data augmented with the first overlay data to the first remote computer;

receiving an add-on input command from the first remote computer; and

executing the add-on input command by the first add-on program to generate a portion of the first overlay data.

10. The computer system of claim 9 , wherein the method further comprises:

sending the video data to a second encoder to generate a second video stream for a second remote computer of a second remote user, wherein the second encoder is configured for:

accessing second overlay data, wherein the second overlay data is generated by a second add-on program executing in response to one or more add-on input commands received from the second remote computer in association with the second remote user; and

applying the second overlay data to the video data when generating the second video stream; and

sending the second video stream including the video data augmented with the second overlay data to the second remote computer.

11. The computer system of claim 10 , wherein the first encoder is configured for:

executing the first add-on program to generate a first overlay responsive to one or more add-on input commands received from the first remote computer; and

applying the first overlay to a first video frame of the video data when generating the first video stream; and

wherein the second encoder is configured for:

executing the second add-on program to generate a second overlay responsive to the one or more add-on input commands received from the second remote computer; and

applying the second overlay to a second video frame of the video data when generating the second video stream.

12. The computer system of claim 11 , wherein the method further comprises:

executing the first add-on program at the sharing computer; and

executing the second add-on program at the sharing computer.

13. The method of claim 9 , wherein the method further comprises:

receiving the add-on input command at the game logic;

determining by the game logic if the add-on input command is for the game logic or for the first add-on program; and

executing the add-on input command by the first add-on program when the add-on input command is for the first add-on program or executing the add-on input command by the game logic when the add-on input command is for the game logic.

14. A non-transitory computer-readable medium storing a computer program for executing an add-on program, the computer-readable medium comprising:

program instructions for generating video data of a gaming application executing on game logic responsive to one or more gaming input commands from a sharing player, wherein the game logic is executing on a sharing computer for game play of the sharing player, wherein the sharing player is sharing the game play with one or more remote users;

program instructions for sending the video data to a first encoder to generate a first video stream for a first remote computer of a first remote user, wherein the first encoder is configured with:

program instructions for accessing first overlay data, wherein the first overlay data is generated by a first add-on program executing on the sharing computer; and

program instructions for adding the first overlay data to the video data when generating the first video stream; and

program instructions for sending the first video stream including the video data augmented with the first overlay data to the first remote computer;

program instructions for receiving an add-on input command from the first remote computer; and

program instructions for executing the add-on input command by the first add-on program to generate a portion of the first overlay data.

15. The computer-readable medium of claim 14 , further comprising:

program instructions for sending the video data to a second encoder to generate a second video stream for a second remote computer of a second remote user, wherein the second encoder is configured with:

program instructions for accessing second overlay data, wherein the second overlay data is generated by a second add-on program executing on the sharing computer; and

program instructions for adding the second overlay data to the video data when generating the second video stream; and

program instructions for sending the second video stream including the video data augmented with the second overlay data to the second remote computer.

16. The computer-readable medium of claim 15 , wherein the first encoder is configured with:

program instructions for executing the first add-on program to generate a first overlay responsive to one or more add-on input commands received from the first remote computer;

program instructions for applying the first overlay to a first video frame of the video data when generating the first video stream; and

wherein the second encoder is configured with:

program instructions for executing the second add-on program to generate a second overlay responsive to one or more add-on input commands received from the second remote computer;

program instructions for applying the second overlay to a second video frame of the video data when generating the second video stream.

17. The computer-readable medium of claim 16 , wherein the first video frame and the second video frame are identical.

18. The computer-readable medium of claim 14 , further comprising:

program instructions for receiving the add-on input command from the first remote computer at the game logic;

program instructions for determining by the game logic if the add-on input command is for the game logic or for the first add-on program; and

program instructions for executing the add-on input command by the first add-on program when the first add-on input command is for the first add-on program or executing the add-on input command by the game logic when the add-on input command is for the game logic.

19. A method of executing an add-on program, the method comprising:

generating audio data of a gaming application executing on game logic responsive to one or more gaming input commands from a sharing player, wherein the game logic is executing on a sharing computer for game play of the sharing player, wherein the sharing player is sharing the game play with one or more remote users;

sending the audio data to a first encoder to generate a first audio stream for a first remote computer of a first remote user, wherein the first encoder is configured for:

accessing first overlay data, wherein the first overlay data is generated by a first add-on program executing on the sharing computer; and

adding the first overlay data to the audio data when generating the first audio stream;

sending the audio data to a second encoder to generate a second audio stream for a second remote computer of a second remote user, wherein the second encoder is configured for:

accessing second overlay data, wherein the second overlay data is generated by a second add-on program executing in response to one or more add-on input commands received from the second remote computer in association with the second remote user; and

applying the second overlay data to the audio data when generating the second audio stream;

sending the first audio stream including the audio data augmented with the first overlay data to the first remote computer; and

sending the second audio stream including the audio data augmented with the second overlay data to the second remote computer;

receiving an add-on input command from the first remote computer; and

executing the add-on input command by the first add-on program to generate a portion of the first overlay data.

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 13231883 · Sep 13, 2011
Provisional Application 61382470 · Sep 13, 2010
Related Publication 20180154256A1 · Jun 7, 2018
Cited By (1)
US 12,307,548