System and method for providing random access to a multimedia object over a network
First Claim
1. A method of analyzing a multimedia data object comprising a plurality of segments before sending data that includes the multimedia data object to a computer, the method comprising:
- determining the rendering requirements of the computer for displaying at least a portion of the multimedia data object;
determining a substantially sufficient size of data that must be sent to the computer to enable the computer to render the multimedia data object without interruption starting from a selected one of the plurality of segments;
determining a communications data rate of the computer;
determining a time to send the determined size to the computer; and
storing the determined size or the determined time in the multimedia data object.
2 Assignments
0 Petitions
Accused Products
Abstract
A system and method provide random access to a multimedia object over a network. One embodiment of the invention includes a streaming media server that is connected to a client computer over a network. The streaming media server includes at least one multimedia object that is adapted for transmission (“streaming”) across the network. A pre-roll calculation program determines a pre-roll for each segment of the multimedia object and generates a modified multimedia object which includes a pre-roll for each of its segments, a pre-roll identifying a portion of the multimedia object to be transmitted by the streaming media server and received by the client computer prior to playback of the multimedia object at a selected segment. The pre-roll allows the client computer to present, starting at a selected segment, the multimedia object in its entirety without interruption. The pre-roll calculation program further facilitates the design of the multimedia object to minimize delays associated with random accesses to segments of the multimedia object.
-
Citations
45 Claims
-
1. A method of analyzing a multimedia data object comprising a plurality of segments before sending data that includes the multimedia data object to a computer, the method comprising:
-
determining the rendering requirements of the computer for displaying at least a portion of the multimedia data object;
determining a substantially sufficient size of data that must be sent to the computer to enable the computer to render the multimedia data object without interruption starting from a selected one of the plurality of segments;
determining a communications data rate of the computer;
determining a time to send the determined size to the computer; and
storing the determined size or the determined time in the multimedia data object. - View Dependent Claims (2, 10)
-
-
3. A method of analyzing a multimedia data object that is adapted for rendering by a computer, comprising:
-
determining the size of a substantially sufficient amount of data that must be sent to the computer to enable the computer to render the multimedia data object without interruption starting from a selected portion of the multimedia data object; and
indicating the time to transmit the determined size. - View Dependent Claims (4, 11)
-
-
5. A method of analyzing a multimedia data object that is adapted for rendering by a computer, comprising:
-
determining a communication bit rate of the computer;
determining the rendering requirements of the computer for displaying at least a portion of the multimedia data object;
determining a pre-roll for said portion of the multimedia data object, the pre-roll corresponding to a minimum amount of data to send to the computer to enable the computer to render the multimedia data object without interruption, the determining based at least in part upon the communication bit rate; and
indicating the determined pre-roll. - View Dependent Claims (6, 7, 8, 9, 12)
-
-
13. A program storage device storing instructions that when executed perform the method comprising:
-
determining the rendering requirements of a computer for displaying at least a portion of the multimedia data object;
determining the size of a substantially sufficient amount of data that must be sent to the computer to enable the computer to render the portion of the multimedia data object without interruption; and
indicating the time to transmit the determined size. - View Dependent Claims (14, 15)
-
-
16. A system for analyzing a multimedia data object that is adapted for rendering by a computer, the system comprising:
-
means for determining a communication bit rate of a computer;
means for determining the rendering requirements of the computer for displaying at least a portion of the multimedia data object;
means for determining the size of a substantially sufficient amount of data that must be sent to the computer to enable the computer to render the portion of the multimedia data object without interruption; and
means for indicating the time to transmit the determined size. - View Dependent Claims (17, 18)
-
-
19. A system for analyzing a multimedia data object that is adapted for rendering by a computer, the system comprising:
-
means for determining the rendering requirements of the computer for displaying at least a portion of the multimedia data object;
means for determining a pre-roll for said portion of the multimedia data object, the pre-roll corresponding to a minimum amount of data to send to the computer to enable the computer to render the portion of the multimedia data object without interruption; and
means for indicating the pre-roll. - View Dependent Claims (20, 21, 22, 23, 24)
-
-
25. A server comprising:
-
a memory;
a multimedia data object comprising a plurality of segments; and
a processor configured to determine the rendering requirements of a client computer for displaying at least a portion of the multimedia data object, the processor configured to determine a substantially sufficient size of data that must be sent to the client computer to enable the computer to render the multimedia data object without interruption starting from a selected one of the plurality of segments, and the processor configured to store the determined size with the multimedia data object in a memory in the server. - View Dependent Claims (26, 27)
-
-
28. A client comprising:
-
a memory; and
a processor capable of receiving the multimedia data object from a server computer and storing the multimedia data object in the memory, the processor receiving a substantially sufficient size of data to enable the client computer to render the multimedia data object without interruption starting from a selected one of the plurality of segments, the processor causing the display of at least a portion of the multimedia data object, the received size being stored in the multimedia data object. - View Dependent Claims (29, 30)
-
-
31. A program storage device storing instructions that when executed performs the method comprising:
-
receiving a multimedia data object from a server computer;
receiving a substantially sufficient size of data to enable the client computer to render the multimedia data object without interruption starting from a selected one of the plurality of segments;
displaying at least a portion of the multimedia data object; and
wherein the received size is stored in the multimedia data object. - View Dependent Claims (32, 33)
-
-
34. A method comprising:
-
receiving a multimedia data object from a server computer;
receiving a substantially sufficient size of data to enable the client computer to render the multimedia data object without interruption starting from a selected one of the plurality of segments, wherein the received size is stored in the multimedia data object; and
displaying of at least a portion of the multimedia data object. - View Dependent Claims (35, 36)
-
-
37. A system comprising:
-
a client computer;
a multimedia data object comprising a plurality of segments; and
a server computer for determining the rendering requirements of the client computer for displaying at least a portion of the multimedia data object, the server computer determining a substantially sufficient size of data that must be sent to the client computer to enable the client computer to render the multimedia data object without interruption starting from a selected one of the plurality of segments, the server computer storing the determined size in the multimedia data object. - View Dependent Claims (38, 39, 42)
-
-
40. A method of analyzing a multimedia data object comprising a plurality of segments to be rendered by a computer, the method comprising:
-
determining a substantially sufficient size of data to be allocated in a buffer to enable the computer to render the multimedia data object without interruption starting from a selected one of the plurality of segments;
determining a time when the data object is transmitted to the computer; and
storing the determined size in the multimedia data object. - View Dependent Claims (41)
-
-
43. A system for analyzing a multimedia data object comprising a plurality of segments to be rendered by a computer, the system comprising:
-
means for determining a substantially sufficient size of data to be allocated in a buffer to enable the computer to render the multimedia data object without interruption starting from a selected one of the plurality of segments;
means for determining a time when the data object is transmitted to the computer; and
means for storing the determined size in the multimedia data object. - View Dependent Claims (44, 45)
-
Specification