# US 8,788,578 B2 · Method and apparatus for customized provisioning of on-line application channels

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

- Number: US 8,788,578 B2
- Document ID: US8788578B2
- Status: Granted
- Kind: B2
- Application number: 13/180,375
- Filed: 2011-07-11
- Published: 2013-01-17
- Granted: 2014-07-22
- Earliest claimed: 2011-07-11
- Assignees: Roku, Inc.
- Applicants: Anthony Wood; David Stern; David Westerhoff; Bill Ataras; Mark Goodwin; Aaron Graham; Matt Emerson; Kevin Phillips
- Inventors: Anthony Wood; David Stern; David Westerhoff; Bill Ataras; Mark Goodwin; Aaron Graham; Matt Emerson; Kevin Phillips
- Web page: https://patentgrep.com/patent/US8788578B2

## CPC

- H04L 65/61: for supporting one-way streaming services, e.g. Internet radio
- H04L 65/1063: Application servers providing network services (systems providing special services to telephonic subscribers H04M3/42)
- H04L 65/611: for multicast or broadcast (systems for broadcast or conference H04L12/18; arrangements for broadcast or distribution combined with broadcast H04H20/00; arrangements for broadcast applications with a direct linkage to broadcast information or to broadcast space-time H04H60/00; selective distribution of broadcast services, e.g. multimedia broadcast multicast service [MBMS], H04W4/06)
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

A method for a computer system includes receiving an identifier associated with a client streaming player, determining one or more attributes associated with the identifier from a data structure in response to the identifier, determining available channels from a plurality of channels that are to be made available to the client streaming player in response to the identifier, wherein available channels comprises a first channel, but not the second channel, determining a first graphical identifier associated with the first channel, providing the first graphical identifier to the client streaming player, receiving a user selection of the first graphical identifier indicating a user request to associate the first channel with the computer system, and providing an indicator of a server network address associated with the first channel to the client streaming player.

## Claims

### Claim 1

A method for a computer system comprising a processor and a memory, wherein the computer system is programmed to perform a method comprising:
receiving, with the computer system, an identifier associated with a client streaming player, wherein the client streaming player is a device dedicated to receive on-demand services for display on an attached video display;
determining, with the computer system, one or more attributes associated with the identifier from a data structure stored within the memory, in response to the identifier, wherein the attributes characterize the physical characteristics of the client streaming player and the identifier is selected from a hardware revision identifier, a firmware revision identifier and an application software identifier;
determining, with the computer system, available channels from a plurality of channels that are to be made available to the client streaming player in response to the one or more attributes, wherein the plurality of channels comprises a first channel and a second channel, and wherein the available channels comprise the first channel, but not the second channel;
determining, with the computer system, a first plurality of channel metadata associated with the available channels, including a first graphical identifier associated with the first channel;
providing, with the computer system, the first plurality of channel metadata associated with the available channels, including the first graphical identifier to the client streaming player;
receiving, with the computer system, a user selection of the first graphical identifier indicating a user request to associate the client streaming player to the first channel;
providing, with the computer system, an indicator of a server network address associated with the first channel to the client streaming player; and
subsequently supplying on-demand services to the client streaming player in response to commands received from the client streaming player.

### Claim 2 (depends on 1)

The method of claim 1 wherein the one or more attributes is selected from a group comprising processor type, processor speed, memory capacity, USB port, GPU capability, Bluetooth capability, wireless capability, removable memory interface, SD slot, and memory interface.

### Claim 3 (depends on 1)

The method of claim 1 wherein the one or more attributes characterizes characteristics of the user of the client streaming player and is selected from a group comprising demographic data, income, marital status, geographic location, ISP, political region, and purchasing habits.

### Claim 4 (depends on 1)

The method of claim 1 wherein the first channel comprises a software application.

### Claim 5 (depends on 1)

The method of claim 1 wherein the first channel is selected from a group comprising a video channel, an audio channel, and a game channel.

### Claim 6 (depends on 1)

The method of claim 1 wherein after receiving the user selection of the first graphical identifier, the method further comprising:
determining, with the computer system, graphical identifiers associated with a second plurality of channels associated with the user, wherein the second plurality of channels comprises the first channel;
providing, with the computer system, a second plurality of metadata associated with the second plurality of channels, including the first graphical identifier associated with the first channel to the client streaming player;
receiving, with the computer system, a user selection of the first graphical identifier from the client streaming player; and wherein providing the indicator of the server network address associated with the first channel to the client streaming player is in response to the user selection.

### Claim 7

A computer system for providing feeds to a client streaming player comprising:
a memory configured to store associations between client streaming player indicators and one or more attributes, a plurality of channels comprising a first channel and a second channel; and
a processor coupled to the memory, wherein the processor is programmed to receive an identifier associated with a client streaming player, wherein the client streaming player is a device dedicated to receive on-demand services for display on an attached video display, wherein the processor is programmed to determine one or more attributes associated with the identifier from the memory, wherein the attributes characterize the physical characteristics of the client streaming player and the identifier is selected from a hardware revision identifier, a firmware revision identifier and an application software identifier, wherein the processor is programmed to determine a first channel that is available to the client streaming player and a second channel that is not available to the client steaming player in response to the one or more attributes, wherein the processor is programmed to determine a first plurality of metadata including an indicator of a graphical icon associated with the first channel, wherein the processor is programmed to provide the first plurality of metadata including the indicator of the graphical icon to the client streaming player, wherein the processor is programmed to receive a user selection of the graphical icon from the client streaming player, and wherein the processor is programmed to provide an indicator of a source associated with the first channel to the client streaming player, in response to the user selection of the graphical icon.

### Claim 8 (depends on 7)

The computer system of claim 7 wherein the one or more attributes is selected from a group comprising processor type, processor speed, memory capacity, USB port, GPU capability, removable memory interface, SD interface, communications interface, and Bluetooth interface.

### Claim 9 (depends on 7)

The computer system of claim 7 wherein the one or more attributes characterizes characteristics of the user of the client streaming player and is selected from a group comprising demographic data, income, marital status, geographic location, ISP, political region, and purchasing habits.

### Claim 10 (depends on 7)

The computer system of claim 7 wherein the first channel is selected from a group comprising a video channel, an audio channel, and a game channel.

### Claim 11 (depends on 7)

The computer system of claim 7 wherein the first channel comprises a video channel; and wherein the indicator of the source associated with the first channel comprises a video streaming server.

### Claim 12 (depends on 7)

The computer system of claim 7 further comprising a data port configured to send and receive data from an external storage memory.

### Claim 13

A method for a client streaming player comprising a processor and a memory dedicated to receive on-demand services for display on an attached video display, comprising:
providing, with the client streaming player, an identifier associated with the client streaming player to an application server, wherein one or more attributes are associated with the identifier within the application server, wherein the attributes characterize the physical characteristics of the client streaming player and the identifier is selected from a hardware revision identifier, a firmware revision identifier and an application software identifier;
receiving, with the client streaming player, a first plurality of metadata associated with available channels, including a first graphical identifier from the application server, wherein the available channels are determined from a plurality of channels in response to the one or more attributes, and wherein the available channels include a first channel, but not a second channel, and wherein the first channel is associated with the first graphical identifier;
displaying, with the client streaming player, a graphical user interface to the attached video display comprising the first graphical identifier;
receiving, with the client streaming player, a user selection of the first graphical identifier displayed on the attached video display indicating a user request to associate the computer system with the first channel;
providing, with the client streaming player, the user selection of the first graphical identifier to the application server; and
receiving, with the client streaming player, an indicator of a server network address associated with the first channel from the application server.

### Claim 14 (depends on 13)

The method of claim 13 wherein the one or more attributes characterizes characteristics of the user of the client streaming player and is selected from a group comprising processor type, processor speed, memory capacity, USB port, GPU capability, Bluetooth capability, wireless capability, removable memory interface, and SD interface.

### Claim 15 (depends on 13)

The method of claim 13 wherein the one or more attributes is selected from a group of data associated with a user comprising demographic data, income, marital status, geographic location, ISP, political region, and purchasing habits.

### Claim 16 (depends on 15)

The method of claim 15 wherein the first channel is selected from a group comprising a video channel, an audio channel, and a game channel.

### Claim 17 (depends on 15)

The method of claim 15 wherein after providing the user selection of the first graphical identifier, the method further comprising:
receiving, with the computer system, a second plurality of metadata associated with a second plurality of channels associated with the computer system, wherein the second plurality of channels comprises the first channel;
displaying, with the computer system, another graphical user interface to the display comprising the first graphical identifier; receiving, with the computer system, the user selection of the first graphical identifier displayed on the display;
providing, with the computer system, the user selection of the first graphical identifier to the application server; wherein receiving the indicator of the server network address comprises receiving, with the computer system, the indicator of the server network address associated with the first channel from the application server, in response to the user selection.
