← Back to Patent Explorer
US6239793B1 Expired / Lapsed US ⏱️ 0.0 years remaining

Method and apparatus for synchronizing the broadcast content of interactive internet-based programs

Assignee: Rotor Communications Corp
•
Filing: 1999-05-20
•
Granted: 2001-05-29
•
Expires: 2019-05-20
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A method and system for synchronizing broadcast program content and corresponding program commands of an Internet-Based broadcast. The method (and system) generates a plurality of time-indicative index values during a broadcast of a program, associates ones of the plurality of index values with respective commands in a command stream launched during broadcast of the program, transmits the commands and associated index values to one or more clients, and associates ones of the plurality of index values to respective video frames in a video stream of the program to indicate the relative time within the program at which the video frame occurs. The method (and system) uses the index values in the video stream to determine the timing and sequence of execution of commands in the command stream at the one or more client.

Inventors

  • 👤 Andrew Barnert
  • 👤 Kelly Byrd

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-06 18:13
CPC Classifications
H; H04; H04H; H04H20/00; H04H20/18; H04L; H04L65/00; H04L65/60; H04L65/61; H04L65/611; H04L65/613; H04L65/70; H04L9/00; H04L9/40; H04N; H04N21/00; H04N21/40; H04N21/43; H04N21/4302; H04N21/4307; H04N21/43074; H04N21/60; H04N21/61; H04N21/6106; H04N21/6125; H04N21/80; H04N21/85; H04N21/854; H04N21/8547; H04H20/65; H04H20/76; H04H20/82; H04H60/00; H04H60/09; H04H60/13; H04L65/1066; H04L65/1101

Claims Analysis

Total Claims: 23
Claim 1
Independent Claim 236 words
A method of synchronizing broadcast program content and corresponding program commands of an Internet-Based broadcast, the method comprising the steps of: generating a plurality of time-indicative index values during broadcast of an Internet-based program, associating each of the plurality of index values with respective commands in a command stream launched during broadcast of the program, transmitting the command stream and associated index values to one or more clients, associating each of the plurality of index values to respective video frames in a video stream of the program to indicate the relative time within the program at which the video frame occurs, wherein the index values are tagged to the video frames as script commands to be executed at the client, receiving the transmitted command stream and associated index values, storing a series of time-stamped commands, and using the index values in the video stream to determine the timing and sequence of execution of commands in the command stream at the one or more clients, by: executing the script commands tagged to the video frames to obtain the index values; retrieving the stored time-stamped commands associated with the retrieved index values; retrieving any unexecuted time-stamped commands having a time-stamp earlier in time than the time-stamped commands associated with the retrieved index values; and executing the commands so that the unexecuted commands with time-stamps earlier in time are executed before the commands associated with the retrieved index values.
Claim 2
Independent Claim 236 words
A method of synchronizing broadcast program content and corresponding program commands of an Internet-Based broadcast, the method comprising the steps of: generating a plurality of time-indicative index values during broadcast of an Internet-based program, associating each of the plurality of index values with respective commands in a command stream launched during broadcast of the program, transmitting the command stream and associated index values to one or more clients, associating each of the plurality of index values to respective video frames in a video stream of the program to indicate the relative time within the program at which the video frame occurs, wherein the index values are tagged to the video frames as script commands to be executed at the client, receiving the transmitted command stream and associated index values, storing a series of time-stamped commands, and using the index values in the video stream to determine the timing and sequence of execution of commands in the command stream at the one or more clients, by: executing the script commands tagged to the video frames to obtain the index values; retrieving the stored time-stamped commands associated with the retrieved index values; retrieving any unexecuted time-stamped commands having a time-stamp earlier in time than the time-stamped commands associated with the retrieved index values; and executing the commands so that the unexecuted commands with time-stamps earlier in time are executed before the commands associated with the retrieved index values.
Claim 3
Dependent Claim 27 words
The method of claim 1 , wherein the one or more clients execute commands arriving at a time after their time-stamp as soon as they are received.
Claim 4
Dependent Claim 20 words
The method of claim 1 , wherein the index values are encoded prior to being tagged to the video frames.
Claim 5
Dependent Claim 18 words
The method of claim 3 , wherein the index values are encoded by a variable length encoding scheme.
Claim 6
Dependent Claim 17 words
The method of claim 1 , wherein the index values are incremented on a per second basis.
Claim 7
Dependent Claim 17 words
The method of claim 1 , wherein the index values are incremented on a per half-second basis.
Claim 8
Dependent Claim 30 words
The method of claim 1 , wherein the video stream is transmitted via UDP protocol to the one or more clients, and the command stream is transmitted via TCP protocol.
Claim 9
Independent Claim 266 words
A system for synchronizing broadcast program content and corresponding program commands of a network-based broadcast, said system comprising: a counter for generating a plurality of time-indicative index values during broadcast of an Internet-based program; a first server for inputting the index values and for launching program commands to be executed during the broadcast, said server associating each of the plurality of index values with respective commands in a command stream launched during broadcast of the program, said first server transmitting the command stream and associated index values to one or more clients; and a second server for inputting the index values and associating each of the plurality of index values to video frames in a video stream of the program to indicate the relative time within the program at which the video frame occurs, wherein the index values are tagged to the video frames as a script command to be executed at the one or more clients, said second server transmitting the video stream and associated index values to the one or more clients, wherein the one or more clients receive the transmitted command stream and associated index values, store a series of time-stamped commands, execute the script commands tagged to the video frames to obtain the index values, retrieve the stored time-stamped commands associated with the retrieved index values, retrieve any unexecuted time-stamped commands having a time-stamp earlier in time than the time-stamped commands associated with the retrieved index values, and execute the commands so that the unexecuted commands with time-stamps earlier in time are executed before the commands associated with the retrieved index values.
Claim 10
Independent Claim 266 words
A system for synchronizing broadcast program content and corresponding program commands of a network-based broadcast, said system comprising: a counter for generating a plurality of time-indicative index values during broadcast of an Internet-based program; a first server for inputting the index values and for launching program commands to be executed during the broadcast, said server associating each of the plurality of index values with respective commands in a command stream launched during broadcast of the program, said first server transmitting the command stream and associated index values to one or more clients; and a second server for inputting the index values and associating each of the plurality of index values to video frames in a video stream of the program to indicate the relative time within the program at which the video frame occurs, wherein the index values are tagged to the video frames as a script command to be executed at the one or more clients, said second server transmitting the video stream and associated index values to the one or more clients, wherein the one or more clients receive the transmitted command stream and associated index values, store a series of time-stamped commands, execute the script commands tagged to the video frames to obtain the index values, retrieve the stored time-stamped commands associated with the retrieved index values, retrieve any unexecuted time-stamped commands having a time-stamp earlier in time than the time-stamped commands associated with the retrieved index values, and execute the commands so that the unexecuted commands with time-stamps earlier in time are executed before the commands associated with the retrieved index values.
Claim 11
Dependent Claim 28 words
The system of claim 8 , further comprising an encoder, said encoder inputting the index values from said counter and sending the index values to said second server.
Claim 12
Dependent Claim 23 words
The system of claim 9 , wherein the index values are encoded by said encoder prior to being sent to said second server.
Claim 13
Dependent Claim 29 words
The system of claim 9 , wherein the index values are encoded by said encoder prior to being sent to said second server by a variable length encoding scheme.
Claim 14
Dependent Claim 24 words
The system of claim 8 , wherein the index values are encoded by said second server prior to being tagged to the video frames.
Claim 15
Dependent Claim 30 words
The system of claim 8 , wherein the index values are encoded by said second server prior to being tagged to the video frames by a variable length encoding scheme.
Claim 16
Dependent Claim 38 words
The system of claim 8 , wherein said first server transmits the command stream and associated index values via a first protocol and the second server transmits the video stream and associated index values via a second protocol.
Claim 17
Dependent Claim 18 words
The system of claim 14 , wherein said first protocol is TCP and the second protocol is UDP.
Claim 18
Dependent Claim 243 words
An article of manufacture comprising a machine-readable storage medium having stored therein indicia of a plurality of machine-executable control program steps, the control program comprising the steps of: generating a plurality of time-indicative index values during broadcast of an Internet-based program; associating each of the plurality of index values with respective commands in a command stream launched during broadcast of the program; transmitting the command stream and associated index values to one or more clients; associating each of the plurality of index values to respective video frames in a video stream of the program to indicate the relative time within the program at which the video frame occurs, wherein the index values are tagged to the video frames as script commands to be executed at the client; receiving the transmitted command stream and associated index values; storing a series of rime-stamped commands; and using the index values in the video stream to determine the timing and sequence of execution of commands in the command stream at the one or more clients, by: executing the script commands tagged to the video frames to obtain the index values; retrieving the stored time-stamped commands associated with the retrieved index values; retrieving any unexecuted time-stamped commands having a time-stamp earlier in time than the time-stamped commands associated with the retrieved index values; and executing the commands so that the unexecuted commands with time-stamps earlier in time are executed before the commands associated with the retrieved index values.
Claim 19
Dependent Claim 243 words
An article of manufacture comprising a machine-readable storage medium having stored therein indicia of a plurality of machine-executable control program steps, the control program comprising the steps of: generating a plurality of time-indicative index values during broadcast of an Internet-based program; associating each of the plurality of index values with respective commands in a command stream launched during broadcast of the program; transmitting the command stream and associated index values to one or more clients; associating each of the plurality of index values to respective video frames in a video stream of the program to indicate the relative time within the program at which the video frame occurs, wherein the index values are tagged to the video frames as script commands to be executed at the client; receiving the transmitted command stream and associated index values; storing a series of rime-stamped commands; and using the index values in the video stream to determine the timing and sequence of execution of commands in the command stream at the one or more clients, by: executing the script commands tagged to the video frames to obtain the index values; retrieving the stored time-stamped commands associated with the retrieved index values; retrieving any unexecuted time-stamped commands having a time-stamp earlier in time than the time-stamped commands associated with the retrieved index values; and executing the commands so that the unexecuted commands with time-stamps earlier in time are executed before the commands associated with the retrieved index values.
Claim 20
Dependent Claim 29 words
The article of manufacture of claim 16 , wherein the one or more clients execute commands arriving at a time after their time-stamp as soon as they are received.
Claim 21
Dependent Claim 22 words
The article of manufacture of claim 16 , wherein the index values are encoded prior to being tagged to the video frames.
Claim 22
Dependent Claim 20 words
The article of manufacture of claim 18 , wherein the index values are encoded by a variable length encoding scheme.
Claim 23
Dependent Claim 32 words
The article of manufacture of claim 16 , wherein the video stream is transmitted via UDP protocol to the one or more clients, and the command stream is transmitted via TCP protocol.

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2004-05-28 2004-11-27 2005-05-29 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2008-05-28 2008-11-27 2009-05-29 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2012-05-28 2012-11-27 2013-05-29 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag