Viewer controllable on-demand multimedia service
First Claim
1. Apparatus for providing multimedia events comprising:
- a memory for storing a plurality of data groups at different memory locations, said data groups representative of a selected multimedia event;
a processing element for retrieving data groups from said memory; and
a transmitter for providing a plurality of data streams, each data stream representative of a version of the selected multimedia event starting at a different time;
said processing element generating a plurality of pointers, each pointer being associated with a different data stream, each pointer indicating memory locations from where data groups are retrieved to form the data stream associated therewith.
3 Assignments
0 Petitions
Accused Products
Abstract
In a multimedia application where movie events are distributed on an on-demand basis, a multimedia server serves a subscriber requesting a movie event through either a high-demand process or a low-demand process. In a low demand process, a data stream representative of the movie is exclusively provided to the subscriber in accordance with a double-buffering technique. The server may switch many low-demand processes serving the same movie event into a high-demand process to effectively utilize limited resources. In the high-demand process, high-demand pointers are launched periodically and are associated with data streams representative of the movie event having different start times. Each data stream associated with a high-demand pointer may be shared by an unlimited number of subscribers. Service alterations of the movie including fast-forwarding, rewinding, and restarting after a pause are achieved by way pointer-hopping.
-
Citations
78 Claims
-
1. Apparatus for providing multimedia events comprising:
-
a memory for storing a plurality of data groups at different memory locations, said data groups representative of a selected multimedia event; a processing element for retrieving data groups from said memory; and a transmitter for providing a plurality of data streams, each data stream representative of a version of the selected multimedia event starting at a different time;
said processing element generating a plurality of pointers, each pointer being associated with a different data stream, each pointer indicating memory locations from where data groups are retrieved to form the data stream associated therewith. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. Apparatus for providing a selected multimedia event to a plurality of receivers comprising:
-
a transmitter for providing a plurality of data streams, each data stream representative of a version of said selected multimedia event having a different start time, number of the data streams provided being a function of number of versions of said selected multimedia event which are currently received by said receivers; a processing element for assigning each data stream to at least one receiver; and a receptive element for receiving from a receiver at least a request for service alteration, said processing element responsive to said request for effecting said service alteration by at least removing from said receiver the assignment of the data stream assigned thereto. - View Dependent Claims (10, 11, 12, 13, 14, 15)
-
-
16. Apparatus for providing multimedia events to a plurality of receivers comprising:
-
a processing element, said processing element instructed by first instructions for performing a plurality of first processes to provide said receivers with a selected multimedia event; a buffer element for storing, in each first process, first data partially representative of the selected event; said processing element instructed by second instructions for performing a second process; a memory for storing at a plurality of memory locations second data representative of the selected event in its entirety;
said second process including reading said second data from said memory starting at different memory locations to provide a plurality of data streams; anda switching mechanism for switching said plurality of first processes into said second process upon detection of a predetermined condition, said switching mechanism including a mechanism for assigning said data streams to said receivers. - View Dependent Claims (17, 18, 19, 20, 21, 22, 23, 24, 25, 26)
-
-
27. A system for providing multimedia events comprising:
-
a plurality of receivers; and a multimedia server comprising; a memory for storing a plurality of data groups at different memory locations, said data groups representative of a selected multimedia event; a processing element for retrieving data groups from said memory; and a transmitter for providing a plurality of data streams to said receivers, each data stream representative of a version of the selected multimedia event starting at a different time; each receiver receiving one of said plurality of data streams, and deriving the selected event from the received data stream;
said processing element in said multimedia server generating a plurality of pointers, each pointer being associated with a different data stream, each pointer indicating memory locations from where data groups are retrieved to form the data stream associated therewith. - View Dependent Claims (28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40)
-
-
41. A method for providing multimedia events comprising the steps of:
-
storing a plurality of data groups at different memory locations in a memory, said data groups representative of a selected multimedia event; retrieving data groups from said memory; providing a plurality of data streams;
each data stream representative of a version of the selected multimedia event starting at a different time; andgenerating a plurality of pointers, each pointer being associated with a different data stream, each pointer indicating memory locations from where data groups are retrieved to form the data stream associated therewith. - View Dependent Claims (42, 43, 44, 45, 46, 47, 48)
-
-
49. A method for providing a selected multimedia event to a plurality of receivers comprising the steps of:
-
providing a plurality of data streams, each data stream representative of a version of said selected multimedia event having a different start time, number of said data streams being a function of number of versions of said selected multimedia event which are currently received by said receivers; assigning each data stream to at least one receiver; receiving from a receiver at least a request for service alteration; and effecting said service alteration in response to said request, the effecting step including the step of removing from said receiver the assignment of the data stream assigned thereto. - View Dependent Claims (50, 51, 52, 53, 54, 55)
-
-
56. A method for providing multimedia events to a plurality of receivers comprising:
-
a first step of performing a plurality of first processes to provide said receivers with a selected multimedia event, said first step including the step of storing, in each first process, first data partially representative of the selected event in a buffer element; a second step of performing a second process, said second step further comprising the steps of; storing, in a memory, at a plurality of memory locations second data representative of the selected event in its entirety; and reading said second data from said memory starting at different memory locations to provide a plurality of data streams; and a third step of switching said plurality of first processes into said second process upon detection of a predetermined condition, said switching step including the step of assigning said data streams to said receivers. - View Dependent Claims (57, 58, 59, 60, 61, 62, 63, 64, 65, 66)
-
-
67. A method for use in a system for serving multimedia events, said system comprising a plurality of receivers, said method comprising the steps of:
-
storing in a memory a plurality of data groups at different memory locations, said data groups representative of a selected multimedia event; retrieving data groups from said memory; providing a plurality of data streams to said receivers, each data stream representative of a version of the selected multimedia event starting at a different time; receiving in each receiver one of said plurality of data streams; deriving in each receiver the selected event from the received data stream; and generating a plurality of pointers, each pointer being associated with a different data stream, each pointer indicating memory locations from where data groups are retrieved to form the data stream associated therewith. - View Dependent Claims (68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78)
-
Specification