Patent EP0605115B1 successfully refreshed from Google Patents.
← Back to Patent Explorer
EP0605115B1 Expired / Lapsed EP ⏱️ 0.0 years remaining

Program server for an interactive television system

Assignee: AT&T Inc
•
Filing: 1993-12-06
•
Granted: 1999-02-24
•
Expires: 2013-12-06
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

No abstract record available.

Inventors

  • 👤 Donald Edgar Blahut
  • 👤 Edward Stanley Szurkowski

Bibliographic Details

Application Number —
Jurisdiction EP
Data Source google_patents
Last Synchronized 2026-11-01 11:01
CPC Classifications
H; H04; H04N; H04N7/00; H04N7/18; H04N21/00; H04N21/80; H04N21/81; H04N21/812; H04N21/20; H04N21/27; H04N21/274; H04N21/2747; H04N21/40; H04N21/47; H04N21/472; H04N21/4722; H04N7/16; H04N7/173; H04N7/17309; H04N7/17318; H04N7/17336

Claims Analysis

Total Claims: 29
Claim 1
Independent Claim 182 words
A server (100) for sending one or more data blocks from a data memory (111) in specified channels over a distribution system (112, 115, 114, 116) at controlled time intervals comprising: a command-word memory (311) for storing a command word for each said data block to be sent, each command word including at least the identity of the channel for said data block (CHAN) the address in said data memory of the next portion of said data block to be sent (PA) and an indication of the time until said next portion is to be sent (A); first processing means (300) for receiving requests to send data blocks and for storing said command words in said command memory in response to said requests; second processing means (313) for periodically processing the command words in said command-word memory, said second processing means including means (431,432) for updating said time indication and means (437) for causing the portion of said data block specified by said address to be sent in said channel over said distribution system when said time indication reaches a threshold value.
Claim 2
Dependent Claim 104 words
The server of claim 1 wherein each said command word includes an indication of the number of portions of its associated data block still to be sent (T) and said second processing means further includes: means (434) for modifying said number indication when each said portion is sent and means (438, 440 in 313; 445, 312 in 110) for causing a new command word to be substituted from said first processing means for an old command word processed by said second processing means when said number indication indicates that all portions of the data block associated with said old command word have been sent.
Claim 3
Dependent Claim 239 words
The server of claim 1 wherein each said command word also includes a first identity (HEAD) specifying a first group of one or more data blocks to which its associated data block belongs, a second identity (TAIL) specifying a second group of one or more data blocks and at least one command flag (V, P, D) and said server further includes: first and second token memories (502, 503 in 306) for storing token words at addresses corresponding to said identities, each said token word including at least one token flag; means (510,511 in 306, 424 in 313) for: during odd passes through said command words, clearing said first token memory and, for each command word, reading a token word from the address in said second token memory corresponding to said first identity and, responsive to said command flags, storing a token word at the address in said first token memory corresponding to said second identity and during even passes through said command words, clearing said second token memory and, for each command word, reading a token word from the address in said first token memory corresponding to said first identity and, responsive to said command flags, storing a token word at the address in said second token memory corresponding to said second identity; the states of said token flags in a token word stored for a command word corresponding to the states of command flags in said control word
Claim 4
Dependent Claim 90 words
The server of claim 2 wherein a third token memory (501 in 306) for storing token words at addresses corresponding to said identities; means (330) for writing token words into said third token memory from said first processing means and means (514, 520) operable during the reading of a token word from an address in either said first token memory or said second token memory for reading the token word from the same address in said third token memory and creating a combined token word from the token words read.
Claim 5
Dependent Claim 35 words
The server of claim 2 comprising: means (441, 442, 443 in 313; 304, 325 in 110) responsive to said command flags and/or said token flags, for sending a command word to said first processing means.
Claim 6
Dependent Claim 170 words
The server of claim 1 wherein said first processing means also receives requests to send control messages over identified channels and said server further includes: first buffer means (315 in 110) connected to said second processing means for storing the addresses of said data-block portions to be sent and the channel identities for said portions; second buffer means (316 in 110) connected to said first processing means for storing control messages to be sent and the channel identities for said control messages; and multiplexing means (320) connected to said first and second buffer means for retrieving said addresses and associated channel identities in sequence from said first buffer means and, for each said address, reading said portion from said address in said data memory and sending said retrieved portion in said identified channel over said distribution system and, when said first buffer means is empty, retrieving each said control message and associated channel identity in sequence from said second buffer means and sending said control message in said identified channel.
Claim 7
Dependent Claim 97 words
The server of claim 1 wherein each retrieved data-block portion and its associated channel identity and each control message and its associated channel identity are sent over said distribution system as digital packets and said server further includes: a channel memory (703 in 112) associated with each distribution link in said distribution system for indicating particular channels to be sent over said distribution link and means (700, 701, 711 in 112) for sending a digital packet over said distribution link when the channel identity in said digital packet corresponds to a channel indicated in said channel memory.
Claim 8
Dependent Claim 67 words
The server of claim 7 wherein control messages are sent over at least one dedicated channel, certain control messages specify channels to be sent on each distribution link and said server further includes: means (704, 705 in 112) responsive to said certain control messages for storing in said channel memory the identities of the channels to be sent on the distribution link associated with said channel memory.
Claim 9
Dependent Claim 39 words
The server of claim 7 comprising: means (701, 702 in 112) for buffering packets to be sent over said distribution link and sending such data items over said distribution link at the appropriate transmission speed for said distribution link.
Claim 10
Dependent Claim 72 words
The server of claim 1 wherein said data memory is divided into at least two segments and said server further includes: means (210, 211, 212, 213, 225, 204, 217 in 111) for writing said data blocks from an external source into said segments of data memory; and means (215, 216 in 111) for inhibiting writing data blocks into a segment of data memory when data blocks are being read from said segment.
Claim 11
Independent Claim 135 words
A method of sending portions of one or more data blocks from a data memory in specified channels over a distribution system at controlled time intervals comprising: creating and storing a command word for each said data block to be sent, each command word including at least the identity of the channel for said data block, the address in said data memory of the next portion of said data block to be sent and a time indication; periodically processing each stored command word, including the steps of: updating the time indication; when said time indication reaches a threshold value, retrieving the portion of said data block from the address in said data memory specified in said command word and updating said address; and sending said retrieved portion in said identified channel over said distribution system.
Claim 12
Dependent Claim 81 words
The method of claim 11 wherein each said command word further includes an indication of the number of portions of its associated data block still to be sent and said processing step further includes: modifying said number indication when each said portion is sent and substituting a new command word for an old command word when the number indication in said old command word indicates that all portions of the data block associated with said old command word have been sent.
Claim 13
Dependent Claim 198 words
The method of claim 11 wherein each command word includes a first identity specifying a first group of one or more data blocks to which its associated data block belongs, a second identity specifying a second group of one or more data blocks and at least one command flag and said method further includes the steps of: during odd passes through said command words, clearing a first token memory and, for each command word, reading a token word from the address in a second token memory corresponding to said first identity and, responsive to said command flags, storing a token word at the address in said first token memory corresponding to said second identity and during even passes through said command words, clearing said second token memory and, for each command word, reading a token word from the address in said first token memory corresponding to said first identity and, responsive to said command flags, storing a token word at the address in said second token memory corresponding to said second identity; the states of said token flags in a token word stored for a command word corresponding to the states of command flags in said command word.
Claim 14
Dependent Claim 66 words
The method of claim 13 comprising: storing token words in a third token memory at addresses corresponding to said identities; and during the reading of a token word from an address in either said first token memory or said second token memory, reading the token word from the same address in said third token memory and creating a combined token word from the token words read.
Claim 15
Dependent Claim 135 words
The method of claim 11 wherein control messages are sent in addition to said portions of data blocks and said method further includes the steps of: storing the addresses of portions of data blocks to be sent, together with channel identities for such portions, in a first buffer; storing said control messages, together with the channel identities for such control messages, in a second buffer; retrieving said addresses and associated channel identities from said first buffer and, for each said address, retrieving said data block portion from said data memory and sending said retrieved portion in said identified channel over said distribution system; and when said first buffer is empty, retrieving said control messages and associated channel identities from said second buffer and sending said control message in said identified channel over said distribution system.
Claim 16
Dependent Claim 89 words
The method of claim 11 or claim 15 comprising: sending each retrieved data block portion and its associated channel identity and/or each control message and its associated channel identity over distribution links in said distribution system as digital packets; indicating particular channels to be sent over a distribution link in a channel memory associated with said distribution link; and sending a digital packet over a distribution link when the channel identity in said digital packet corresponds to a channel indicated in said channel memory associated with said distribution link.
Claim 17
Dependent Claim 55 words
The method of claim 11 wherein said data memory is divided into at least two segments and said method further includes: writing said data blocks from an external source into said segments of data memory and inhibiting writing data blocks into a segment of data memory when data blocks are being read from said segment.
Claim 18
Independent Claim 157 words
A method of sending one or more requested data blocks from a storage library at controlled rates to one or more users over specified channels in a distribution system comprising: upon receipt of a request for a data block: retrieving said data block from said storage library and storing said data block in a random-access memory; creating and storing a command word for each such request, each said command word containing at least the identity of the channel for said data block, the address in said random-access memory of the next portion to be sent and a time indication; periodically processing each stored command word, including the steps of: updating the time indication; when said time indication reaches a threshold value, retrieving the portion of said data block from the address in said random-access memory specified in said command word and updating said address; and sending said retrieved portion in said identified channel over said distribution system.
Claim 19
Dependent Claim 89 words
The method of claim 18 wherein said data blocks represent programs such as audio or audio-visual works and said method is adapted to receive "pause" and "play" requests and further includes the steps of: on receipt of a "pause" request for a program, asserting a pause flag in the command word for said program; on receipt of a "play" request for a program, negating said pause flag; and wherein said processing step further comprises: when said pause flag is asserted, inhibiting the sending of data-block portions for said program.
Claim 20
Dependent Claim 142 words
The method of claim 19 wherein said method is adapted for sending sequences of programs; each command word further includes a first identity for the program associated with said command word and a second identity for the next program to be sent; said method further includes the step of assigning a token flag to each possible identity; and said processing step further includes the steps of: asserting the token flag assigned to the second identity in the command word being processed; and if the token flag assigned to said first identity in said command word was asserted during the previous periodic processing of said command words, asserting the pause flag in said command word to place the program associated with said command word in the pause state; whereby all programs in said sequence except the first are maintained in the pause state.
Claim 21
Dependent Claim 233 words
The method of claim 20 wherein said method is adapted to receive "fast forward" requests; each said command word also contains a quantity representing an amount of the program to be played; and said method includes the further steps of: storing a list of subprogram addresses, each said subprogram address identifying the start of a subprogram within the current program; on receipt of a "fast forward" request for said current program: retrieving the present address for said current program from its command word; determining the subprogram following said present address from said list; creating and storing a new command word to play a portion of said next subprogram, beginning at the address stored for said subprogram, said new command word having as its first identity the second identity from the command word for the current program; deleting the command word for the current program; repeating said step of creating and storing a new command word for each subprogram in sequence, each said new command word having as its first identity the second identity for the previous command word; and upon receipt of a "play" request for said current program; creating and storing a new command word to play the remainder of said current program, beginning at the address stored in said list for the next subprogram, said new command word having as its first identity the second identity for the previous command word.
Claim 22
Dependent Claim 236 words
The method of claim 20 wherein said method is adapted to receive "fast reverse" requests; each said command word also contains a quantity representing the amount of a program to be played; and said method further comprises the steps of: storing a list of subprogram addresses, each said subprogram address identifying the start of a subprogram within the current program; on receipt of a "fast reverse" request for said current program: retrieving the present address for said current program from its command word; determining the address of the subprogram preceding said present address from said list; creating and storing a new command word to play a portion of said preceding subprogram, beginning at the address stored for said subprogram in said list, said new command word having as its first identity the second identity from the command word for the current program; deleting the command word for the current program; repeating said step of creating and storing a new command word for each subprogram in reverse sequence, each said new command word having as its first identity the second identity for the previous command word; and upon receipt of a "play" request for said current program; creating and storing a new command word to play the remainder of said current program, beginning at the address of the preceding subprogram, said new command word having as its first identity the second identity for the previous command word.
Claim 23
Dependent Claim 121 words
The method of claim 20 wherein said program is an audio/visual work comprising one or more audio and one or more video tracks to be played simultaneously, each said command word also contains an incremental value relating to the time desired between the sending of successive portions of its associated data block and said creating and storing step further includes the steps of: creating and storing a command word for each audio track and each video track, the first and second identities being the same in all said command words, said channel identities and said addresses in data memory being different in each said command word and said incremental values in said command words being selected appropriately for each respective track.
Claim 24
Dependent Claim 80 words
The method of claim 23 wherein said method is adapted to show motion pictures in different languages in accordance with received requests and said retrieving and storing step further includes the steps of: upon receipt of a request for a motion picture in a specified language, retrieving and storing at least one data block for the video track of said motion picture and at least one data block for the audio track of said motion picture in said specified language.
Claim 25
Dependent Claim 91 words
The method of claim 23 wherein said method is adapted to show motion pictures with subtitles in different languages in accordance with received and said retrieving and storing step further includes the steps of: upon receipt of a request for a motion picture with subtitles in a specified language, retrieving and storing at least one data block for the video track of said motion picture, at least one data block for the audio track of said motion picture and at least one data block for the subtitles in the requested language.
Claim 26
Dependent Claim 111 words
The method of claim 23 wherein said method is adapted to show abridged versions of programs and further includes the step of: creating a list of scene addresses for the scenes in each abridged program, each scene address identifying the start of a scene in said program; said retrieving and storing step further includes the steps of: upon receipt of a request for said abridged program, retrieving the data block for said program from said storage library and storing said data block in said random-access memory; and said creating and storing step includes the steps of: sequentially creating and storing command words for each scene in said list of scene addresses.
Claim 27
Dependent Claim 117 words
The method of claim 18 wherein said method is adapted to change programs in accordance with a received request and further includes the steps of: upon receipt of a request to change programs from a first version currently being sent to a second version: retrieving the present address for said first version from the command word for the data block for said first version; retrieving from said program library and storing in said data memory at least the portion of the data block for the second version corresponding to the remainder of the program; creating and storing a new command word for the remainder of said second version and deleting the command word for said first version.
Claim 28
Dependent Claim 33 words
The method of claim 27 wherein said first version is a motion picture soundtrack in a first language and said second version is the soundtrack for said motion picture in a second language.
Claim 29
Dependent Claim 29 words
The method of claim 27 wherein said first version is a motion picture having a first rating and said second version is said motion picture having a second rating.

References Cited (Backward Citations)

No citation records indexed.

USPTO Annuity & Maintenance Windows

Maintenance schedule is calculated for granted US utility patents.

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag