# US 8,789,124 B1 · Cross platform application control in an interactive, multi-platform video network

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

- Number: US 8,789,124 B1
- Document ID: US8789124B1
- Status: Granted
- Kind: B1
- Application number: 12/857,255
- Filed: 2010-08-16
- Granted: 2014-07-22
- Earliest claimed: 2010-05-28
- Assignees: Music Choice
- Applicants: Stephen D. Malaby; Bryan J. LeBlanc; Dow Seng Lam; Mateti Siva Ram; Ivan Fokin; Peter H. D. Glenn; Robert A. Decker; Fei Wan; Qingrui Liu; Angelica Casey; Alan Christopher Hummel; Kevin Todd Boone
- Inventors: Stephen D. Malaby; Bryan J. LeBlanc; Dow Seng Lam; Mateti Siva Ram; Ivan Fokin; Peter H. D. Glenn; Robert A. Decker; Fei Wan; Qingrui Liu; Angelica Casey; Alan Christopher Hummel; Kevin Todd Boone
- Web page: https://patentgrep.com/patent/US8789124B1

## CPC

- H04N 21/232: Content retrieval operation {locally} within server, e.g. reading video streams from disk arrays {(storage management G06F3/0604; details of querying and searching of video data from a database G06F16/739)}
- 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 65/612: for unicast
- H04L 65/613: for the control of the source by the destination (control signals issued by the client directed to the server or network components specially adapted for selective content distribution H04N21/637)
- H04N 7/173: with two-way working, e.g. subscriber sending a programme selection signal
- H04N 21/235: Processing of additional data, e.g. scrambling of additional data or processing content descriptors
- 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/25808: {Management of client data (terminal profiles in network data switching protocols H04L67/303)}
- H04N 21/262: Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists {(scheduling strategies for dispatcher in multiprogramming arrangements G06F9/4881; arrangements for scheduling broadcast services or broadcast-related services H04H60/06; flow control in packet networks H04L47/10; establishing a time schedule or organising the servicing of application requests H04L67/62)}
- H04N 21/26283: {for associating distribution time parameters to content, e.g. to generate electronic programme guide data}
- H04N 21/266: Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
- H04N 21/2665: Gathering content from different sources, e.g. Internet and satellite
- H04N 21/4302: {Content synchronisation processes, e.g. decoder synchronisation}
- H04N 21/458: Scheduling content for creating a personalised stream, e.g. by combining a locally stored advertisement with an incoming stream; Updating operations, e.g. for OS modules {; time-related management operations (arrangements for replacing or switching information during the broadcast or during the distribution H04H20/10)}
- H04N 21/4722: for requesting additional data associated with the content
- H04N 21/4828: {for searching programme descriptors (retrieval of video data G06F16/739)}
- H04N 21/4882: {for displaying messages, e.g. warnings, reminders (arrangements for providing short real-time information to substation in data switching networks H04L12/1895)}
- H04N 21/6405: Multicasting {(data broadcast and multicast in packet switching networks H04L12/18)}
- H04N 21/6543: for forcing some client operations, e.g. recording {(remote booting in general G06F9/4416)}
- H04N 21/8133: {specifically related to the content, e.g. biography of the actors in a movie, detailed information about an article seen in a video programme}
- H04N 21/8166: {involving executable data, e.g. software (arrangements for executing specific programs G06F9/44; broadcasting computer programmes in broadcast systems H04H20/91; involving the movement of software or configuration parameters H04L67/34)}
- H04N 21/8545: for generating interactive applications
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

In one aspect, the invention provides an interactive, multi-platform video network. In another aspect, the invention provides a dynamic scheduling method.

## Claims

### Claim 1

A broadcast system comprising:
broadcast equipment, the broadcast equipment being configured to transmit a video stream so that it may be received by a plurality of end user, interactive communication devices (end user devices), the video stream containing video data corresponding to a particular video; and
a broadcast automation system, wherein
the broadcast automation system is operable to send trigger messages to the broadcast equipment and is operable to transmit trigger messages to the end user devices,
the broadcast automation system is operable to affect at least some of the content that is displayed on the end user devices by transmitting trigger messages to the end user devices,
the broadcast automation system is operable to transmit a particular trigger message so that the particular trigger message is received by each of the plurality of end user devices substantially simultaneously,
said plurality of end user devices are located remotely from said broadcast automation system, and
the particular trigger message is configured to cause an application running on an end user device that receives the message to transmit a request for information to a remote server, which is configured to respond to the request for information by transmitting information to the application.

### Claim 2 (depends on 1)

The broadcast system of claim 1, wherein the trigger messages sent to the end user devices are sent via a different communication path than the video stream.

### Claim 3 (depends on 2)

The broadcast system of claim 2, wherein the trigger messages sent to the end user devices are informative or control the end user devices behavior and are synchronized with the video data.

### Claim 4 (depends on 1)

The broadcast system of claim 1, wherein the trigger messages sent to the end user devices are sent via the same communication path as the video stream.

### Claim 5 (depends on 4)

The broadcast system of claim 4, wherein messages sent to the end user communication devices are sent using a first elementary stream of a transport stream and the video stream is sent using a second elementary stream of said transport stream, wherein the first elementary stream is associated with a first packet identifier (PID) and the second elementary stream is associated with a second PID that is different than the first PID.

### Claim 6 (depends on 1)

The broadcast system of claim 1, further comprising:
a server configured to provide an application to the end user devices, wherein the application is operable to (1) receive the video stream and (2) use the received video data to display on a display of the communication device the particular video.

### Claim 7 (depends on 6)

The broadcast system of claim 6, wherein the server is configured to provide the application to an end user device in response to receiving a particular request from the end user device.

### Claim 8 (depends on 7)

The broadcast system of claim 7, further comprising a message relay, wherein the broadcast automation system is configured to transmit said particular trigger message to said message relay and the message relay is configured to multicast said particular trigger message so that it is received by each of the plurality of end user devices.

### Claim 9 (depends on 8)

The broadcast system of claim 8, wherein the application is configured to display at least some of the requested information after receiving the information from the server.

### Claim 10 (depends on 9)

The broadcast system of claim 9, wherein the particular trigger message is configured to cause an application running on the end user device to update a graphical user interface displayed on a display screen of the device.

### Claim 11 (depends on 1)

The broadcast system of claim 1, wherein the broadcast equipment is configured such that, in response to receiving a particular type of trigger message from the broadcast automation system, the broadcast equipment includes an overlay element in the video stream.

### Claim 12 (depends on 11)

The broadcast system of claim 11, wherein the overlay element is a still image.

### Claim 13 (depends on 1)

The broadcast system of claim 1, further comprising a storage device storing a schedule, wherein
the schedule is configured to cause the broadcast automation system to send, at a first point in time specified in the schedule, i) a first trigger message to the broadcast equipment and ii) a second trigger message to each of the plurality of end user devices, the first trigger message including a video identifier identifying a video and the second trigger message including a video identifier identifying said video;
the schedule is further configured to cause the broadcast automation system to send, at a second point in time specified in the schedule, i) a third trigger message to the broadcast equipment and ii) a fourth trigger message to each of the plurality of end user devices.

### Claim 14

A broadcast system comprising:
broadcast equipment, the broadcast equipment being configured to transmit a video stream so that it may be received by a plurality of end user, interactive communication devices (end user devices), the video stream containing video data corresponding to a particular video; and
a broadcast automation system, wherein
the broadcast automation system is operable to send trigger messages to the broadcast equipment and is operable to transmit trigger messages to the end user devices,
the broadcast automation system is operable to affect at least some of the content that is displayed on the end user devices by transmitting trigger messages to the end user devices, and
the broadcast equipment is configured such that, in response to receiving a particular type of trigger message from the broadcast automation system, the broadcast equipment queues a video file for transmission.

### Claim 15 (depends on 1)

The broadcast system of claim 1, wherein
the broadcast system further comprises a server, and
the broadcast automation system is configured such that, based on a schedule, the broadcast automation transmits a particular trigger message to the server and to the plurality of end user devices.

### Claim 16 (depends on 15)

The broadcast system of claim 15, wherein
the broadcast system further comprises a message relay, and
the broadcast automation system is configured to transmit the particular trigger message to plurality of end user devices by providing the message to the message relay.

### Claim 17

A method for providing interactive video programming to a plurality of end users, the method comprising:
creating a schedule for an episode of a show, wherein the schedule specifies a first time at which a first trigger message should be sent and also specifies a second time at which a second trigger message should be sent;
using broadcast equipment to broadcast a first video stream encoding video data corresponding to the episode of the show;
in accordance with the schedule, transmitting the first trigger message from a broadcast automation system to the broadcast equipment;
in accordance with the schedule, transmitting, from the broadcast automation system, the second trigger message so that the second trigger message is received by (1) a first application running on a first communication device that is located remotely from the broadcast equipment and the broadcast automation system and (2) a second application running on a second communication device that is located remotely from the broadcast equipment, the broadcast automation system, and the first communication device, wherein the second trigger message is configured to cause (1) the first application to display information to an end user using the first communication device and (2) the second application to display the information to an end user using the second communication device; and
using the broadcast equipment to transmit a second video stream encoding said video data, wherein the first and second video streams are transmitted substantially simultaneously.

### Claim 18 (depends on 17)

The method of claim 17, wherein the first video stream contains a video element not included in the second video stream.

### Claim 19 (depends on 17)

The method of claim 17, further comprising:
receiving from a third communication device a request message;
in response to the request message, transmitting to the third communication device a third application, wherein the third application is configured to receive the second video stream and display the vide data encoded in the video stream using a display screen of the communication device.

### Claim 20 (depends on 19)

The method of claim 19, further comprising:
receiving from the third application a subscribe request; and
as a consequence of receiving the subscribe request, transmitting the second trigger message to the third application.
