# US 11,298,612 B2 · Method for user session transitioning among streaming interactive video servers

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

- Number: US 11,298,612 B2
- Document ID: US11298612B2
- Status: Granted
- Kind: B2
- Application number: 14/835,552
- Filed: 2015-08-25
- Published: 2015-12-17
- Granted: 2022-04-12
- Earliest claimed: 2007-12-05
- Assignees: Sony Interactive Entertainment Inc.
- Applicants: Sony Interactive Entertainment LLC
- Inventors: Stephen G. Perlman; Roger van der Laan
- Web page: https://patentgrep.com/patent/US11298612B2

## CPC

- A63F 13/30: Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
- A47L 13/51: Storing of cleaning tools, e.g. containers therefor
- A47L 13/59: with movable squeezing members
- A63F 13/12
- A63F 13/335: using Internet
- 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
- 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
- A63F 13/48: Starting a game, e.g. activating a game device or waiting for other players to join a multiplayer session
- A63F 13/52: involving aspects of the displayed game scene
- A63F 13/795: for finding other players; for building a team; for providing a buddy list
- H04N 19/107: between spatial and temporal predictive coding, e.g. picture refresh
- H04N 19/132: Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
- H04N 19/14: Coding unit complexity, e.g. amount of activity or edge presence estimation (H04N19/146 takes precedence)
- H04N 19/146: Data rate or code amount at the encoder output
- H04N 19/154: Measured or subjectively estimated visual quality after decoding, e.g. measurement of distortion (use of rate-distortion criteria H04N19/147)
- H04N 19/166: concerning the amount of transmission errors, e.g. bit error rate [BER]
- H04N 19/17: the unit being an image region, e.g. an object
- H04N 19/176: the region being a block, e.g. a macroblock
- H04N 19/436: using parallelised computational arrangements
- H04N 19/587: involving temporal sub-sampling or interpolation, e.g. decimation or subsequent interpolation of pictures in a video sequence
- H04N 19/59: involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution
- H04N 19/61: in combination with predictive coding
- H04N 19/895: in combination with error concealment
- H04N 21/23424: {involving splicing one content stream with another content stream, e.g. for inserting or substituting an advertisement}
- H04N 21/2343: involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements {(video transcoding H04N19/40; media packet handling at the source H04L65/762)}
- H04N 21/234309: {by transcoding between formats or standards, e.g. from MPEG-2 to MPEG-4 or from Quicktime to Realvideo (conversion of standards in analog television systems H04N7/01)}
- H04N 21/234363: {by altering the spatial resolution, e.g. for clients with a lower screen resolution}
- H04N 21/23805: {Controlling the feeding rate to the network, e.g. by controlling the video pump}
- H04N 21/2393: {involving handling client requests (scheduling or organising the servicing of application requests H04L67/60)}
- H04N 21/2402: {Monitoring of the downstream path of the transmission network, e.g. bandwidth available (traffic monitoring in data switching networks H04L43/00; monitoring data switching networks utilization H04L43/0876)}
- H04N 21/242: Synchronisation processes, e.g. processing of PCR [Programme Clock References] {(arrangements for synchronising broadcast or distribution via plural systems in broadcast distribution systems H04H20/18)}
- H04N 21/27: Server based end-user applications
- H04N 21/431: Generation of visual interfaces {for content selection or interaction}; Content or additional data rendering
- H04N 21/437: Interfacing the upstream path of the transmission network, e.g. for transmitting client requests to a VOD server {(flow control in data networks H04L47/10; streaming protocols, e.g. RTP or RTCP, H04L65/65; scheduling or organising the servicing of application requests in data packet switching networks H04L67/60)}
- H04N 21/472: End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content {(end-user interfaces for retrieving video data from a database G06F16/739; network services for supporting unicast streaming H04L65/612)}
- H04N 21/4781: {Games}
- H04N 21/6125: {involving transmission via Internet (transmission by internet of broadcast information H04H60/82)}
- H04N 21/64738: {Monitoring network characteristics, e.g. bandwidth, congestion level (data switched network analysis H04L41/14; monitoring functioning in data switched networks H04L43/0817; flow control in packet networks H04L47/10)}
- H04N 21/64792: {Controlling the complexity of the content stream, e.g. by dropping packets (intermediate media network packet handling H04L65/765; proxy provisioning conversion or adaptation for reducing the amount or size of exchanged application data H04L67/5651; negotiation of resources in wireless networks H04W28/16)}
- H04N 21/6587: Control parameters, e.g. trick play commands, viewpoint selection
- A63F 2300/402: Communication between platforms, i.e. physical link to protocol
- A63F 2300/531: Server assignment
- A63F 2300/535: for monitoring, e.g. of user parameters, terminal parameters, application parameters, network parameters
- A63F 2300/538: for performing operations on behalf of the game client, e.g. rendering
- A63F 2300/552: for downloading to client devices, e.g. using OS version, hardware or software profile of the client device
- A63F 2300/5566: by matching opponents or finding partners to build a team, e.g. by skill level, geographical area, background, play style
- H04N 7/106: {for domestic distribution}
- H04N 19/00: Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04W 4/00: Services specially adapted for wireless communication networks; Facilities therefor
- H04W 28/06: Optimizing {the usage of the radio link}, e.g. header compression, information sizing {, discarding information (system modifying transmission characteristic according to link quality by modifying frame length H04L1/0007; dynamic adaptation of the packet size for flow control or congestion control H04L47/365)}
- A63F: CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A47L: DOMESTIC WASHING OR CLEANING (brushes A46B; cleaning quantities of bottles or of other hollow articles of one kind B08B9/00; laundry D06F); SUCTION CLEANERS IN GENERAL (cleaning in general B08)
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04W: WIRELESS COMMUNICATION NETWORKS (broadcast communication H04H; communication systems using wireless links for non-selective communication, e.g. wireless extensions H04M1/72)

## Abstract

A method by which a streaming interactive video user session is handed off from one streaming interactive video server to another without noticeable disruption to the video stream or the user interactivity. A compression technique utilized includes executing a video game on a game server to generate a stream of uncompressed streaming interactive video for a first player participating in a multiplayer session of the video game; receiving input commands at the game server over a network, wherein the input commands provide instructions for executing the video game in association with the first player and are generated from an input device of the first player; and compressing video frames associated with the execution of the video game at the first game server using tiles, wherein one tile from each video frame is encoded as an I tile, and remaining tiles in the corresponding video frame are encoded as P tiles.

## Claims

### Claim 1

A method comprising:
receiving a request by a hosting service center from a user device to join a session of a multiplayer interactive game already in progress and being executed by a game server to generate video;
determining that the user device may join the session of the multiplayer interactive game based on a set of criteria that includes a latency connection of a communication channel associated with the user device, wherein the latency connection of the communication channel associated with the user device is on equal footing with latency connections for player devices of players already playing the multiplayer interactive game;
instructing an inbound routing network to transfer control signals received from the user device to the game server hosting the multiplayer interactive game; and
compressing the video associated with the multiplayer interactive game to be sent to the user device so that an average data rate of compressed video sent to the user device is below a peak data rate determined for the communication channel.

### Claim 2 (depends on 1)

The method of claim 1, wherein the compressing the video includes:
choosing between a plurality of compression techniques when compressing the video generated at the game server for delivery to the user device.

### Claim 3 (depends on 1)

The method of claim 1, wherein a round trip latency associated with the latency connection of the communication channel associated with the user device relates to generating and sending of the video that is responsive to the control signals and includes a round trip time for an action generated at an input device of a corresponding player associated with the user device and a response associated with the action being shown on a display of the corresponding player.

### Claim 4 (depends on 1)

The method of claim 1, wherein a user associated with the user device is joining the session to spectate the multiplayer interactive game being played.

### Claim 5 (depends on 1)

The method of claim 1, wherein a player associated with the user device is joining the session to play the multiplayer interactive game.

### Claim 6

A non-transitory computer-readable medium storing a computer program for upgrading a data storage system, the computer-readable medium comprising:
program instructions for receiving a request by a hosting service center from a user device to join a session of a multiplayer interactive game already in progress and being executed by a game server to generate video;
program instructions for determining that the user device may join the session of the multiplayer interactive game based on a set of criteria that includes a latency connection of a communication channel associated with the user device, wherein the latency connection of the communication channel associated with the user device is on equal footing with latency connections for player devices of players already playing the multiplayer interactive game;
program instructions for instructing an inbound routing network to transfer control signals received from the user device to the game server hosting the multiplayer interactive game; and
program instructions for compressing the video associated with the multiplayer interactive game to be sent to the user device so that an average data rate of compressed video sent to the user device is below a peak data rate determined for the communication channel.

### Claim 7 (depends on 6)

The non-transitory computer-readable medium of claim 6, wherein the program instructions for compressing the video includes:
program instructions for choosing between a plurality of compression techniques when compressing the video generated at the game server for delivery to the user device.

### Claim 8 (depends on 6)

The non-transitory computer-readable medium of claim 6, wherein a round trip latency associated with the latency connection of the communication channel associated with the user device is defined as a round trip time for an action generated at an input device of a corresponding player associated with the user device and a response associated with the action being shown on a display of the corresponding player.

### Claim 9 (depends on 6)

The non-transitory computer-readable medium of claim 6, wherein a user associated with the user device is joining the session to spectate the multiplayer interactive game being played.

### Claim 10 (depends on 6)

The non-transitory computer-readable medium of claim 6, wherein a player associated with the user device is joining the session to play the multiplayer interactive game.

### Claim 11

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 comprising:
receiving a request by a hosting service center from a user device to join a session of a multiplayer interactive game already in progress and being executed by a game server to generate video;
determining that the user device may join the session of the multiplayer interactive game based on a set of criteria that includes a latency connection of a communication channel associated with the user device, wherein the latency connection of the communication channel associated with the user device is on equal footing with latency connections for player devices of players already playing the multiplayer interactive game;
instructing an inbound routing network to transfer control signals received from the user device to the game server hosting the multiplayer interactive game; and
compressing the video associated with the multiplayer interactive game to be sent to the user device so that an average data rate of compressed video sent to the user device is below a peak data rate determined for the communication channel.

### Claim 12 (depends on 11)

The computer system of claim 11, wherein in the method the compressing the video includes:
choosing between a plurality of compression techniques when compressing the video generated at the game server for delivery to the user device.

### Claim 13 (depends on 11)

The computer system of claim 11, wherein in the method a round trip latency associated with the latency connection of the communication channel associated with the user device is defined as a round trip time for an action generated at an input device of a corresponding player associated with the user device and a response associated with the action being shown on a display of the corresponding player.

### Claim 14 (depends on 11)

The computer system of claim 11, wherein a user associated with the user device is joining the session to spectate the multiplayer interactive game being played.

### Claim 15 (depends on 11)

The computer system of claim 11, wherein a player associated with the user device is joining the session to play the multiplayer interactive game.
