Browser and publisher for multimedia object storage, retrieval and transfer
First Claim
1. In a computer environment, a publisher for storing and transmitting a stream of objects, each object in the stream having object data packets, comprising:
- a stream configurator producing a template providing an order in which to display each of the objects in the stream;
a data definition generator providing at least one data definition entry corresponding to each object in the template; and
an interleavor assembling the stream by interleaving the object data packets and the data definition entries according to the order provided in the template, wherein the at least one data definition entry is interleaved with the object data packets such that the data definition entry corresponding to one of the objects in the stream precedes any object data packets of the one object in the stream.
2 Assignments
0 Petitions
Accused Products
Abstract
In a computer environment, a browser and publisher capable of exchanging multimedia objects provided in a new storage and delivery data format that increases performance and improves the user experience by reducing the transactions needed to retrieve a set of n objects from n to 1. The object data is interleaved with data definition entries identifying respective object data into a data format comprising a single stream for storage and/or delivery. The data format eliminates the need for multiple, asynchronous transactions thus reducing latency in the data transfer process. Moreover, the data format allows for optimization of how the object data is prioritized and interleaved to achieve desired performance objectives upon delivery of the multimedia objects for display using the browser.
-
Citations
86 Claims
-
1. In a computer environment, a publisher for storing and transmitting a stream of objects, each object in the stream having object data packets, comprising:
-
a stream configurator producing a template providing an order in which to display each of the objects in the stream;
a data definition generator providing at least one data definition entry corresponding to each object in the template; and
an interleavor assembling the stream by interleaving the object data packets and the data definition entries according to the order provided in the template, wherein the at least one data definition entry is interleaved with the object data packets such that the data definition entry corresponding to one of the objects in the stream precedes any object data packets of the one object in the stream. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. In a computer environment, a browser for displaying an image on a display, the image represented by a stream of objects, each object in the stream having object data packets, comprising:
-
an unpacker receiving the stream, the stream having data definition entries interleaved with object data packets, the unpacker extracting the object data packets from the stream with reference to the data definition entries;
an unpacker object cache (UOC) storing object data packets provided by the unpacker, the UOC organizing the object data packets according to the corresponding data definition entry for each object in the stream; and
at least one data handler interpreting object data packets selected by the unpacker so that the interpreted object data packets can be rendered on the display. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18, 19)
-
-
20. In a computer environment, a method of forming a stream from a page having a plurality of objects, each object having object data packets, comprising the steps of:
-
creating data definition entries corresponding to the objects in the page; and
interleaving the data definition entries with the object data packets so as to form the stream, wherein the data definition entry corresponding to one of the objects in the page precedes any object data packets of the one object. - View Dependent Claims (21, 22, 23, 24, 25, 26)
-
-
27. In a computer environment, a method of displaying a page having a plurality of objects, each object having object data packets, comprising the steps of:
-
receiving a stream having data definition entries interleaved with object data packets corresponding to each of the plurality of objects;
unpacking said object data packets from said stream with reference to said data definition entries; and
displaying data representing said object data packets on a viewing device.- View Dependent Claims (28, 29, 30, 31)
selecting a data handler to interpret the object data; and
displaying the interpreted object data on a viewing device.
-
-
30. The method of claim 27, wherein said step of displaying data representing said object data packets comprises displaying data representing said object data packets for more than one object simultaneously.
-
31. The method of claim 27, wherein the page is an HTML page.
-
32. A computer-readable medium having computer-executable modules for generating a user-specified data stream having object data packets, wherein the object data packets are stored in content storage, comprising:
-
a stream configurator module for receiving object data packets and user input and for creating a template as a function of the object data packets and the user input;
a data definition generator module for generating data as a function of each object data packet and responsive to the template; and
an interleavor module for generating a data stream as a function of the template, object data packets, and the data definition generator module. - View Dependent Claims (33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45)
-
-
46. A computer-readable medium stored thereon for causing a computer to perform a method comprising:
-
receiving user input;
receiving one or more object data packets;
generating a template as a function of the user input and the one or more object data packets;
generating a data definition packet for each object data packet wherein each data definition packet corresponds to, and is a function of, an object data packet; and
interleaving as a function of the template, each data definition packet with a corresponding object data packet, wherein each data definition packet precedes the corresponding object data packet. - View Dependent Claims (47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58)
-
-
59. In a computer environment, a publisher for storing and transmitting a stream of objects, each object in the stream having object data packets, comprising:
-
a stream configurator producing a template providing an order in which to display each of the objects in the stream;
a data definition generator providing at least one data definition entry corresponding to each object in the template, each data definition entry comprising an object identifier and a stream identifier; and
an interleavor assembling the stream by interleaving the object data packets and the data definition entries according to the order provided in the template, wherein the at least one data definition entry is interleaved with the object data packets such that the data definition entry corresponding to one of the objects in the stream precedes any object data packets of the one object in the stream. - View Dependent Claims (60)
-
-
61. A computer-readable medium having instructions stored thereon for generating a user-specified data stream having object data packets, wherein the object data packets are stored in content storage, the computer-readable medium comprising:
-
a stream configurator module for receiving object data packets and user input and for creating a template as a function of the object data packets and the user input;
a data definition generator module for generating data as a function of each object data packet and responsive to the template, each data comprising an object identifier and a stream identifier; and
an interleavor module for generating a stream as a function of the template, object data packets and the data definition generator module. - View Dependent Claims (62, 63, 64, 65, 66, 67, 68, 69, 70, 72, 73, 74, 75, 76, 77, 78)
-
-
71. A computer-readable medium having computer-executable instructions for generating a data stream, the method comprising:
-
receiving user input;
receiving one or more object data packets;
generating a template as a function of the user input and the one or more object data packets;
generating a data definition packet for each object data packet wherein each data definition packet corresponds to, and is a function of, an object data packet; and
interleaving as a function of the template, each data definition packet with a corresponding object data packet, wherein each data definition packet precedes the corresponding object data packet.
-
-
79. A computer-readable medium instructions stored thereon for causing a computer to perform a method comprising:
-
receiving user input;
receiving one or more object data packets;
generating a template as a function of the user input and the one or more object data packets;
generating a data definition packet for each object data packet wherein each data definition packet corresponds to, and is a function of, an object data packet;
interleaving as a function of the template, each data definition packet with a corresponding object data packet, wherein each data definition packet precedes the corresponding object data packet; and
transmitting each data definition packet with a corresponding object data packet.
-
-
80. In a computer environment, a publisher for storing and transmitting a stream of objects, each object in the stream having object data packets, comprising:
-
a stream configurator parsing to identify objects or receiving data about objects and producing a template based on the parsed or received data, wherein the template provides an order in which to display each of the objects in the stream;
a data definition generator providing at least one data definition entry corresponding to each object in the template; and
an interleavor assembling the stream by interleaving the object data packets and the data definition entries according to the order provided in the template, wherein the at least one definition entry is interleaved with the object data packets such that the data definition entry corresponding to one of the objects in the stream precedes any object data packets of the one object in the stream.
-
-
81. A computer-readable medium having computer-executable modules for generating a user-specified data stream having object data packets, wherein the object data packets are stored in content storage, comprising:
-
a stream configurator module for parsing and receiving object data packets and user input and for creating a template as a function of the object data packets and the user input;
a data definition generator module for generating data as a function of each object data packet and responsive to the template; and
an interleavor module for generating a data stream as a function of the template, object data packets, and the data definition generator module.
-
-
82. A computer-readable medium stored thereon for causing a computer to perform a method comprising:
-
receiving user input;
parsing and receiving one or more object data packets;
generating a template as a function of the user input and the one or more object data packets;
generating a data definition packet for each object data packet wherein each data definition packet corresponds to, and is a function of, an object data packet; and
interleaving as a function of the template, each data definition packet with a corresponding object data packet, wherein each data definition packet precedes the corresponding object data packet.
-
-
83. In a computer environment, a publisher for storing and transmitting a stream of objects, each object in the stream having object data packets, comprising:
-
a stream configurator parsing to identify objects or receiving data about objects and producing a template based on the parsed or received data, wherein the template provides an order in which to display each of the objects in the stream;
a data definition generator providing at least one data definition entry corresponding to each object in the template, each data definition entry comprising an object identifier and a stream identifier; and
an interleavor assembling the stream by interleaving the object data packets and the data definition entries according to the order provided in the template, wherein the at least one data definition entry is interleaved with the object data packets such that the data definition entry corresponding to one of the objects in the stream precedes any object data packets of the one object in the stream.
-
-
84. A computer-readable medium having instructions stored thereon for generating a user-specified data stream having object data packets, wherein the object data packets are stored in content storage, the computer-readable medium comprising:
-
a stream configurator module for parsing and receiving object data packets and user input and for creating a template as a function of the object data packets and the user input;
a data definition generator module for generating data as a function of each object data packet and responsive to the template, each data comprising an object identifier and a stream identifier; and
an interleavor module for generating a stream as a function of the template, object data packets and the data definition generator module.
-
-
85. A computer-readable medium having computer-executable instructions for generating a data stream, the method comprising:
-
receiving user input;
parsing and receiving one or more object data packets;
generating a template as a function of the user input and the one or more object data packets;
generating a data definition packet for each object data packet wherein each data definition packet corresponds to, and is a function of, an object data packet; and
interleaving as a function of the template, each data definition packet with a corresponding object data packet, wherein each data definition packet precedes the corresponding object data packet.
-
-
86. A computer-readable medium instructions stored thereon for causing a computer to perform a method comprising:
-
receiving user input;
parsing and receiving one or more object data packets;
generating a template as a function of the user input and the one or more object data packets;
generating a data definition packet for each object data packet wherein each data definition packet corresponds to, and is a function of, an object data packet;
interleaving as a function of the template, each data definition packet with a corresponding object data packet, wherein each data definition packet precedes the corresponding object data packet; and
transmitting each data definition packet with a corresponding object data packet.
-
Specification