# US 10,455,198 B1 · In-content security camera data streaming

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 10,455,198 B1
- Document ID: US10455198B1
- Status: Granted
- Kind: B1
- Application number: 14/958,880
- Filed: 2015-12-03
- Granted: 2019-10-22
- Earliest claimed: 2015-12-03
- Assignees: Amazon Technologies, Inc.
- Applicants: Amazon Technologies, Inc.
- Inventors: Mark Lester Florentino; Francis Xavier Surjo-Subagio
- Web page: https://patentgrep.com/patent/US10455198B1

## CPC

- A63F 13/355: Performing operations on behalf of clients with restricted processing capabilities, e.g. servers transform changing game scene into an encoded video stream for transmitting to a mobile phone or a thin client
- H04N 7/181: {for receiving images from a plurality of remote sources}
- A63F 13/5255: according to dedicated instructions from a player, e.g. using a secondary joystick to rotate the camera around a player's character
- A63F 13/71: using secure communication between game devices and game servers, e.g. by encrypting game data or authenticating players
- A63F 13/86: Watching games played by other players
- A63F 13/87: Communicating with other players during game play, e.g. by e-mail or chat
- G06F 3/04883: for inputting data by handwriting, e.g. gesture or text
- G06T 19/006: {Mixed reality (object pose determination, tracking or camera calibration for mixed reality G06T7/00)}
- H04N 5/268: Signal distribution or switching
- H04N 23/58: Means for changing the camera field of view without moving the camera body, e.g. nutating or panning of optics or image sensors
- A63F: CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- G06T: IMAGE DATA PROCESSING OR GENERATION, IN GENERAL

## Abstract

In some examples, a security camera may be inserted into an executing content item, such as a multi-player video game. The security camera may be associated with a particular participant, such as a player, of the video game or other content item. In some examples, image data, such as video data, associated with the security camera may be rendered by one or more components that are remote from the associated participant, such as one or more remote servers. The remotely rendered security camera image data may then be transmitted to the participant over one or more communications networks, such as by using streaming content delivery techniques. Also, in some examples, audio data associated with the security camera may also be remotely rendered and transmitted in combination with the security camera image data.

## Claims

### Claim 1

A computing system for client-controlled streaming transmission of a plurality of server-rendered security camera views of a virtual area of a video game comprising:
one or more processors; and
one or more memories having stored therein instructions that, upon execution by the one or more processors, cause the computing system to perform computing operations comprising:
rendering, by a first renderer executing on one or more servers, first image data associated with a first server-rendered security camera view of the virtual area of the video game;
inserting, into a first data stream, the first image data associated with the first server-rendered security camera view;
transmitting, to a broadcaster client and one or more spectator clients, the first data stream including the first image data associated with the first server-rendered security camera view, wherein the broadcaster client controls presentation of the first data stream to the one or more spectator clients, and wherein the broadcaster client temporarily grants rights or permissions to at least one of the one or more spectator clients to perform one or more security camera control operations;
receiving, from the broadcaster client or the at least one of the one or more spectator clients, instructions to switch the first data stream from the first server-rendered security camera view to a second server-rendered security camera view of the virtual area of the video game;
rendering, by a second renderer executing on one or more servers, second image data associated with the second server-rendered security camera view;
in response to the receiving the instructions:
inserting, into the first data stream, the second image data associated with the second server-rendered security camera view;
ceasing to insert, into the first data stream, the first image data associated with the first server-rendered security camera view; and
transmitting, to the broadcaster client and the one or more spectator clients, the first data stream including the second image data associated with the second server-rendered security camera view.

### Claim 2 (depends on 1)

The computing system of claim 1, wherein the computing operations further comprise receiving, from the broadcaster client, instructions to adjust one or more parameters of the first server-rendered security camera view and responsively adjusting the one or more parameters.

### Claim 3 (depends on 2)

The computing system of claim 2, wherein the one or more parameters comprise information regarding at least one of location, direction, angle, pan, tilt, zoom, or field of view.

### Claim 4 (depends on 1)

The computing system of claim 1, wherein the instructions to switch the first data stream are received using chat functionality.

### Claim 5

A method for client-controlled streaming transmission of a plurality of server-rendered views of a virtual area of a video game comprising:
rendering, by a first renderer executing on one or more servers, first image data associated with a first server-rendered view of the virtual area of the video game;
inserting, into a first data stream, the first image data associated with the first server-rendered view;
transmitting, to a broadcaster client and one or more spectator clients, the first data stream including the first image data associated with the first server-rendered view, wherein the broadcaster client controls presentation of the first data stream to the one or more spectator clients, and wherein the broadcaster client temporarily grants rights or permissions to at least one of the one or more spectator clients to perform one or more camera control operations;
receiving, from the broadcaster client or the at least one of the one or more spectator clients, instructions to switch the first data stream from the first server-rendered view to a second server-rendered view of the virtual area of the video game;
rendering, by a second renderer executing on one or more servers, second image data associated with the second server-rendered view;
in response to the receiving the instructions:
inserting, into the first data stream, the second image data associated with the second server-rendered view; and
transmitting, to the broadcaster client and the one or more spectator clients, the first data stream including the second image data associated with the second server-rendered view.

### Claim 6 (depends on 5)

The method of claim 5, further comprising receiving, from the broadcaster client, instructions to adjust one or more parameters of the first server-rendered view and responsively adjusting the one or more parameters.

### Claim 7 (depends on 6)

The method of claim 6, wherein the one or more parameters comprise information regarding at least one of location, direction, angle, pan, tilt, zoom, or field of view.

### Claim 8 (depends on 5)

The method of claim 5, wherein the instructions to switch the first data stream are received using chat functionality.

### Claim 9 (depends on 5)

The method of claim 5, wherein the instructions to switch the first data stream are received from one or more spectators that are temporarily assigned permission to control the first data stream.

### Claim 10 (depends on 5)

The method of claim 5, further comprising, in response to the receiving the instructions, ceasing to insert, into the first data stream, the first image data associated with the first server-rendered view.

### Claim 11 (depends on 5)

The method of claim 5, further comprising receiving, from the broadcaster client, instructions to periodically alternate switching of the first data stream between the first server-rendered view to the second server-rendered view.

### Claim 12 (depends on 5)

The method of claim 5, wherein the first and the second server-rendered views are server-rendered security camera views.

### Claim 13

One or more non-transitory computer-readable storage media having stored thereon instructions that, upon execution by one or more compute nodes, cause the one or more compute nodes to perform computing operations comprising:
rendering, by a first renderer executing on one or more servers, first image data associated with a first server-rendered view of a virtual area of a video game;
inserting, into a first data stream, the first image data associated with the first server-rendered view;
transmitting, to a broadcaster client and one or more spectator clients, the first data stream including the first image data associated with the first server-rendered view, wherein the broadcaster client controls presentation of the first data stream to the one or more spectator clients, and wherein the broadcaster client temporarily grants rights or permissions to at least one of the one or more spectator clients to perform one or more camera control operations;
receiving, from the broadcaster client or the at least one of the one or more spectator clients, instructions to switch the first data stream from the first server-rendered view to a second server-rendered view of the virtual area of the video game;
rendering, by a second renderer executing on one or more servers, second image data associated with the second server-rendered view;
in response to the receiving the instructions:
inserting, into the first data stream, the second image data associated with the second server-rendered view; and
transmitting, to the broadcaster client and the one or more spectator clients, the first data stream including the second image data associated with the second server-rendered view.

### Claim 14 (depends on 13)

The one or more non-transitory computer-readable storage media of claim 13, wherein the computing operations further comprise receiving, from the broadcaster client, instructions to adjust one or more parameters of the first server-rendered view and responsively adjusting the one or more parameters.

### Claim 15 (depends on 14)

The one or more non-transitory computer-readable storage media of claim 14, wherein the one or more parameters comprise information regarding at least one of location, direction, angle, pan, tilt, zoom, or field of view.

### Claim 16 (depends on 14)

The one or more non-transitory computer-readable storage media of claim 14, wherein the instructions to switch the first data stream are received using chat functionality.

### Claim 17 (depends on 13)

The one or more non-transitory computer-readable storage media of claim 13, wherein the computing operations further comprise, in response to the receiving the instructions, ceasing to insert, into the first data stream, the first image data associated with the first server-rendered view.

### Claim 18 (depends on 13)

The one or more non-transitory computer-readable storage media of claim 13, wherein the computing operations further comprise receiving, from the broadcaster client, instructions to periodically alternate switching of the first data stream between the first server-rendered view to the second server-rendered view.

### Claim 19 (depends on 13)

The one or more non-transitory computer-readable storage media of claim 13, wherein the first and the second server-rendered views are server-rendered security camera views.
